1
0
mirror of https://github.com/node-red/node-red.git synced 2023-10-10 13:36:53 +02:00

update sample node to reflect better way to close nodes.

This commit is contained in:
Dave C-J 2013-10-10 15:33:46 +01:00
parent 80b76fba88
commit c5da163d50
2 changed files with 16 additions and 14 deletions

View File

@ -17,6 +17,8 @@
<!-- Sample html file that corresponds to the 99-sample.js file --> <!-- Sample html file that corresponds to the 99-sample.js file -->
<!-- This creates and configures the onscreen elements of the node --> <!-- This creates and configures the onscreen elements of the node -->
<!-- If you use this as a template, replace IBM Corp. with your own name. -->
<!-- First, the content of the edit dialog is defined. --> <!-- First, the content of the edit dialog is defined. -->
<script type="text/x-red" data-template-name="sample"> <script type="text/x-red" data-template-name="sample">
@ -24,7 +26,7 @@
<!-- Each of the following divs creates a field in the edit dialog. --> <!-- Each of the following divs creates a field in the edit dialog. -->
<!-- Generally, there should be an input for each property of the node. --> <!-- Generally, there should be an input for each property of the node. -->
<!-- The for and id attributes identify the corresponding property --> <!-- The for and id attributes identify the corresponding property -->
<!-- (with the 'node-input-' prefix). --> <!-- (with the 'node-input-' prefix). -->
<!-- The available icon classes are defined in Twitter Bootstrap --> <!-- The available icon classes are defined in Twitter Bootstrap -->
<div class="form-row"> <div class="form-row">
@ -38,7 +40,6 @@
<label for="node-input-name"><i class="icon-tag"></i> Name</label> <label for="node-input-name"><i class="icon-tag"></i> Name</label>
<input type="text" id="node-input-name" placeholder="Name"> <input type="text" id="node-input-name" placeholder="Name">
</div> </div>
</script> </script>

View File

@ -14,38 +14,39 @@
* limitations under the License. * limitations under the License.
**/ **/
// If you use this as a template, replace IBM Corp. with your own name.
// Sample Node-RED node file // Sample Node-RED node file
// Require main module // Require main module
var RED = require("../../red/red"); var RED = require("../../red/red");
// The main node definition - most things happen in here // The main node definition - most things happen in here
function SampleNode(n) { function SampleNode(n) {
// Create a RED node // Create a RED node
RED.nodes.createNode(this,n); RED.nodes.createNode(this,n);
// Store local copies of the node configuration (as defined in the .html) // Store local copies of the node configuration (as defined in the .html)
this.topic = n.topic; this.topic = n.topic;
// Do whatever you need to do in here - declare callbacks etc // Do whatever you need to do in here - declare callbacks etc
// Note: this sample doesn't do anything much - it will only send // Note: this sample doesn't do anything much - it will only send
// this message once at startup... // this message once at startup...
// Look at other real nodes for some better ideas of what to do.... // Look at other real nodes for some better ideas of what to do....
var msg = {}; var msg = {};
msg.topic = node.topic; msg.topic = this.topic;
msg.payload = "Hello world !" msg.payload = "Hello world !"
// send out the message to the rest of the workspace. // send out the message to the rest of the workspace.
this.send(msg); this.send(msg);
this.on("close", function() {
// Called when the node is shutdown - eg on redeploy.
// Allows ports to be closed, connections dropped etc.
// eg: this.client.disconnect();
});
} }
// Register the node by name. This must be called before overriding any of the // Register the node by name. This must be called before overriding any of the
// Node functions. // Node functions.
RED.nodes.registerType("sample",SampleNode); RED.nodes.registerType("sample",SampleNode);
SampleNode.prototype.close = function() {
// Called when the node is shutdown - eg on redeploy.
// Allows ports to be closed, connections dropped etc.
// eg: this.client.disconnect();
}