Skip to content

Instantly share code, notes, and snippets.

View hakant's full-sized avatar

Hakan Tuncer hakant

View GitHub Profile
// server.js
// where your node app starts
// init project
var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
io.on('connection', function(socket){
/** AdminRepository.ts **/
"use strict";
import * as _ from 'underscore';
import * as nconf from 'nconf';
const businessRules = nconf.get("BusinessRules");
let admins = businessRules.Administrators;
interface IAdminRepository {
IsUserAdmin(username : string) : boolean;
}
"use strict";
import * as _ from 'underscore';
import * as nconf from 'nconf';
const businessRules = nconf.get("BusinessRules");
let admins = businessRules.Administrators;
export default class AdminRepository implements IAdminRepository {
"use strict;"
import * as express from 'express';
export interface RouteConfigurator {
configure(path:string, app: express.Application);
}
"use strict";
import * as express from 'express';
const router = express.Router();
import { RouteConfigurator } from './RouteConfigurator'
class IndexRouteConfigurator implements RouteConfigurator {
public configure(path: string, app: express.Application) {
import executor from "../infrastructure/command-executor";
import {TestRequest, TestResponse} from "../handlers/test-handler";
let request = new TestRequest();
request.name = "Hakan";
let response = executor.Execute<TestRequest, TestResponse>(request);
console.log(response.message); // Prints 'Hello Hakan'
import { CommandHandler } from "../infrastructure/command-handler"
import container from "../infrastructure/command-handler-container";
class TestHandler implements CommandHandler<TestRequest, TestResponse> {
Handle(request: TestRequest): TestResponse {
var result = new TestResponse();
result.message = `Hello ${request.name}!`;
"use strict";
import { AsyncCommandHandler } from "../application/command-handler"
import container from "../application/command-handler-container";
import * as nconf from 'nconf';
import * as AWS from 'aws-sdk';
import * as Bluebird from 'bluebird';
import * as _ from 'underscore';
router.get('/', catchAsyncErrors(async function (req, res, next) {
var request = new GetIdeasRequest();
request.user = req.user;
var response = await application.ExecuteAsync<GetIdeasRequest, GetIdeasResponse>(request);
res.json(response.ideas);
}));