diff options
author | Franck Cuny <franck@lumberjaph.net> | 2013-04-22 20:31:27 -0700 |
---|---|---|
committer | Franck Cuny <franck@lumberjaph.net> | 2013-04-22 20:31:27 -0700 |
commit | 9db26b5a38cf49dce6af6658dc217c320404d39a (patch) | |
tree | a7139d5f6f90f64fce4831004e5a2c58eb715e0a /eg/base.go | |
parent | Change the interface to create routes. (diff) | |
download | path-router-9db26b5a38cf49dce6af6658dc217c320404d39a.tar.gz |
Add a very simple exemple to the framework.
Diffstat (limited to 'eg/base.go')
-rw-r--r-- | eg/base.go | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/eg/base.go b/eg/base.go new file mode 100644 index 0000000..cca4e40 --- /dev/null +++ b/eg/base.go @@ -0,0 +1,71 @@ +package main + +import ( + "github.com/franckcuny/mooh" + "net/http" +) + +func TestId(req *mooh.Request) (mooh.Response, error) { + r := mooh.Response{ + Status: 200, + Content: "id", + } + return r, nil +} + +func TestIdFoo(req *mooh.Request) (mooh.Response, error) { + r := mooh.Response{ + Status: 200, + Content: "foo", + } + return r, nil +} + +func Test(req *mooh.Request) (mooh.Response, error) { + resp := mooh.Response{} + resp.Status = 200 + resp.Content = "duh" + return resp, nil +} + +func TestPut(req *mooh.Request) (mooh.Response, error) { + resp := mooh.Response{} + resp.Status = 200 + resp.Content = "ok" + return resp, nil +} + +func main() { + router := mooh.BuildDispatcher() + + router.AddRoute( + &mooh.Route{ + Method: "GET", + Path: "/foo/bar/baz", + Code: Test, + }, + ) + router.AddRoute( + &mooh.Route{ + Method: "PUT", + Path: "/foo/bar/baz", + Code: TestPut, + }, + ) + router.AddRoute( + &mooh.Route{ + Method: "GET", + Path: "/test/:id", + Code: TestId, + }, + ) + router.AddRoute( + &mooh.Route{ + Method: "GET", + Path: "/test/:id/foo", + Code: TestIdFoo, + }, + ) + + http.ListenAndServe(":8080", &router) +} |