1
0
Fork 0

Fix server error message, `go fmt`

This commit is contained in:
Aaron Lindsay 2013-03-18 07:17:44 -04:00
parent ad8156210f
commit 3a166dbc9a
4 changed files with 15 additions and 8 deletions

View File

@ -11,7 +11,7 @@ import (
) )
type AsinkDB struct { type AsinkDB struct {
db *sql.DB db *sql.DB
lock sync.Mutex lock sync.Mutex
} }

View File

@ -12,7 +12,7 @@ import (
"time" "time"
) )
const MIN_ERROR_WAIT = 100 // 1/10 of a second const MIN_ERROR_WAIT = 100 // 1/10 of a second
const MAX_ERROR_WAIT = 10000 // 10 seconds const MAX_ERROR_WAIT = 10000 // 10 seconds
func SendEvent(globals AsinkGlobals, event *asink.Event) error { func SendEvent(globals AsinkGlobals, event *asink.Event) error {
@ -68,7 +68,7 @@ func GetEvents(globals AsinkGlobals, events chan *asink.Event) {
} }
//query DB for latest remote event version number that we've seen locally //query DB for latest remote event version number that we've seen locally
latestEvent, err := globals.db.DatabaseLatestRemoteEvent() latestEvent, err := globals.db.DatabaseLatestRemoteEvent()
if err != nil { if err != nil {
panic(err) panic(err)
} }
@ -77,7 +77,7 @@ func GetEvents(globals AsinkGlobals, events chan *asink.Event) {
//query for events after latest_event //query for events after latest_event
var fullUrl string var fullUrl string
if latestEvent != nil { if latestEvent != nil {
fullUrl = url + strconv.FormatInt(latestEvent.Id + 1, 10) fullUrl = url + strconv.FormatInt(latestEvent.Id+1, 10)
} else { } else {
fullUrl = url + "0" fullUrl = url + "0"
} }
@ -110,9 +110,8 @@ func GetEvents(globals AsinkGlobals, events chan *asink.Event) {
continue continue
} }
for _, event := range apistatus.Events { for _, event := range apistatus.Events {
if latestEvent != nil && event.Id != latestEvent.Id + 1 { if latestEvent != nil && event.Id != latestEvent.Id+1 {
break break
} }
events <- event events <- event

View File

@ -42,7 +42,7 @@ func addPoller(uid string, channel *chan *asink.Event) {
} }
//set timer to call function after one minute //set timer to call function after one minute
timeout := time.Duration(1)*time.Minute timeout := time.Duration(1) * time.Minute
time.AfterFunc(timeout, func() { time.AfterFunc(timeout, func() {
group.lock.Lock() group.lock.Lock()
for i, c := range group.channels { for i, c := range group.channels {

View File

@ -128,6 +128,9 @@ func putEvents(w http.ResponseWriter, r *http.Request) {
for _, event := range events.Events { for _, event := range events.Events {
err = DatabaseAddEvent(db, event) err = DatabaseAddEvent(db, event)
if err != nil { if err != nil {
//TODO should probably do this in a way that the caller knows how many of these have failed and doesn't re-try sending ones that succeeded
//i.e. add this to the return codes or something
//OR put all the DatabaseAddEvent's inside a SQL transaction, and rollback on any failure
error_message = err.Error() error_message = err.Error()
return return
} }
@ -154,6 +157,11 @@ func eventHandler(w http.ResponseWriter, r *http.Request) {
} else if r.Method == "POST" { } else if r.Method == "POST" {
putEvents(w, r) putEvents(w, r)
} else { } else {
fmt.Fprintf(w, "You f-ed up.") apiresponse := asink.APIResponse{
Status: asink.ERROR,
Explanation: "Invalid HTTP method - only GET and POST are supported on this endpoint.",
}
b, _ := json.Marshal(apiresponse)
w.Write(b)
} }
} }