/*! * Connect * Copyright(c) 2010 Sencha Inc. * Copyright(c) 2011 TJ Holowaychuk * MIT Licensed */ /** * Module dependencies. */ var HTTPServer = require('./http').Server , HTTPSServer = require('./https').Server , fs = require('fs'); // node patches require('./patch'); // expose createServer() as the module exports = module.exports = createServer; /** * Framework version. */ exports.version = '1.9.2'; /** * Initialize a new `connect.HTTPServer` with the middleware * passed to this function. When an object is passed _first_, * we assume these are the tls options, and return a `connect.HTTPSServer`. * * Examples: * * An example HTTP server, accepting several middleware. * * var server = connect.createServer( * connect.logger() * , connect.static(__dirname + '/public') * ); * * An HTTPS server, utilizing the same middleware as above. * * var server = connect.createServer( * { key: key, cert: cert } * , connect.logger() * , connect.static(__dirname + '/public') * ); * * Alternatively with connect 1.0 we may omit `createServer()`. * * connect( * connect.logger() * , connect.static(__dirname + '/public') * ).listen(3000); * * @param {Object|Function} ... * @return {Server} * @api public */ function createServer() { if ('object' == typeof arguments[0]) { return new HTTPSServer(arguments[0], Array.prototype.slice.call(arguments, 1)); } else { return new HTTPServer(Array.prototype.slice.call(arguments)); }}; // support connect.createServer() exports.createServer = createServer; // auto-load getters exports.middleware = {}; /** * Auto-load bundled middleware with getters. */ fs.readdirSync(__dirname + '/middleware').forEach(function(filename){ if (/\.js$/.test(filename)) { var name = filename.substr(0, filename.lastIndexOf('.')); exports.middleware.__defineGetter__(name, function(){ return require('./middleware/' + name); }); }}); // expose utils exports.utils = require('./utils'); // expose getters as first-class exports exports.utils.merge(exports, exports.middleware); // expose constructors exports.HTTPServer = HTTPServer;exports.HTTPSServer = HTTPSServer;
/*!
* Connect
* Copyright(c) 2010 Sencha Inc.
* Copyright(c) 2011 TJ Holowaychuk
* MIT Licensed
*/
/**
* Module dependencies.
*/
var HTTPServer = require('./http').Server
, HTTPSServer = require('./https').Server
, fs = require('fs');
// node patches
require('./patch');
// expose createServer() as the module
exports = module.exports = createServer;
/**
* Framework version.
*/
exports.version = '1.9.2';
/**
* Initialize a new `connect.HTTPServer` with the middleware
* passed to this function. When an object is passed _first_,
* we assume these are the tls options, and return a `connect.HTTPSServer`.
*
* Examples:
*
* An example HTTP server, accepting several middleware.
*
* var server = connect.createServer(
* connect.logger()
* , connect.static(__dirname + '/public')
* );
*
* An HTTPS server, utilizing the same middleware as above.
*
* var server = connect.createServer(
* { key: key, cert: cert }
* , connect.logger()
* , connect.static(__dirname + '/public')
* );
*
* Alternatively with connect 1.0 we may omit `createServer()`.
*
* connect(
* connect.logger()
* , connect.static(__dirname + '/public')
* ).listen(3000);
*
* @param {Object|Function} ...
* @return {Server}
* @api public
*/
function createServer() {
if ('object' == typeof arguments[0]) {
return new HTTPSServer(arguments[0], Array.prototype.slice.call(arguments, 1));
} else {
return new HTTPServer(Array.prototype.slice.call(arguments));
}
};
// support connect.createServer()
exports.createServer = createServer;
// auto-load getters
exports.middleware = {};
/**
* Auto-load bundled middleware with getters.
*/
fs.readdirSync(__dirname + '/middleware').forEach(function(filename){
if (/\.js$/.test(filename)) {
var name = filename.substr(0, filename.lastIndexOf('.'));
exports.middleware.__defineGetter__(name, function(){
return require('./middleware/' + name);
});
}
});
// expose utils
exports.utils = require('./utils');
// expose getters as first-class exports
exports.utils.merge(exports, exports.middleware);
// expose constructors
exports.HTTPServer = HTTPServer;
exports.HTTPSServer = HTTPSServer;