Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import asyncdispatch, jester, json, marshal
- type
- Release = object
- version: string
- uri: string
- downMethod: string
- Package = object
- name: string
- versions: seq[Release]
- tags: seq[string]
- proc create_pkg(pkg: Package): Package =
- return pkg
- routes:
- get "/packages/@name":
- var releases = @[
- Release(version: "foo", uri: "http://github.com/ekarlso/foo", downMethod: "git"),
- Release(version: "0.0.1", uri: "http://github.com/ekarlso/foo/001.tar.gz", downMethod: "http")
- ]
- var pkgs = @[
- Package(name: "mysql", tags: @["database", "mysql"], versions: releases),
- Package(name: "rsync", tags: @["foo"], versions: releases)
- ]
- var pkg_array = newJArray()
- for pkg in pkgs:
- var tags = newJArray()
- for t in pkg.tags:
- tags.add(%t)
- pkg_array.add(
- %{
- "name": %pkg.name,
- "tags": tags
- }
- )
- resp($pkg_array, "application/json")
- post "/packages":
- var body = parseJson(@"payload")
- var arr = newJArray()
- resp($arr, "application/json")
- runForever()
Advertisement
Add Comment
Please, Sign In to add comment