communicate/events/event.go
2016-11-28 16:17:34 +09:00

49 lines
1.4 KiB
Go

package events
const (
CENTRAL_POLLING = "P"
CENTRAL_EVENT = "E"
)
const (
COLLECTOR_INSTALL = "/_api/collector/event/status/install"
COLLECTOR_INIT = "/_api/collector/event/status/initialize"
COLLECTOR_START = "/_api/collector/event/status/start"
COLLECTOR_STOP = "/_api/collector/event/status/stop"
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),
}
}