package readers import "StoreBackEnd/pkg/protocol" // EraseFileRuleName Identifiant de cette règle const EraseFileRuleName = "ffe_erasefile" // EraseFileRule Demande de suppression d'un fichier type EraseFileRule struct { // Cmd Nom de la règle Cmd string // matcher Permet de vérifier le matching matcher *protocol.RegexMatcher } // CreateEraseFileRule Création d'une instance de EraseFileRule func CreateEraseFileRule(pattern string) protocol.IProtocolReader { return &EraseFileRule{ Cmd: EraseFileRuleName, matcher: protocol.CreateRegexMatcher(pattern), } } func (rule EraseFileRule) GetCmd() string { return rule.Cmd } func (rule EraseFileRule) Execute(data string) (string, bool) { if rule.Match(data) { values := rule.matcher.Parse(data) println(values[1], " est le hash du fichier à supprimer") return "Parsing : Fichier avec le hash " + values[1] + " supprimé", true } else { return "Parsing : EraseFileRule command incorrecte", false } } func (rule EraseFileRule) Match(data string) bool { return rule.matcher.Match(data) }