You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apex.apache.org by da...@apache.org on 2015/11/30 22:06:26 UTC

[20/98] [abbrv] [partial] incubator-apex-malhar git commit: Removing all web demos

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/package.json
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/package.json b/web/demos/package/node_modules/http-proxy/package.json
deleted file mode 100644
index 5da2bcf..0000000
--- a/web/demos/package/node_modules/http-proxy/package.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
-  "name": "http-proxy",
-  "version": "0.10.4",
-  "description": "A full-featured http reverse proxy for node.js",
-  "author": {
-    "name": "Nodejitsu Inc.",
-    "email": "info@nodejitsu.com"
-  },
-  "maintainers": [
-    {
-      "name": "indexzero",
-      "email": "charlie@nodejitsu.com"
-    },
-    {
-      "name": "AvianFlu",
-      "email": "avianflu@nodejitsu.com"
-    }
-  ],
-  "repository": {
-    "type": "git",
-    "url": "http://github.com/nodejitsu/node-http-proxy.git"
-  },
-  "keywords": [
-    "reverse",
-    "proxy",
-    "http"
-  ],
-  "dependencies": {
-    "colors": "0.x.x",
-    "optimist": "0.6.x",
-    "pkginfo": "0.3.x",
-    "utile": "~0.2.1"
-  },
-  "devDependencies": {
-    "request": "2.14.x",
-    "vows": "0.7.x",
-    "async": "0.2.x",
-    "socket.io": "0.9.11",
-    "socket.io-client": "0.9.11",
-    "ws": "0.4.23"
-  },
-  "main": "./lib/node-http-proxy",
-  "bin": {
-    "node-http-proxy": "./bin/node-http-proxy"
-  },
-  "scripts": {
-    "test": "npm run-script test-http && npm run-script test-https && npm run-script test-core",
-    "test-http": "vows --spec && vows --spec --target=https",
-    "test-https": "vows --spec --proxy=https && vows --spec --proxy=https --target=https",
-    "test-core": "test/core/run"
-  },
-  "engines": {
-    "node": ">= 0.6.6"
-  },
-  "readme": "# node-http-proxy [![Build Status](https://secure.travis-ci.org/nodejitsu/node-http-proxy.png)](http://travis-ci.org/nodejitsu/node-http-proxy)\n\n<img src=\"http://i.imgur.com/8fTt9.png\" />\n\n## Battle-hardened node.js http proxy\n\n### Features\n\n* Reverse proxies incoming http.ServerRequest streams\n* Can be used as a CommonJS module in node.js\n* Reverse or Forward Proxy based on simple JSON-based configuration\n* Supports [WebSockets][1]\n* Supports [HTTPS][2]\n* Minimal request overhead and latency\n* Full suite of functional tests\n* Battled-hardened through __production usage__ @ [nodejitsu.com][0]\n* Written entirely in Javascript\n* Easy to use API\n\n\nnode-http-proxy is `<= 0.8.x` compatible, if you're looking for a `>= 0.10` compatible version please check [caronte](https://github.com/nodejitsu/node-http-proxy/tree/caronte)\n\n### When to use node-http-proxy\n\nLet's suppose you were running multiple http application servers, but you only wanted to expos
 e one machine to the internet. You could setup node-http-proxy on that one machine and then reverse-proxy the incoming http requests to locally running services which were not exposed to the outside network. \n\n### Installing npm (node package manager)\n\n```\ncurl https://npmjs.org/install.sh | sh\n```\n\n### Installing node-http-proxy\n\n```\nnpm install http-proxy\n```\n\n## Using node-http-proxy\n\nThere are several ways to use node-http-proxy; the library is designed to be flexible so that it can be used by itself, or in conjunction with other node.js libraries / tools:\n\n1. Standalone HTTP Proxy server\n2. Inside of another HTTP server (like Connect)\n3. In conjunction with a Proxy Routing Table\n4. As a forward-proxy with a reverse proxy \n5. From the command-line as a long running process\n6. customized with 3rd party middleware.\n\nIn each of these scenarios node-http-proxy can handle any of these types of requests:\n\n1. HTTP Requests (http://)\n2. HTTPS Requests (https:
 //)\n3. WebSocket Requests (ws://)\n4. Secure WebSocket Requests (wss://)\n\nSee the [examples][3] for more working sample code.\n\n### Setup a basic stand-alone proxy server\n\n``` js\nvar http = require('http'),\n    httpProxy = require('http-proxy');\n//\n// Create your proxy server\n//\nhttpProxy.createServer(9000, 'localhost').listen(8000);\n\n//\n// Create your target server\n//\nhttp.createServer(function (req, res) {\n  res.writeHead(200, { 'Content-Type': 'text/plain' });\n  res.write('request successfully proxied!' + '\\n' + JSON.stringify(req.headers, true, 2));\n  res.end();\n}).listen(9000);\n```\n\n### Setup a stand-alone proxy server with custom server logic\n\n``` js\nvar http = require('http'),\n    httpProxy = require('http-proxy');\n    \n//\n// Create a proxy server with custom application logic\n//\nhttpProxy.createServer(function (req, res, proxy) {\n  //\n  // Put your custom server logic here\n  //\n  proxy.proxyRequest(req, res, {\n    host: 'localhost',\n  
   port: 9000\n  });\n}).listen(8000);\n\nhttp.createServer(function (req, res) {\n  res.writeHead(200, { 'Content-Type': 'text/plain' });\n  res.write('request successfully proxied: ' + req.url +'\\n' + JSON.stringify(req.headers, true, 2));\n  res.end();\n}).listen(9000);\n```\n\n### Setup a stand-alone proxy server with latency (e.g. IO, etc)\n\n``` js\nvar http = require('http'),\n    httpProxy = require('http-proxy');\n\n//\n// Create a proxy server with custom application logic\n//\nhttpProxy.createServer(function (req, res, proxy) {\n  //\n  // Buffer the request so that `data` and `end` events\n  // are not lost during async operation(s).\n  //\n  var buffer = httpProxy.buffer(req);\n  \n  //\n  // Wait for two seconds then respond: this simulates\n  // performing async actions before proxying a request\n  //\n  setTimeout(function () {\n    proxy.proxyRequest(req, res, {\n      host: 'localhost',\n      port: 9000, \n      buffer: buffer\n    });      \n  }, 2000);\n}).liste
 n(8000);\n\nhttp.createServer(function (req, res) {\n  res.writeHead(200, { 'Content-Type': 'text/plain' });\n  res.write('request successfully proxied: ' + req.url +'\\n' + JSON.stringify(req.headers, true, 2));\n  res.end();\n}).listen(9000);\n```\n\n### Proxy requests within another http server\n\n``` js\nvar http = require('http'),\n    httpProxy = require('http-proxy');\n    \n//\n// Create a new instance of HttProxy to use in your server\n//\nvar proxy = new httpProxy.RoutingProxy();\n\n//\n// Create a regular http server and proxy its handler\n//\nhttp.createServer(function (req, res) {\n  //\n  // Put your custom server logic here, then proxy\n  //\n  proxy.proxyRequest(req, res, {\n    host: 'localhost',\n    port: 9000\n  });\n}).listen(8001);\n\nhttp.createServer(function (req, res) {\n  res.writeHead(200, { 'Content-Type': 'text/plain' });\n  res.write('request successfully proxied: ' + req.url +'\\n' + JSON.stringify(req.headers, true, 2));\n  res.end();\n}).listen(9000
 ); \n```\n\n### Proxy requests using a ProxyTable\nA Proxy Table is a simple lookup table that maps incoming requests to proxy target locations. Take a look at an example of the options you need to pass to httpProxy.createServer:\n\n``` js\nvar options = {\n  router: {\n    'foo.com/baz': '127.0.0.1:8001',\n    'foo.com/buz': '127.0.0.1:8002',\n    'bar.com/buz': '127.0.0.1:8003'\n  }\n};\n```\n\nThe above route table will take incoming requests to 'foo.com/baz' and forward them to '127.0.0.1:8001'. Likewise it will take incoming requests to 'foo.com/buz' and forward them to '127.0.0.1:8002'. The routes themselves are later converted to regular expressions to enable more complex matching functionality. We can create a proxy server with these options by using the following code:\n\n``` js\nvar proxyServer = httpProxy.createServer(options);\nproxyServer.listen(80);\n```\n\n### Proxy requests using a 'Hostname Only' ProxyTable\nAs mentioned in the previous section, all routes passes to
  the ProxyTable are by default converted to regular expressions that are evaluated at proxy-time. This is good for complex URL rewriting of proxy requests, but less efficient when one simply wants to do pure hostname routing based on the HTTP 'Host' header. If you are only concerned with hostname routing, you change the lookup used by the internal ProxyTable:\n\n``` js\nvar options = {\n  hostnameOnly: true,\n  router: {\n    'foo.com': '127.0.0.1:8001',\n    'bar.com': '127.0.0.1:8002'\n  }\n}\n```\n\nNotice here that I have not included paths on the individual domains because this is not possible when using only the HTTP 'Host' header. Care to learn more? See [RFC2616: HTTP/1.1, Section 14.23, \"Host\"][4].\n\n### Proxy requests using a 'Pathname Only' ProxyTable\n\nIf you dont care about forwarding to different hosts, you can redirect based on the request path.\n\n``` js\nvar options = {\n  pathnameOnly: true,\n  router: {\n    '/wiki': '127.0.0.1:8001',\n    '/blog': '127.0.0.1:
 8002',\n    '/api':  '127.0.0.1:8003'\n  }\n}\n```\n\nThis comes in handy if you are running separate services or applications on separate paths.  Note, using this option disables routing by hostname entirely.\n\n\n### Proxy requests with an additional forward proxy\nSometimes in addition to a reverse proxy, you may want your front-facing server to forward traffic to another location. For example, if you wanted to load test your staging environment. This is possible when using node-http-proxy using similar JSON-based configuration to a proxy table: \n\n``` js\nvar proxyServerWithForwarding = httpProxy.createServer(9000, 'localhost', {\n  forward: {\n    port: 9000,\n    host: 'staging.com'\n  }\n});\nproxyServerWithForwarding.listen(80);\n```\n\nThe forwarding option can be used in conjunction with the proxy table options by simply including both the 'forward' and 'router' properties in the options passed to 'createServer'.\n\n### Listening for proxy events\nSometimes you want to li
 sten to an event on a proxy. For example, you may want to listen to the 'end' event, which represents when the proxy has finished proxying a request.\n\n``` js\nvar httpProxy = require('http-proxy');\n\nvar server = httpProxy.createServer(function (req, res, proxy) {\n  var buffer = httpProxy.buffer(req);\n\n  proxy.proxyRequest(req, res, {\n    host: '127.0.0.1',\n    port: 9000,\n    buffer: buffer\n  });\n});\n\nserver.proxy.on('end', function () {\n  console.log(\"The request was proxied.\");\n});\n\nserver.listen(8000);\n```\n\nIt's important to remember not to listen for events on the proxy object in the function passed to `httpProxy.createServer`. Doing so would add a new listener on every request, which would end up being a disaster.\n\n## Using HTTPS\nYou have all the full flexibility of node-http-proxy offers in HTTPS as well as HTTP. The two basic scenarios are: with a stand-alone proxy server or in conjunction with another HTTPS server.\n\n### Proxying to HTTP from HTTPS
 \nThis is probably the most common use-case for proxying in conjunction with HTTPS. You have some front-facing HTTPS server, but all of your internal traffic is HTTP. In this way, you can reduce the number of servers to which your CA and other important security files are deployed and reduce the computational overhead from HTTPS traffic. \n\nUsing HTTPS in `node-http-proxy` is relatively straight-forward:\n \n``` js\nvar fs = require('fs'),\n    http = require('http'),\n    https = require('https'),\n    httpProxy = require('http-proxy');\n    \nvar options = {\n  https: {\n    key: fs.readFileSync('path/to/your/key.pem', 'utf8'),\n    cert: fs.readFileSync('path/to/your/cert.pem', 'utf8')\n  }\n};\n\n//\n// Create a standalone HTTPS proxy server\n//\nhttpProxy.createServer(8000, 'localhost', options).listen(8001);\n\n//\n// Create an instance of HttpProxy to use with another HTTPS server\n//\nvar proxy = new httpProxy.HttpProxy({\n  target: {\n    host: 'localhost', \n    port: 800
 0\n  }\n});\nhttps.createServer(options.https, function (req, res) {\n  proxy.proxyRequest(req, res)\n}).listen(8002);\n\n//\n// Create the target HTTPS server for both cases\n//\nhttp.createServer(function (req, res) {\n  res.writeHead(200, { 'Content-Type': 'text/plain' });\n  res.write('hello https\\n');\n  res.end();\n}).listen(8000);\n```\n\n### Using two certificates\n\nSuppose that your reverse proxy will handle HTTPS traffic for two different domains `fobar.com` and `barbaz.com`.\nIf you need to use two different certificates you can take advantage of [Server Name Indication](http://en.wikipedia.org/wiki/Server_Name_Indication).\n\n``` js\nvar https = require('https'),\n    path = require(\"path\"),\n    fs = require(\"fs\"),\n    crypto = require(\"crypto\");\n\n//\n// generic function to load the credentials context from disk\n//\nfunction getCredentialsContext (cer) {\n  return crypto.createCredentials({\n    key:  fs.readFileSync(path.join(__dirname, 'certs', cer + '.key
 ')),\n    cert: fs.readFileSync(path.join(__dirname, 'certs', cer + '.crt'))\n  }).context;\n}\n\n//\n// A certificate per domain hash\n//\nvar certs = {\n  \"fobar.com\":  getCredentialsContext(\"foobar\"),\n  \"barbaz.com\": getCredentialsContext(\"barbaz\")\n};\n\n//\n// Proxy options\n//\n// This section assumes that myCert, myKey and myCa are defined (they are not\n// in this example). With a SNICallback, the proxy needs a default set of\n// certificates to use.\n//\nvar options = {\n  https: {\n    SNICallback: function (hostname) {\n      return certs[hostname];\n    },\n    cert: myCert,\n    key: myKey,\n    ca: [myCa]\n  },\n  hostnameOnly: true,\n  router: {\n    'fobar.com':  '127.0.0.1:8001',\n    'barbaz.com': '127.0.0.1:8002'\n  }\n};\n\n//\n// Create a standalone HTTPS proxy server\n//\nhttpProxy.createServer(options).listen(8001);\n\n//\n// Create the target HTTPS server\n//\nhttp.createServer(function (req, res) {\n  res.writeHead(200, { 'Content-Type': 'text/plain
 ' });\n  res.write('hello https\\n');\n  res.end();\n}).listen(8000);\n\n```\n\n### Proxying to HTTPS from HTTPS\nProxying from HTTPS to HTTPS is essentially the same as proxying from HTTPS to HTTP, but you must include the `target` option in when calling `httpProxy.createServer` or instantiating a new instance of `HttpProxy`.\n\n``` js\nvar fs = require('fs'),\n    https = require('https'),\n    httpProxy = require('http-proxy');\n    \nvar options = {\n  https: {\n    key: fs.readFileSync('path/to/your/key.pem', 'utf8'),\n    cert: fs.readFileSync('path/to/your/cert.pem', 'utf8')\n  },\n  target: {\n    https: true // This could also be an Object with key and cert properties\n  }\n};\n\n//\n// Create a standalone HTTPS proxy server\n//\nhttpProxy.createServer(8000, 'localhost', options).listen(8001);\n\n//\n// Create an instance of HttpProxy to use with another HTTPS server\n//\nvar proxy = new httpProxy.HttpProxy({ \n  target: {\n    host: 'localhost', \n    port: 8000,\n    http
 s: true\n  }\n});\n\nhttps.createServer(options.https, function (req, res) {\n  proxy.proxyRequest(req, res);\n}).listen(8002);\n\n//\n// Create the target HTTPS server for both cases\n//\nhttps.createServer(options.https, function (req, res) {\n  res.writeHead(200, { 'Content-Type': 'text/plain' });\n  res.write('hello https\\n');\n  res.end();\n}).listen(8000);\n```\n## Middleware\n\n`node-http-proxy` now supports connect middleware. Add middleware functions to your createServer call:\n\n``` js\nhttpProxy.createServer(\n  require('connect-gzip').gzip(),\n  9000, 'localhost'\n).listen(8000);\n```\n\nA regular request we receive is to support the modification of html/xml content that is returned in the response from an upstream server. \n\n[Harmon](https://github.com/No9/harmon/) is a stream based middleware plugin that is designed to solve that problem in the most effective way possible. \n\nIf you would like to handle errors passed to `next()` then attach a listener to the proxy:\
 n\n    server = httpProxy.createServer(\n      myMiddleWare,\n      9000, 'localhost'\n    ).listen(8000);\n\n    server.proxy.on('middlewareError', function (err, req, res) {\n      // handle the error here and call res.end()\n    });\n\n## Proxying WebSockets\nWebsockets are handled automatically when using `httpProxy.createServer()`, however, if you supply a callback inside the createServer call, you will need to handle the 'upgrade' proxy event yourself. Here's how:\n\n```js\n\nvar options = {\n    ....\n};\n\nvar server = httpProxy.createServer(\n    callback/middleware, \n    options\n);\n\nserver.listen(port, function () { ... });\nserver.on('upgrade', function (req, socket, head) {\n    server.proxy.proxyWebSocketRequest(req, socket, head);\n});\n```\n\nIf you would rather not use createServer call, and create the server that proxies yourself, see below:\n\n``` js\nvar http = require('http'),\n    httpProxy = require('http-proxy');\n    \n//\n// Create an instance of node-ht
 tp-proxy\n//\nvar proxy = new httpProxy.HttpProxy({\n  target: {\n    host: 'localhost',\n    port: 8000\n  }\n});\n\nvar server = http.createServer(function (req, res) {\n  //\n  // Proxy normal HTTP requests\n  //\n  proxy.proxyRequest(req, res);\n});\n\nserver.on('upgrade', function (req, socket, head) {\n  //\n  // Proxy websocket requests too\n  //\n  proxy.proxyWebSocketRequest(req, socket, head);\n});\n\nserver.listen(8080);\n```\n\n### with custom server logic\n\n``` js\nvar httpProxy = require('http-proxy')\n\nvar server = httpProxy.createServer(function (req, res, proxy) {\n  //\n  // Put your custom server logic here\n  //\n  proxy.proxyRequest(req, res, {\n    host: 'localhost',\n    port: 9000\n  });\n})\n\nserver.on('upgrade', function (req, socket, head) {\n  //\n  // Put your custom server logic here\n  //\n  server.proxy.proxyWebSocketRequest(req, socket, head, {\n    host: 'localhost',\n    port: 9000\n  });\n});\n\nserver.listen(8080);\n```\n\n### Configuring your
  Socket limits\n\nBy default, `node-http-proxy` will set a 100 socket limit for all `host:port` proxy targets. You can change this in two ways: \n\n1. By passing the `maxSockets` option to `httpProxy.createServer()`\n2. By calling `httpProxy.setMaxSockets(n)`, where `n` is the number of sockets you with to use. \n\n## POST requests and buffering\n\nexpress.bodyParser will interfere with proxying of POST requests (and other methods that have a request \nbody). With bodyParser active, proxied requests will never send anything to the upstream server, and \nthe original client will just hang. See https://github.com/nodejitsu/node-http-proxy/issues/180 for options.\n\n## Using node-http-proxy from the command line\nWhen you install this package with npm, a node-http-proxy binary will become available to you. Using this binary is easy with some simple options:\n\n``` js\nusage: node-http-proxy [options] \n\nAll options should be set with the syntax --option=value\n\noptions:\n  --port   P
 ORT       Port that the proxy server should run on\n  --target HOST:PORT  Location of the server the proxy will target\n  --config OUTFILE    Location of the configuration file for the proxy server\n  --silent            Silence the log output from the proxy server\n  -h, --help          You're staring at it\n```\n\n<br/>\n## Why doesn't node-http-proxy have more advanced features like x, y, or z?\n\nIf you have a suggestion for a feature currently not supported, feel free to open a [support issue][6]. node-http-proxy is designed to just proxy http requests from one server to another, but we will be soon releasing many other complimentary projects that can be used in conjunction with node-http-proxy.\n\n## Options\n\n### Http Proxy\n\n`createServer()` supports the following options\n\n```javascript\n{\n  forward: { // options for forward-proxy\n    port: 8000,\n    host: 'staging.com'\n  },\n  target : { // options for proxy target\n    port : 8000, \n    host : 'localhost',\n  };\n
   source : { // additional options for websocket proxying \n    host : 'localhost',\n    port : 8000,\n    https: true\n  },\n  enable : {\n    xforward: true // enables X-Forwarded-For\n  },\n  changeOrigin: false, // changes the origin of the host header to the target URL\n  timeout: 120000 // override the default 2 minute http socket timeout value in milliseconds\n}\n```\n\n## Run Tests\nThe test suite is designed to fully cover the combinatoric possibilities of HTTP and HTTPS proxying:\n\n1. HTTP --> HTTP\n2. HTTPS --> HTTP\n3. HTTPS --> HTTPS\n4. HTTP --> HTTPS\n\n```\nvows test/*-test.js --spec\nvows test/*-test.js --spec --https\nvows test/*-test.js --spec --https --target=https\nvows test/*-test.js --spec --target=https\n```\n\n<br/>\n### License\n\n(The MIT License)\n\nCopyright (c) 2010 Charlie Robbins, Mikeal Rogers, Fedor Indutny, & Marak Squires\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation
  files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\nOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\nWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n[0]: http://nodejitsu.com\n[1]: https://github.com/nodejitsu/node-http-pr
 oxy/blob/master/examples/websocket/websocket-proxy.js\n[2]: https://github.com/nodejitsu/node-http-proxy/blob/master/examples/http/proxy-https-to-http.js\n[3]: https://github.com/nodejitsu/node-http-proxy/tree/master/examples\n[4]: http://www.ietf.org/rfc/rfc2616.txt\n[5]: http://socket.io\n[6]: http://github.com/nodejitsu/node-http-proxy/issues\n",
-  "readmeFilename": "README.md",
-  "bugs": {
-    "url": "https://github.com/nodejitsu/node-http-proxy/issues"
-  },
-  "homepage": "https://github.com/nodejitsu/node-http-proxy",
-  "_id": "http-proxy@0.10.4",
-  "_from": "http-proxy@~0.10.3"
-}

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/README.md
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/README.md b/web/demos/package/node_modules/http-proxy/test/core/README.md
deleted file mode 100644
index 152e5c6..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# `test/core`
-
-`test/core` directory is a place where tests from node.js core go. They are
-here to ensure that node-http-proxy works just fine with all kinds of
-different situations, which are covered in core tests, but are not covered in
-our tests.
-
-All these tests require little modifications to make them test node-http-proxy,
-but we try to keep them as vanilla as possible.
-

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/common.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/common.js b/web/demos/package/node_modules/http-proxy/test/core/common.js
deleted file mode 100644
index 3f584a5..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/common.js
+++ /dev/null
@@ -1,190 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var path = require('path');
-var assert = require('assert');
-
-exports.testDir = path.dirname(__filename);
-exports.fixturesDir = path.join(exports.testDir, 'fixtures');
-exports.libDir = path.join(exports.testDir, '../lib');
-exports.tmpDir = path.join(exports.testDir, 'tmp');
-exports.PORT = 12346;
-exports.PROXY_PORT = 1234567;
-
-if (process.platform === 'win32') {
-  exports.PIPE = '\\\\.\\pipe\\libuv-test';
-} else {
-  exports.PIPE = exports.tmpDir + '/test.sock';
-}
-
-var util = require('util');
-for (var i in util) exports[i] = util[i];
-//for (var i in exports) global[i] = exports[i];
-
-function protoCtrChain(o) {
-  var result = [];
-  for (; o; o = o.__proto__) { result.push(o.constructor); }
-  return result.join();
-}
-
-exports.indirectInstanceOf = function (obj, cls) {
-  if (obj instanceof cls) { return true; }
-  var clsChain = protoCtrChain(cls.prototype);
-  var objChain = protoCtrChain(obj);
-  return objChain.slice(-clsChain.length) === clsChain;
-};
-
-
-exports.ddCommand = function (filename, kilobytes) {
-  if (process.platform === 'win32') {
-    var p = path.resolve(exports.fixturesDir, 'create-file.js');
-    return '"' + process.argv[0] + '" "' + p + '" "' +
-           filename + '" ' + (kilobytes * 1024);
-  } else {
-    return 'dd if=/dev/zero of="' + filename + '" bs=1024 count=' + kilobytes;
-  }
-};
-
-
-exports.spawnPwd = function (options) {
-  var spawn = require('child_process').spawn;
-
-  if (process.platform === 'win32') {
-    return spawn('cmd.exe', ['/c', 'cd'], options);
-  } else {
-    return spawn('pwd', [], options);
-  }
-};
-
-
-// Turn this off if the test should not check for global leaks.
-exports.globalCheck = true;
-
-process.on('exit', function () {
-  if (!exports.globalCheck) return;
-  var knownGlobals = [setTimeout,
-                      setInterval,
-                      clearTimeout,
-                      clearInterval,
-                      console,
-                      Buffer,
-                      process,
-                      global];
-
-  if (global.setImmediate) {
-    knownGlobals.push(setImmediate);
-    knownGlobals.push(clearImmediate);
-  }
-
-  if (global.errno) {
-    knownGlobals.push(errno);
-  }
-
-  if (global.gc) {
-    knownGlobals.push(gc);
-  }
-
-  if (global.DTRACE_HTTP_SERVER_RESPONSE) {
-    knownGlobals.push(DTRACE_HTTP_SERVER_RESPONSE);
-    knownGlobals.push(DTRACE_HTTP_SERVER_REQUEST);
-    knownGlobals.push(DTRACE_HTTP_CLIENT_RESPONSE);
-    knownGlobals.push(DTRACE_HTTP_CLIENT_REQUEST);
-    knownGlobals.push(DTRACE_NET_STREAM_END);
-    knownGlobals.push(DTRACE_NET_SERVER_CONNECTION);
-    knownGlobals.push(DTRACE_NET_SOCKET_READ);
-    knownGlobals.push(DTRACE_NET_SOCKET_WRITE);
-  }
-
-  if (global.ArrayBuffer) {
-    knownGlobals.push(ArrayBuffer);
-    knownGlobals.push(Int8Array);
-    knownGlobals.push(Uint8Array);
-    knownGlobals.push(Int16Array);
-    knownGlobals.push(Uint16Array);
-    knownGlobals.push(Int32Array);
-    knownGlobals.push(Uint32Array);
-    knownGlobals.push(Float32Array);
-    knownGlobals.push(Float64Array);
-    knownGlobals.push(DataView);
-
-    if (global.Uint8ClampedArray) {
-      knownGlobals.push(Uint8ClampedArray);
-    }
-  }
-
-  for (var x in global) {
-    var found = false;
-
-    for (var y in knownGlobals) {
-      if (global[x] === knownGlobals[y]) {
-        found = true;
-        break;
-      }
-    }
-
-    if (!found) {
-      console.error('Unknown global: %s', x);
-      assert.ok(false, 'Unknown global found');
-    }
-  }
-});
-
-
-var mustCallChecks = [];
-
-
-function runCallChecks() {
-  var failed = mustCallChecks.filter(function (context) {
-    return context.actual !== context.expected;
-  });
-
-  failed.forEach(function (context) {
-    console.log('Mismatched %s function calls. Expected %d, actual %d.',
-                context.name,
-                context.expected,
-                context.actual);
-    console.log(context.stack.split('\n').slice(2).join('\n'));
-  });
-
-  if (failed.length) process.exit(1);
-}
-
-
-exports.mustCall = function (fn, expected) {
-  if (typeof expected !== 'number') expected = 1;
-
-  var context = {
-    expected: expected,
-    actual: 0,
-    stack: (new Error).stack,
-    name: fn.name || '<anonymous>'
-  };
-
-  // add the exit listener only once to avoid listener leak warnings
-  if (mustCallChecks.length === 0) process.on('exit', runCallChecks);
-
-  mustCallChecks.push(context);
-
-  return function () {
-    context.actual++;
-    return fn.apply(this, arguments);
-  };
-};

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/pummel/test-http-upload-timeout.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/pummel/test-http-upload-timeout.js b/web/demos/package/node_modules/http-proxy/test/core/pummel/test-http-upload-timeout.js
deleted file mode 100644
index 74b458f..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/pummel/test-http-upload-timeout.js
+++ /dev/null
@@ -1,69 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// This tests setTimeout() by having multiple clients connecting and sending
-// data in random intervals. Clients are also randomly disconnecting until there
-// are no more clients left. If no false timeout occurs, this test has passed.
-var common = require('../common'),
-    assert = require('assert'),
-    http = require('http'),
-    server = http.createServer(),
-    connections = 0;
-
-server.on('request', function (req, res) {
-  req.socket.setTimeout(1000);
-  req.socket.on('timeout', function () {
-    throw new Error('Unexpected timeout');
-  });
-  req.on('end', function () {
-    connections--;
-    res.writeHead(200);
-    res.end('done\n');
-    if (connections == 0) {
-      server.close();
-    }
-  });
-});
-
-server.listen(common.PORT, '127.0.0.1', function () {
-  for (var i = 0; i < 10; i++) {
-    connections++;
-
-    setTimeout(function () {
-      var request = http.request({
-        port: common.PROXY_PORT,
-        method: 'POST',
-        path: '/'
-      });
-
-      function ping() {
-        var nextPing = (Math.random() * 900).toFixed();
-        if (nextPing > 600) {
-          request.end();
-          return;
-        }
-        request.write('ping');
-        setTimeout(ping, nextPing);
-      }
-      ping();
-    }, i * 50);
-  }
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/run
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/run b/web/demos/package/node_modules/http-proxy/test/core/run
deleted file mode 100755
index adec53b..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/run
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/usr/bin/env node
-/*
-  run.js: test runner for core tests
-
-  Copyright (c) 2011 Nodejitsu
-
-  Permission is hereby granted, free of charge, to any person obtaining
-  a copy of this software and associated documentation files (the
-  "Software"), to deal in the Software without restriction, including
-  without limitation the rights to use, copy, modify, merge, publish,
-  distribute, sublicense, and/or sell copies of the Software, and to
-  permit persons to whom the Software is furnished to do so, subject to
-  the following conditions:
-
-  The above copyright notice and this permission notice shall be
-  included in all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-  LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-  OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-*/
-
-var fs = require('fs'),
-    path = require('path'),
-    spawn = require('child_process').spawn,
-    async = require('async'),
-    colors = require('colors'),
-    optimist = require('optimist');
-
-optimist.argv.color && (colors.mode = optimist.argv.color);
-
-var testTimeout = 15000;
-var results = {};
-
-function runTest(test, callback) {
-  var child = spawn(path.join(__dirname, 'run-single'), [ test ]);
-
-  var killTimeout = setTimeout(function () {
-    child.kill();
-    console.log('  ' + path.basename(test).yellow + ' timed out'.red);
-  }, testTimeout);
-
-  child.on('exit', function (exitCode) {
-    clearTimeout(killTimeout);
-
-    console.log('  ' + ((exitCode) ? '✘'.red : '✔'.green) + ' ' +
-                path.basename(test) +
-                (exitCode ? (' (exit code: ' + exitCode + ')') : ''));
-    results[test] = { exitCode: exitCode };
-    callback();
-    //
-    // We don't want tests to be stopped after first failure, and that's what
-    // async does when it receives truthy value in callback.
-    //
-  });
-};
-
-var tests = process.argv.slice(2).filter(function (test) {
-  return test.substr(0, 2) != '--';
-});
-
-if (!tests.length) {
-  var pathPrefix = path.join(__dirname, 'simple');
-  tests = fs.readdirSync(pathPrefix).map(function (test) {
-    return path.join(pathPrefix, test);
-  });
-  //
-  // We only run simple tests by default.
-  //
-}
-
-console.log('Running tests:'.bold);
-async.forEachSeries(tests, runTest, function () {
-  var failed = [], ok = [];
-  for (var test in results) {
-    (results[test].exitCode != 0 ? failed : ok).push(test);
-  }
-
-  console.log('\nSummary:'.bold);
-  console.log(('  ' + ok.length + '\tpassed tests').green);
-  console.log(('  ' + failed.length + '\tfailed tests').red);
-});
-
-// vim:filetype=javascript
-

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/run-single
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/run-single b/web/demos/package/node_modules/http-proxy/test/core/run-single
deleted file mode 100755
index ae53588..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/run-single
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/usr/bin/env node
-/*
-  run-single.js: test runner for core tests
-
-  Copyright (c) 2011 Nodejitsu
-
-  Permission is hereby granted, free of charge, to any person obtaining
-  a copy of this software and associated documentation files (the
-  "Software"), to deal in the Software without restriction, including
-  without limitation the rights to use, copy, modify, merge, publish,
-  distribute, sublicense, and/or sell copies of the Software, and to
-  permit persons to whom the Software is furnished to do so, subject to
-  the following conditions:
-
-  The above copyright notice and this permission notice shall be
-  included in all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-  LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-  OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-*/
-
-//
-// Basic idea behind core test runner is to modify core tests as little as
-// possible. That's why we start up node-http-proxy here instead of embeeding
-// this code in tests.
-//
-// In most cases only modification to core tests you'll need is changing port
-// of http client to common.PROXY_PORT.
-//
-
-var path = require('path'),
-    spawn = require('child_process').spawn,
-    httpProxy = require('../../'),
-    common = require('./common');
-
-var test = process.argv[2],
-    testProcess;
-
-if (!test) {
-  return console.error('Need test to run');
-}
-
-console.log('Running test ' + test);
-
-var proxy = httpProxy.createServer(common.PORT, 'localhost');
-proxy.listen(common.PROXY_PORT);
-
-proxy.on('listening', function () {
-  console.log('Proxy server listening on ' + common.PROXY_PORT);
-  testProcess = spawn(process.argv[0], [ process.argv[2] ]);
-  testProcess.stdout.pipe(process.stdout);
-  testProcess.stderr.pipe(process.stderr);
-
-  testProcess.on('exit', function (code) {
-    process.exit(code);
-  });
-});
-
-process.on('SIGTERM', function () {
-  testProcess.kill();
-  process.exit(1);
-});
-
-// vim:filetype=javascript

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-chunked.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-chunked.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-chunked.js
deleted file mode 100644
index b1cbf0d..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-chunked.js
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-
-var UTF8_STRING = '南越国是前203年至前111年存在于岭南地区的一个国家,' +
-                  '国都位于番禺,疆域包括今天中国的广东、广西两省区的大部份地区,福建省、湖南、' +
-                  '贵州、云南的一小部份地区和越南的北部。南越国是秦朝灭亡后,' +
-                  '由南海郡尉赵佗于前203年起兵兼并桂林郡和象郡后建立。前196年和前179年,' +
-                  '南越国曾先后两次名义上臣属于西汉,成为西汉的“外臣”。前112年,' +
-                  '南越国末代君主赵建德与西汉发生战争,被汉武帝于前111年所灭。' +
-                  '南越国共存在93年,历经五代君主。南越国是岭南地区的第一个有记载的政权国家,' +
-                  '采用封建制和郡县制并存的制度,它的建立保证了秦末乱世岭南地区社会秩序的稳定,' +
-                  '有效的改善了岭南地区落后的政治、经济现状。';
-
-var server = http.createServer(function (req, res) {
-  res.writeHead(200, {'Content-Type': 'text/plain; charset=utf8'});
-  res.end(UTF8_STRING, 'utf8');
-});
-server.listen(common.PORT, function () {
-  var data = '';
-  var get = http.get({
-    path: '/',
-    host: 'localhost',
-    port: common.PROXY_PORT
-  }, function (x) {
-    x.setEncoding('utf8');
-    x.on('data', function (c) {data += c});
-    x.on('error', function (e) {
-      throw e;
-    });
-    x.on('end', function () {
-      assert.equal('string', typeof data);
-      console.log('here is the response:');
-      assert.equal(UTF8_STRING, data);
-      console.log(data);
-      server.close();
-    });
-  });
-  get.on('error', function (e) {throw e});
-  get.end();
-
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-abort.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-abort.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-abort.js
deleted file mode 100644
index 78d0a6f..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-abort.js
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-
-var clientAborts = 0;
-
-var server = http.Server(function (req, res) {
-  console.log('Got connection');
-  res.writeHead(200);
-  res.write('Working on it...');
-
-  // I would expect an error event from req or res that the client aborted
-  // before completing the HTTP request / response cycle, or maybe a new
-  // event like "aborted" or something.
-  req.on('aborted', function () {
-    clientAborts++;
-    console.log('Got abort ' + clientAborts);
-    if (clientAborts === N) {
-      console.log('All aborts detected, you win.');
-      server.close();
-    }
-  });
-
-  // since there is already clientError, maybe that would be appropriate,
-  // since "error" is magical
-  req.on('clientError', function () {
-    console.log('Got clientError');
-  });
-});
-
-var responses = 0;
-var N = http.Agent.defaultMaxSockets - 1;
-var requests = [];
-
-server.listen(common.PORT, function () {
-  console.log('Server listening.');
-
-  for (var i = 0; i < N; i++) {
-    console.log('Making client ' + i);
-    var options = { port: common.PROXY_PORT, path: '/?id=' + i };
-    var req = http.get(options, function (res) {
-      console.log('Client response code ' + res.statusCode);
-
-      if (++responses == N) {
-        console.log('All clients connected, destroying.');
-        requests.forEach(function (outReq) {
-          console.log('abort');
-          outReq.abort();
-        });
-      }
-    });
-
-    requests.push(req);
-  }
-});
-
-process.on('exit', function () {
-  assert.equal(N, clientAborts);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-abort2.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-abort2.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-abort2.js
deleted file mode 100644
index eef05fb..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-abort2.js
+++ /dev/null
@@ -1,41 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// libuv-broken
-
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-
-var server = http.createServer(function (req, res) {
-  res.end('Hello');
-});
-
-server.listen(common.PORT, function () {
-  var req = http.get({port: common.PROXY_PORT}, function (res) {
-    res.on('data', function (data) {
-      req.abort();
-      server.close();
-    });
-  });
-});
-

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-upload-buf.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-upload-buf.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-upload-buf.js
deleted file mode 100644
index 3b8e9ab..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-upload-buf.js
+++ /dev/null
@@ -1,74 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-
-var N = 1024;
-var bytesRecieved = 0;
-var server_req_complete = false;
-var client_res_complete = false;
-
-var server = http.createServer(function (req, res) {
-  assert.equal('POST', req.method);
-
-  req.on('data', function (chunk) {
-    bytesRecieved += chunk.length;
-  });
-
-  req.on('end', function () {
-    server_req_complete = true;
-    console.log('request complete from server');
-    res.writeHead(200, {'Content-Type': 'text/plain'});
-    res.write('hello\n');
-    res.end();
-  });
-});
-server.listen(common.PORT);
-
-server.on('listening', function () {
-  var req = http.request({
-    port: common.PROXY_PORT,
-    method: 'POST',
-    path: '/'
-  }, function (res) {
-    res.setEncoding('utf8');
-    res.on('data', function (chunk) {
-      console.log(chunk);
-    });
-    res.on('end', function () {
-      client_res_complete = true;
-      server.close();
-    });
-  });
-
-  req.write(new Buffer(N));
-  req.end();
-
-  common.error('client finished sending request');
-});
-
-process.on('exit', function () {
-  assert.equal(N, bytesRecieved);
-  assert.equal(true, server_req_complete);
-  assert.equal(true, client_res_complete);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-upload.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-upload.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-upload.js
deleted file mode 100644
index fef706f..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-client-upload.js
+++ /dev/null
@@ -1,77 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-
-var sent_body = '';
-var server_req_complete = false;
-var client_res_complete = false;
-
-var server = http.createServer(function (req, res) {
-  assert.equal('POST', req.method);
-  req.setEncoding('utf8');
-
-  req.on('data', function (chunk) {
-    console.log('server got: ' + JSON.stringify(chunk));
-    sent_body += chunk;
-  });
-
-  req.on('end', function () {
-    server_req_complete = true;
-    console.log('request complete from server');
-    res.writeHead(200, {'Content-Type': 'text/plain'});
-    res.write('hello\n');
-    res.end();
-  });
-});
-server.listen(common.PORT);
-
-server.on('listening', function () {
-  var req = http.request({
-    port: common.PROXY_PORT,
-    method: 'POST',
-    path: '/'
-  }, function (res) {
-    res.setEncoding('utf8');
-    res.on('data', function (chunk) {
-      console.log(chunk);
-    });
-    res.on('end', function () {
-      client_res_complete = true;
-      server.close();
-    });
-  });
-
-  req.write('1\n');
-  req.write('2\n');
-  req.write('3\n');
-  req.end();
-
-  common.error('client finished sending request');
-});
-
-process.on('exit', function () {
-  assert.equal('1\n2\n3\n', sent_body);
-  assert.equal(true, server_req_complete);
-  assert.equal(true, client_res_complete);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-contentLength0.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-contentLength0.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-contentLength0.js
deleted file mode 100644
index abc3747..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-contentLength0.js
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var http = require('http');
-
-// Simple test of Node's HTTP Client choking on a response
-// with a 'Content-Length: 0 ' response header.
-// I.E. a space character after the 'Content-Length' throws an `error` event.
-
-
-var s = http.createServer(function (req, res) {
-  res.writeHead(200, {'Content-Length': '0 '});
-  res.end();
-});
-s.listen(common.PORT, function () {
-
-  var request = http.request({ port: common.PROXY_PORT }, function (response) {
-    console.log('STATUS: ' + response.statusCode);
-    s.close();
-  });
-
-  request.end();
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-eof-on-connect.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-eof-on-connect.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-eof-on-connect.js
deleted file mode 100644
index d02ee6d..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-eof-on-connect.js
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var net = require('net');
-var http = require('http');
-
-// This is a regression test for http://github.com/ry/node/issues/#issue/44
-// It is separate from test-http-malformed-request.js because it is only
-// reproduceable on the first packet on the first connection to a server.
-
-var server = http.createServer(function (req, res) {});
-server.listen(common.PORT);
-
-server.on('listening', function () {
-  net.createConnection(common.PROXY_PORT).on('connect', function () {
-    this.destroy();
-  }).on('close', function () {
-    server.close();
-  });
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-extra-response.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-extra-response.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-extra-response.js
deleted file mode 100644
index a3d2746..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-extra-response.js
+++ /dev/null
@@ -1,86 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-var net = require('net');
-
-// If an HTTP server is broken and sends data after the end of the response,
-// node should ignore it and drop the connection.
-// Demos this bug: https://github.com/ry/node/issues/680
-
-var body = 'hello world\r\n';
-var fullResponse =
-    'HTTP/1.1 500 Internal Server Error\r\n' +
-    'Content-Length: ' + body.length + '\r\n' +
-    'Content-Type: text/plain\r\n' +
-    'Date: Fri + 18 Feb 2011 06:22:45 GMT\r\n' +
-    'Host: 10.20.149.2\r\n' +
-    'Access-Control-Allow-Credentials: true\r\n' +
-    'Server: badly broken/0.1 (OS NAME)\r\n' +
-    '\r\n' +
-    body;
-
-var gotResponse = false;
-
-
-var server = net.createServer(function (socket) {
-  var postBody = '';
-
-  socket.setEncoding('utf8');
-
-  socket.on('data', function (chunk) {
-    postBody += chunk;
-
-    if (postBody.indexOf('\r\n') > -1) {
-      socket.write(fullResponse);
-      // omg, I wrote the response twice, what a terrible HTTP server I am.
-      socket.end(fullResponse);
-    }
-  });
-});
-
-
-server.listen(common.PORT, function () {
-  http.get({ port: common.PROXY_PORT }, function (res) {
-    var buffer = '';
-    console.log('Got res code: ' + res.statusCode);
-
-    res.setEncoding('utf8');
-    res.on('data', function (chunk) {
-      buffer += chunk;
-    });
-
-    res.on('end', function () {
-      console.log('Response ended, read ' + buffer.length + ' bytes');
-      assert.equal(body, buffer);
-      server.close();
-      gotResponse = true;
-    });
-  });
-});
-
-
-process.on('exit', function () {
-  assert.ok(gotResponse);
-});
-

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-request.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-request.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-request.js
deleted file mode 100644
index e8c203e..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-request.js
+++ /dev/null
@@ -1,56 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-var util = require('util');
-
-
-var body = 'hello world\n';
-
-var server = http.createServer(function (req, res) {
-  common.error('req: ' + req.method);
-  res.writeHead(200, {'Content-Length': body.length});
-  res.end();
-  server.close();
-});
-
-var gotEnd = false;
-
-server.listen(common.PORT, function () {
-  var request = http.request({
-    port: common.PROXY_PORT,
-    method: 'HEAD',
-    path: '/'
-  }, function (response) {
-    common.error('response start');
-    response.on('end', function () {
-      common.error('response end');
-      gotEnd = true;
-    });
-  });
-  request.end();
-});
-
-process.on('exit', function () {
-  assert.ok(gotEnd);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-response-has-no-body-end.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-response-has-no-body-end.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-response-has-no-body-end.js
deleted file mode 100644
index 6d89bee..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-response-has-no-body-end.js
+++ /dev/null
@@ -1,61 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// libuv-broken
-
-
-var common = require('../common');
-var assert = require('assert');
-
-var http = require('http');
-
-// This test is to make sure that when the HTTP server
-// responds to a HEAD request with data to res.end,
-// it does not send any body.
-
-var server = http.createServer(function (req, res) {
-  res.writeHead(200);
-  res.end('FAIL'); // broken: sends FAIL from hot path.
-});
-server.listen(common.PORT);
-
-var responseComplete = false;
-
-server.on('listening', function () {
-  var req = http.request({
-    port: common.PROXY_PORT,
-    method: 'HEAD',
-    path: '/'
-  }, function (res) {
-    common.error('response');
-    res.on('end', function () {
-      common.error('response end');
-      server.close();
-      responseComplete = true;
-    });
-  });
-  common.error('req');
-  req.end();
-});
-
-process.on('exit', function () {
-  assert.ok(responseComplete);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-response-has-no-body.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-response-has-no-body.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-response-has-no-body.js
deleted file mode 100644
index aa7a281..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-head-response-has-no-body.js
+++ /dev/null
@@ -1,58 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-
-var http = require('http');
-
-// This test is to make sure that when the HTTP server
-// responds to a HEAD request, it does not send any body.
-// In this case it was sending '0\r\n\r\n'
-
-var server = http.createServer(function (req, res) {
-  res.writeHead(200); // broken: defaults to TE chunked
-  res.end();
-});
-server.listen(common.PORT);
-
-var responseComplete = false;
-
-server.on('listening', function () {
-  var req = http.request({
-    port: common.PROXY_PORT,
-    method: 'HEAD',
-    path: '/'
-  }, function (res) {
-    common.error('response');
-    res.on('end', function () {
-      common.error('response end');
-      server.close();
-      responseComplete = true;
-    });
-  });
-  common.error('req');
-  req.end();
-});
-
-process.on('exit', function () {
-  assert.ok(responseComplete);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-host-headers.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-host-headers.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-host-headers.js
deleted file mode 100644
index 2dae118..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-host-headers.js
+++ /dev/null
@@ -1,101 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// libuv-broken
-
-
-var http = require('http'),
-    common = require('../common'),
-    assert = require('assert'),
-    httpServer = http.createServer(reqHandler);
-
-function reqHandler(req, res) {
-  console.log('Got request: ' + req.headers.host + ' ' + req.url);
-  if (req.url === '/setHostFalse5') {
-    assert.equal(req.headers.host, undefined);
-  } else {
-    assert.equal(req.headers.host, 'localhost:' + common.PROXY_PORT,
-                 'Wrong host header for req[' + req.url + ']: ' +
-                 req.headers.host);
-  }
-  res.writeHead(200, {});
-  //process.nextTick(function () { res.end('ok'); });
-  res.end('ok');
-}
-
-function thrower(er) {
-  throw er;
-}
-
-testHttp();
-
-function testHttp() {
-
-  console.log('testing http on port ' + common.PROXY_PORT + ' (proxied to ' +
-              common.PORT + ')');
-
-  var counter = 0;
-
-  function cb() {
-    counter--;
-    console.log('back from http request. counter = ' + counter);
-    if (counter === 0) {
-      httpServer.close();
-    }
-  }
-
-  httpServer.listen(common.PORT, function (er) {
-    console.error('listening on ' + common.PORT);
-
-    if (er) throw er;
-
-    http.get({ method: 'GET',
-      path: '/' + (counter++),
-      host: 'localhost',
-      //agent: false,
-      port: common.PROXY_PORT }, cb).on('error', thrower);
-
-    http.request({ method: 'GET',
-      path: '/' + (counter++),
-      host: 'localhost',
-      //agent: false,
-      port: common.PROXY_PORT }, cb).on('error', thrower).end();
-
-    http.request({ method: 'POST',
-      path: '/' + (counter++),
-      host: 'localhost',
-      //agent: false,
-      port: common.PROXY_PORT }, cb).on('error', thrower).end();
-
-    http.request({ method: 'PUT',
-      path: '/' + (counter++),
-      host: 'localhost',
-      //agent: false,
-      port: common.PROXY_PORT }, cb).on('error', thrower).end();
-
-    http.request({ method: 'DELETE',
-      path: '/' + (counter++),
-      host: 'localhost',
-      //agent: false,
-      port: common.PROXY_PORT }, cb).on('error', thrower).end();
-  });
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-many-keep-alive-connections.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-many-keep-alive-connections.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-many-keep-alive-connections.js
deleted file mode 100644
index 6b79619..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-many-keep-alive-connections.js
+++ /dev/null
@@ -1,68 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-
-var expected = 10000;
-var responses = 0;
-var requests = 0;
-var connection;
-
-var server = http.Server(function (req, res) {
-  requests++;
-  assert.equal(req.connection, connection);
-  res.writeHead(200);
-  res.end('hello world\n');
-});
-
-server.once('connection', function (c) {
-  connection = c;
-});
-
-server.listen(common.PORT, function () {
-  var callee = arguments.callee;
-  var request = http.get({
-    port: common.PROXY_PORT,
-    path: '/',
-    headers: {
-      'Connection': 'Keep-alive'
-    }
-  }, function (res) {
-    res.on('end', function () {
-      if (++responses < expected) {
-        callee();
-      } else {
-        process.exit();
-      }
-    });
-  }).on('error', function (e) {
-    console.log(e.message);
-    process.exit(1);
-  });
-  request.agent.maxSockets = 1;
-});
-
-process.on('exit', function () {
-  assert.equal(expected, responses);
-  assert.equal(expected, requests);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-multi-line-headers.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-multi-line-headers.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-multi-line-headers.js
deleted file mode 100644
index e0eeb2c..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-multi-line-headers.js
+++ /dev/null
@@ -1,59 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-
-var http = require('http');
-var net = require('net');
-
-var gotResponse = false;
-
-var server = net.createServer(function (conn) {
-  var body = 'Yet another node.js server.';
-
-  var response =
-      'HTTP/1.1 200 OK\r\n' +
-      'Connection: close\r\n' +
-      'Content-Length: ' + body.length + '\r\n' +
-      'Content-Type: text/plain;\r\n' +
-      ' x-unix-mode=0600;\r\n' +
-      ' name=\"hello.txt\"\r\n' +
-      '\r\n' +
-      body;
-
-  conn.write(response, function () {
-    conn.destroy();
-    server.close();
-  });
-});
-
-server.listen(common.PORT, function () {
-  http.get({host: '127.0.0.1', port: common.PROXY_PORT}, function (res) {
-    assert.equal(res.headers['content-type'],
-                 'text/plain;x-unix-mode=0600;name="hello.txt"');
-    gotResponse = true;
-  });
-});
-
-process.on('exit', function () {
-  assert.ok(gotResponse);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-proxy.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-proxy.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-proxy.js
deleted file mode 100644
index fdddb3c..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-proxy.js
+++ /dev/null
@@ -1,109 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-var url = require('url');
-
-var PROXY_PORT = common.PORT;
-var BACKEND_PORT = common.PORT + 1;
-
-var cookies = [
-  'session_token=; path=/; expires=Sun, 15-Sep-2030 13:48:52 GMT',
-  'prefers_open_id=; path=/; expires=Thu, 01-Jan-1970 00:00:00 GMT'
-];
-
-var headers = {'content-type': 'text/plain',
-                'set-cookie': cookies,
-                'hello': 'world' };
-
-var backend = http.createServer(function (req, res) {
-  common.debug('backend request');
-  res.writeHead(200, headers);
-  res.write('hello world\n');
-  res.end();
-});
-
-var proxy = http.createServer(function (req, res) {
-  common.debug('proxy req headers: ' + JSON.stringify(req.headers));
-  var proxy_req = http.get({
-    port: BACKEND_PORT,
-    path: url.parse(req.url).pathname
-  }, function (proxy_res) {
-
-    common.debug('proxy res headers: ' + JSON.stringify(proxy_res.headers));
-
-    assert.equal('world', proxy_res.headers['hello']);
-    assert.equal('text/plain', proxy_res.headers['content-type']);
-    assert.deepEqual(cookies, proxy_res.headers['set-cookie']);
-
-    res.writeHead(proxy_res.statusCode, proxy_res.headers);
-
-    proxy_res.on('data', function (chunk) {
-      res.write(chunk);
-    });
-
-    proxy_res.on('end', function () {
-      res.end();
-      common.debug('proxy res');
-    });
-  });
-});
-
-var body = '';
-
-var nlistening = 0;
-function startReq() {
-  nlistening++;
-  if (nlistening < 2) return;
-
-  var client = http.get({
-    port: common.PROXY_PORT,
-    path: '/test'
-  }, function (res) {
-    common.debug('got res');
-    assert.equal(200, res.statusCode);
-
-    assert.equal('world', res.headers['hello']);
-    assert.equal('text/plain', res.headers['content-type']);
-    assert.deepEqual(cookies, res.headers['set-cookie']);
-
-    res.setEncoding('utf8');
-    res.on('data', function (chunk) { body += chunk; });
-    res.on('end', function () {
-      proxy.close();
-      backend.close();
-      common.debug('closed both');
-    });
-  });
-  common.debug('client req');
-}
-
-common.debug('listen proxy');
-proxy.listen(PROXY_PORT, startReq);
-
-common.debug('listen backend');
-backend.listen(BACKEND_PORT, startReq);
-
-process.on('exit', function () {
-  assert.equal(body, 'hello world\n');
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-response-close.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-response-close.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-response-close.js
deleted file mode 100644
index b92abb0..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-response-close.js
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-
-var gotEnd = false;
-
-var server = http.createServer(function (req, res) {
-  res.writeHead(200);
-  res.write('a');
-
-  req.on('close', function () {
-    console.error('aborted');
-    gotEnd = true;
-  });
-});
-server.listen(common.PORT);
-
-server.on('listening', function () {
-  console.error('make req');
-  http.get({
-    port: common.PROXY_PORT
-  }, function (res) {
-    console.error('got res');
-    res.on('data', function (data) {
-      console.error('destroy res');
-      res.destroy();
-      server.close();
-    });
-  });
-});
-
-process.on('exit', function () {
-  assert.ok(gotEnd);
-});

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-server-multiheaders.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-server-multiheaders.js b/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-server-multiheaders.js
deleted file mode 100644
index 6a5b8be..0000000
--- a/web/demos/package/node_modules/http-proxy/test/core/simple/test-http-server-multiheaders.js
+++ /dev/null
@@ -1,59 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// Verify that the HTTP server implementation handles multiple instances
-// of the same header as per RFC2616: joining the handful of fields by ', '
-// that support it, and dropping duplicates for other fields.
-
-var common = require('../common');
-var assert = require('assert');
-var http = require('http');
-
-var srv = http.createServer(function (req, res) {
-  assert.equal(req.headers.accept, 'abc, def, ghijklmnopqrst');
-  assert.equal(req.headers.host, 'foo');
-  assert.equal(req.headers['x-foo'], 'bingo');
-  assert.equal(req.headers['x-bar'], 'banjo, bango');
-
-  res.writeHead(200, {'Content-Type' : 'text/plain'});
-  res.end('EOF');
-
-  srv.close();
-});
-
-srv.listen(common.PORT, function () {
-  http.get({
-    host: 'localhost',
-    port: common.PROXY_PORT,
-    path: '/',
-    headers: [
-      ['accept', 'abc'],
-      ['accept', 'def'],
-      ['Accept', 'ghijklmnopqrst'],
-      ['host', 'foo'],
-      ['Host', 'bar'],
-      ['hOst', 'baz'],
-      ['x-foo', 'bingo'],
-      ['x-bar', 'banjo'],
-      ['x-bar', 'bango']
-    ]
-  });
-});