fcf.module({
  name: "fcf:NServer/NControllers/Controller.js",
  dependencies: [],
  module: function() {
    var NControllers = fcf.prepareObject(fcf, "NServer.NControllers");

    NControllers.Controller = class Controller {
      constructor(a_options) {
        this._options = a_options;
        this.memoryLeakProtection = "memoryLeakProtection" in a_options ? !!a_options.memoryLeakProtection : true;
        this.clientSocketTimeout  = -1;
        this.maxRequestTimeout    = -1;
        this.serverSocketTimeout  = -1;
        this.maxResponseTimeout   = -1;
      }

      action(a_request) {
        a_request.next();
      }
    }

    return NControllers.Controller;
  }
});
