diff --git a/pkg/protocol/IProtocolWriter.go b/pkg/protocol/IProtocolWriter.go index 66c0e71..5354e41 100644 --- a/pkg/protocol/IProtocolWriter.go +++ b/pkg/protocol/IProtocolWriter.go @@ -2,9 +2,9 @@ package protocol // IProtocolReader Représentation abstraite d'un protocol type IProtocolWriter interface { - // Permet de récupérer le nom de la commande + // GetCmd Permet de récupérer le nom de la commande GetCmd() string - // Permet de vérifier la validité d'une donnée censée suivre les règles d'un protocol + // Execute Permet de vérifier la validité d'une donnée censée suivre les règles d'un protocol Execute(argsData []string) } diff --git a/pkg/protocol/rules/readers/EraseFileRule.go b/pkg/protocol/rules/readers/EraseFileRule.go index 7bf9061..bbb04e4 100644 --- a/pkg/protocol/rules/readers/EraseFileRule.go +++ b/pkg/protocol/rules/readers/EraseFileRule.go @@ -7,7 +7,6 @@ const EraseFileRuleName = "ffe_erasefile" // EraseFileRule Demande de suppression d'un fichier type EraseFileRule struct { - protocol.IProtocolReader // Cmd Nom de la règle Cmd string @@ -23,6 +22,10 @@ func CreateEraseFileRule(pattern string) *EraseFileRule { } } +func (rule EraseFileRule) GetCmd() string { + return rule.Cmd +} + func (rule EraseFileRule) Execute(data string) string { if rule.Match(data) { diff --git a/pkg/protocol/rules/writers/HelloRule.go b/pkg/protocol/rules/writers/HelloRule.go index 32b3f9b..c52ad84 100644 --- a/pkg/protocol/rules/writers/HelloRule.go +++ b/pkg/protocol/rules/writers/HelloRule.go @@ -1 +1,30 @@ package writers + +import "_StorBackEnd/pkg/protocol" + +const HelloRuleName = "sbe_hello" + +type HelloRule struct { + // Cmd Nom de la règle + Cmd string + + // matcher Permet d'extraire de éléments d'une chaine + matcher *protocol.RegexMatcher +} + +// CreateHelloRule Création d'une instance de HelloRule +func CreateHelloRule(pattern string) *HelloRule { + return &HelloRule{ + Cmd: HelloRuleName, + matcher: protocol.CreateRegexMatcher(pattern), + } +} + +func (rule HelloRule) GetCmd() string { + return rule.Cmd +} + +func (rule HelloRule) Execute(argsData []string) { + //TODO implement me + panic("implement me") +}