diff options
Diffstat (limited to 'examples/lib/okexample/index.js')
| -rw-r--r-- | examples/lib/okexample/index.js | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/examples/lib/okexample/index.js b/examples/lib/okexample/index.js new file mode 100644 index 0000000..04c5984 --- /dev/null +++ b/examples/lib/okexample/index.js @@ -0,0 +1,49 @@ + +/** + * Example service to show how these things should be set up. + * + * Services should be added to index.js in the proper area, + * with any configuration parameters that you want passed in: + * + * services: { + * example: { + * lib: require("./lib/okexample"), + * stuff: "things", + * } + * }, + * + * The service will be mounted on /_services/example + * + * This binds to route '*' but you can specify e.g. "/thing", + * and it will be mounted on /_services/example/thing + */ + +function OKExample (options) { + if (!(this instanceof OKExample)) return new OKExample(options) + options = options || {} + if (!options.express) + throw new Error('Express not provided to OKExample'); + if (!options.config) + throw new Error('Configuration not provided to OKExample'); + + var express = options.express + var router = express.Router() + var config = options.config + var db = options.db + + router.get('*', function (req, res) { + res.send(config.stuff) + }) + + router.post('*', function (req, res) { + throw new Error('OKExample POST requests not implemented') + }) + + this._router = router +} + +OKExample.prototype.middleware = function () { + return this._router +} + +module.exports = OKExample |
