Source: api/routes/cities/model.js

/**
 * CogniCity Server /cities data model
 * @module src/api/cities/model
 **/
import Promise from 'bluebird';

/**
* Methods to get cities data from database
 * @alias module:src/api/cities/model
 * @param {Object} config Server configuration
 * @param {Object} db PG Promise database instance
 * @param {Object} logger Configured Winston logger instance
 * @return {Object} Query methods
 */
export default (config, db, logger) => ({
	// A list of all infrastructure matching a given type
	all: () => new Promise((resolve, reject) => {
		// Setup query
		let query = `SELECT code, name, the_geom
			FROM cognicity.instance_regions`;

		// Execute
		logger.debug(query);
		db.any(query).timeout(config.PGTIMEOUT)
			.then((data) => resolve(data))
			.catch((err) => reject(err));
	}),

});