| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 | // Connects to Postgres using the sequelize driver// Handles related routesconst helper = require('../helper');const Sequelize = require('sequelize');const sequelize = new Sequelize('hello_world', 'benchmarkdbuser', 'benchmarkdbpass', {  host: 'tfb-database',  dialect: 'postgres',  logging: false});const Worlds = sequelize.define('World', {  id: {    type: 'Sequelize.INTEGER',    primaryKey: true  },  randomnumber: { type: 'Sequelize.INTEGER' }}, {    timestamps: false,    freezeTableName: true  });const Fortunes = sequelize.define('fortune', {  id: {    type: 'Sequelize.INTEGER',    primaryKey: true  },  message: { type: 'Sequelize.STRING' }}, {    timestamps: false,    freezeTableName: true  });const randomWorld = () => Worlds.findOne({ where: { id: helper.randomTfbNumber() } });module.exports = {  SingleQuery: async (request, h) => {    return h.response(await randomWorld())      .header('Content-Type', 'application/json')      .header('Server', 'hapi');  },  MultipleQueries: async (request, h) => {    const queries = helper.getQueries(request);    const results = [];    for (let i = 0; i < queries; i++) {      results.push(await randomWorld());    }    return h.response(results)      .header('Content-Type', 'application/json')      .header('Server', 'hapi');  },  Fortunes: async (request, h) => {    try {      const fortunes = await Fortunes.findAll()      fortunes.push(helper.additionalFortune());      fortunes.sort((a, b) => a.message.localeCompare(b.message));      return h.view('fortunes', { fortunes })        .header('Content-Type', 'text/html')        .header('Server', 'hapi');    } catch (err) {      process.exit(1)    }  },  Updates: async (request, h) => {    const queries = helper.getQueries(request);    const results = [];    for (let i = 0; i < queries; i++) {      const world = await randomWorld();      world.randomnumber = helper.randomTfbNumber();      await Worlds.update(        { randomnumber: world.randomnumber },        { where: { id: world.id } }      );      results.push(world);    }    return h.response(results)      .header('Content-Type', 'application/json')      .header('Server', 'hapi');  }};
 |