routing.js 1013 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. // Initialized database connections, one for each db config
  2. // * Mongoose is a popular Node/MongoDB driver
  3. // * Sequelize is a popular Node/SQL driver
  4. const Handler = require(`./handlers/${process.env.NODE_HANDLER}`);
  5. const h = require('./helper');
  6. module.exports.BasicHandler = ((() => {
  7. const self = {};
  8. self.routes = {
  9. '/json': h.responses.jsonSerialization,
  10. '/plaintext': h.responses.plaintext,
  11. '/db': Handler.SingleQuery,
  12. '/fortunes': Handler.Fortunes,
  13. };
  14. self.has = (path) => self.routes[path];
  15. self.handle = (path, req, res) => self.routes[path](req, res);
  16. return self;
  17. })());
  18. module.exports.QueryHandler = ((() => {
  19. const self = {};
  20. self.routes = {
  21. '/queries': Handler.MultipleQueries,
  22. '/updates': Handler.Updates,
  23. '/cached' : Handler.CachedQueries,
  24. };
  25. self.has = (path) => self.routes[path];
  26. self.handle = (path, queries, req, res) =>
  27. self.routes[path](queries, req, res);
  28. return self;
  29. })());