communicate/events/event.go
jackdaw 5da9afefbc .
2016-11-28 15:02:16 +09:00

50 lines
1.2 KiB
Go

package events
const (
CENTRAL_POLLING = "P"
CENTRAL_EVENT = "E"
)
const (
COLLECTOR_INSTALL = "/_api/collector/event/status/install"
DISCOVERY_START = "/_api/collector/discovery/event/status/start"
DISCOVERY_END = "/_api/collector/discovery/event/status/end"
HOST_START = "/_api/collector/discovery/event/host/status/start"
HOST_FOUND = "/_api/collector/discovery/event/host/status/found"
HOST_END = "/_api/collector/discovery/event/host/status/end"
PORT_START = "/_api/collector/discovery/event/port/status/start"
PORT_FOUND = "/_api/collector/discovery/event/port/status/found"
PORT_END = "/_api/collector/discovery/event/port/status/end"
SERVICE_END = "/_api/collector/discovery/event/service/status/end"
)
type URLMaker interface {
GetUrl() string
}
type Event struct {
Collector_id string
Time Timestamp
EventType string
Data interface{}
Result chan Result `json:"-"`
}
func (e *Event) GetResult() Result {
return <-e.Result
}
func NewEvent(dataType string, data interface{}) *Event {
return &Event{
Collector_id: "", // get this collector identity
Time: Now(),
EventType: dataType,
Data: data,
Result: make(chan Result),
}
}