package domain type UserAgentRepository interface{ Migrate() error CreateUserAgent(useragent UserAgent) (*UserAgent, error) All() ([]UserAgent, error) GetByName(name string) (*UserAgent, error) Update(id int64, useragent UserAgent) (*UserAgent, error) Delete(id int64) error } type FileDataRepository interface { Create(path string, user_agent_label string) (BogInFile, error) Open(path string, user_agent_label string) (BogOutFile, error) Delete(path string, user_agent_label string) }