2022-02-15 11:19:43 +01:00
package protocol
2022-03-08 17:44:10 +01:00
import (
2022-03-08 20:37:49 +01:00
"bufio"
2022-03-08 17:44:10 +01:00
)
2022-03-08 12:01:51 +01:00
2022-02-20 11:33:47 +01:00
// IProtocolReader Représentation abstraite d'un protocol
type IProtocolReader interface {
2022-02-22 08:34:45 +01:00
// GetCmd Permet de récupérer le nom de la commande
2022-02-20 12:35:05 +01:00
GetCmd ( ) string
2022-02-22 10:52:07 +01:00
// Execute Permet d'exécuter l'action implémentée par une règle. Retourne le message (rule) de retour et bool pour savoir si tout s'est bien passé ou non
2022-03-12 15:57:27 +01:00
Execute ( data string ) ( * ProtocolWriterResult , func ( reader * bufio . Reader ) * ProtocolWriterResult )
2022-02-15 11:19:43 +01:00
2022-02-22 08:34:45 +01:00
// Match Permet de vérifier la validité d'une donnée censée suivre les règles d'un protocol
2022-02-20 12:35:05 +01:00
Match ( data string ) bool
2022-02-15 11:19:43 +01:00
}