started work datasources admin

This commit is contained in:
Torkel Ödegaard
2014-12-16 12:04:08 +01:00
parent f665a30d28
commit b70a3f0958
14 changed files with 104 additions and 21 deletions

View File

@@ -18,6 +18,9 @@ type InProcBus struct {
handlerIndex map[string]QueryHandler
}
// temp stuff, not sure how to handle bus instance, and init yet
var globalBus = New()
func New() Bus {
bus := &InProcBus{}
bus.handlerIndex = make(map[string]QueryHandler)
@@ -51,3 +54,12 @@ func (b *InProcBus) AddQueryHandler(handler QueryHandler) {
fmt.Printf("QueryType %v\n", queryTypeName)
b.handlerIndex[queryTypeName] = handler
}
// Package level functions
func AddQueryHandler(implName string, handler QueryHandler) {
globalBus.AddQueryHandler(handler)
}
func SendQuery(query Query) error {
return globalBus.SendQuery(query)
}

View File

@@ -20,7 +20,7 @@ func TestHandlerReturnsError(t *testing.T) {
err := bus.SendQuery(&TestQuery{})
if err == nil {
t.Fatal("Send query failed %v", err)
t.Fatal("Send query failed " + err.Error())
} else {
t.Log("Handler error received ok")
}
@@ -38,7 +38,7 @@ func TestHandlerReturn(t *testing.T) {
err := bus.SendQuery(query)
if err != nil {
t.Fatal("Send query failed %v", err)
t.Fatal("Send query failed " + err.Error())
} else if query.Resp != "hello from handler" {
t.Fatal("Failed to get response from handler")
}