39 lines
836 B
Go
39 lines
836 B
Go
package imap
|
|
|
|
import (
|
|
cnsmi "git.loafle.net/commons/service_matcher-go/imap"
|
|
ocsm "git.loafle.net/overflow/commons-go/sensorconfig/model"
|
|
"git.loafle.net/overflow/container_network/crawler/health"
|
|
crawler "git.loafle.net/overflow/crawler-go"
|
|
)
|
|
|
|
type IMAPHealthCrawler struct {
|
|
health.SocketHeahthCrawler
|
|
}
|
|
|
|
func (c *IMAPHealthCrawler) Name() string {
|
|
return "IMAP_HEALTH"
|
|
}
|
|
|
|
func (c *IMAPHealthCrawler) String() string {
|
|
return "IMAP Health Crawler"
|
|
}
|
|
|
|
func (c *IMAPHealthCrawler) Auth(auth map[string]interface{}) error {
|
|
return nil
|
|
}
|
|
|
|
func (c *IMAPHealthCrawler) Get(config *ocsm.SensorConfig) (map[string]string, error) {
|
|
rss, err := c.CheckHeahth(config)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return rss, nil
|
|
}
|
|
|
|
func NewCrawler() crawler.Crawler {
|
|
c := &IMAPHealthCrawler{}
|
|
c.SetMatcher(cnsmi.NewMatcher())
|
|
return c
|
|
}
|