[CCSDK-28] populated the seed code for dgbuilder
[ccsdk/distribution.git] / dgbuilder / core_nodes / deprecated / 90-httpget.js
diff --git a/dgbuilder/core_nodes/deprecated/90-httpget.js b/dgbuilder/core_nodes/deprecated/90-httpget.js
new file mode 100644 (file)
index 0000000..63e16b9
--- /dev/null
@@ -0,0 +1,53 @@
+/**
+ * Copyright 2013 IBM Corp.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ **/
+
+var RED = require(process.env.NODE_RED_HOME+"/red/red");
+
+function HttpGet(n) {
+    RED.nodes.createNode(this,n);
+    this.warn("This node has been deprecated and will be deleted in a future release. Please update your flow to use the 'http request' node.");
+    this.baseurl = n.baseurl || "";
+    this.append = n.append || "";
+    var node = this;
+    if (this.baseurl.substring(0,5) === "https") { var http = require("https"); }
+    else { var http = require("http"); }
+    this.on("input", function(msg) {
+        msg._payload = msg.payload;
+        //util.log("[httpget] "+this.baseurl+msg.payload+this.append);
+        http.get(this.baseurl+msg.payload+this.append, function(res) {
+            node.log("Http response: " + res.statusCode);
+            msg.rc = res.statusCode;
+            msg.payload = "";
+            if ((msg.rc != 200) && (msg.rc != 404)) {
+                node.send(msg);
+            }
+            res.setEncoding('utf8');
+            res.on('data', function(chunk) {
+                msg.payload += chunk;
+            });
+            res.on('end', function() {
+                node.send(msg);
+            });
+        }).on('error', function(e) {
+            //node.error(e);
+            msg.rc = 503;
+            msg.payload = e;
+            node.send(msg);
+        });
+    });
+}
+
+RED.nodes.registerType("httpget",HttpGet);