Last active
February 17, 2016 18:41
-
-
Save jskrzypek/830d606fd8efc9618e08 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # In the graph we first need to define the nodes and the connections between them | |
| Group(core/Group) OUT -> IN FilesystemConnection(server/FilesystemConnection) | |
| FilesystemConnection() CONNECTION -> CONNECTION CsvSource(server/CsvSource) | |
| CsvSource() OUT -> IN Display(core/Output) | |
| Group2(core/Group) OUT -> IN FilesystemConnection2(server/FilesystemConnection) | |
| FilesystemConnection2() CONNECTION -> CONNECTION CsvSource2(server/CsvSource) | |
| CsvSource2() OUT -> IN Display2(core/Output) | |
| # Start off the graph by sending a filename to the file reader | |
| 'NUCLEAR' -> GROUP Group() | |
| 'NODAL' -> GROUP Group2() | |
| 'samples/tables/nuclear.csv' -> IN Group() | |
| 'samples/tables/nodal.csv' -> IN Group2() |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 'use strict'; | |
| var noflo = require('noflo'); | |
| var _ = require('lodash'); | |
| var csv = require('fast-csv'); | |
| exports.getComponent = function() { | |
| var c = new noflo.Component(); | |
| c.description = 'Readfile using wire pattern'; | |
| c.inPorts.add('connection', { | |
| datatype: 'object', | |
| description: 'Source file connection' | |
| }); | |
| c.outPorts.add('out', { | |
| datatype: 'object' | |
| }); | |
| c.outPorts.add('error', { | |
| datatype: 'object' | |
| }); | |
| var readCsv = function(stream, onData, onEnd) { | |
| return csv.fromStream(stream, { | |
| headers: true, | |
| delimiter: ',', | |
| ignoreEmpty: true, | |
| trim: true | |
| }) | |
| .on('data', onData) | |
| .on('end', onEnd); | |
| }; | |
| noflo.helpers.WirePattern(c, { | |
| 'in': ['connection'], | |
| out: 'out', | |
| async: false, | |
| error: 'error', | |
| forwardGroups: false | |
| }, function(connection, groups, out) { | |
| _.each(groups, function(group) { | |
| out.beginGroup(group); | |
| }); | |
| readCsv(connection, function onData(row) { | |
| out.send(row); | |
| }, function onEnd(row) { | |
| _.each(groups, function(group) { | |
| out.endGroup(group); | |
| }); | |
| }); | |
| }); | |
| return c; | |
| }; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| DATA -> ENCODING FilesystemConnection() CONN | |
| DATA -> ENCODING FilesystemConnection() DATA | |
| DATA -> ENCODING FilesystemConnection() DISC | |
| DATA -> ENCODING FilesystemConnection2() CONN | |
| DATA -> ENCODING FilesystemConnection2() DATA | |
| DATA -> ENCODING FilesystemConnection2() DISC | |
| DATA -> GROUP Group() CONN | |
| DATA -> GROUP Group() DATA | |
| DATA -> GROUP Group() DISC | |
| DATA -> GROUP Group2() CONN | |
| DATA -> GROUP Group2() DATA | |
| DATA -> GROUP Group2() DISC | |
| DATA -> IN Group() CONN | |
| Group() OUT -> IN FilesystemConnection() CONN | |
| Group() OUT -> IN FilesystemConnection() < NUCLEAR | |
| DATA -> IN Group() DATA | |
| Group() OUT -> IN FilesystemConnection() DATA | |
| DATA -> IN Group() DISC | |
| Group() OUT -> IN FilesystemConnection() > NUCLEAR | |
| Group() OUT -> IN FilesystemConnection() DISC | |
| DATA -> IN Group2() CONN | |
| Group2() OUT -> IN FilesystemConnection2() CONN | |
| Group2() OUT -> IN FilesystemConnection2() < NODAL | |
| DATA -> IN Group2() DATA | |
| Group2() OUT -> IN FilesystemConnection2() DATA | |
| DATA -> IN Group2() DISC | |
| Group2() OUT -> IN FilesystemConnection2() > NODAL | |
| Group2() OUT -> IN FilesystemConnection2() DISC | |
| FilesystemConnection() CONNECTION -> CONNECTION CsvSource() CONN | |
| FilesystemConnection() CONNECTION -> CONNECTION CsvSource() < NUCLEAR | |
| FilesystemConnection() CONNECTION -> CONNECTION CsvSource() < samples/tables/nuclear.csv | |
| FilesystemConnection() CONNECTION -> CONNECTION CsvSource() DATA | |
| CsvSource() OUT -> IN Display() CONN | |
| CsvSource() OUT -> IN Display() < NUCLEAR | |
| CsvSource() OUT -> IN Display() < samples/tables/nuclear.csv | |
| FilesystemConnection() CONNECTION -> CONNECTION CsvSource() > samples/tables/nuclear.csv | |
| FilesystemConnection() CONNECTION -> CONNECTION CsvSource() > NUCLEAR | |
| FilesystemConnection() CONNECTION -> CONNECTION CsvSource() DISC | |
| CsvSource() OUT -> IN Display() DISC | |
| FilesystemConnection2() CONNECTION -> CONNECTION CsvSource2() CONN | |
| FilesystemConnection2() CONNECTION -> CONNECTION CsvSource2() < NODAL | |
| FilesystemConnection2() CONNECTION -> CONNECTION CsvSource2() < samples/tables/nodal.csv | |
| FilesystemConnection2() CONNECTION -> CONNECTION CsvSource2() DATA | |
| CsvSource2() OUT -> IN Display2() CONN | |
| CsvSource2() OUT -> IN Display2() < NODAL | |
| CsvSource2() OUT -> IN Display2() < samples/tables/nodal.csv | |
| FilesystemConnection2() CONNECTION -> CONNECTION CsvSource2() > samples/tables/nodal.csv | |
| FilesystemConnection2() CONNECTION -> CONNECTION CsvSource2() > NODAL | |
| FilesystemConnection2() CONNECTION -> CONNECTION CsvSource2() DISC | |
| CsvSource2() OUT -> IN Display2() DISC | |
| CsvSource() OUT -> IN Display() CONN | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '1', | |
| cost: '460.05', | |
| date: '68.58', | |
| t1: '14', | |
| t2: '46', | |
| cap: '687', | |
| pr: '0', | |
| ne: '1', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '14', | |
| pt: '0' } | |
| CsvSource2() OUT -> IN Display2() CONN | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '1', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '2', | |
| cost: '452.99', | |
| date: '67.33', | |
| t1: '10', | |
| t2: '73', | |
| cap: '1065', | |
| pr: '0', | |
| ne: '0', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '1', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '3', | |
| cost: '443.22', | |
| date: '67.33', | |
| t1: '10', | |
| t2: '85', | |
| cap: '1065', | |
| pr: '1', | |
| ne: '0', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '1', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '4', | |
| cost: '652.32', | |
| date: '68', | |
| t1: '11', | |
| t2: '67', | |
| cap: '1065', | |
| pr: '0', | |
| ne: '1', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '12', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '5', | |
| cost: '642.23', | |
| date: '68', | |
| t1: '11', | |
| t2: '78', | |
| cap: '1065', | |
| pr: '1', | |
| ne: '1', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '12', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '6', | |
| cost: '345.39', | |
| date: '67.92', | |
| t1: '13', | |
| t2: '51', | |
| cap: '514', | |
| pr: '0', | |
| ne: '1', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '3', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '7', | |
| cost: '272.37', | |
| date: '68.17', | |
| t1: '12', | |
| t2: '50', | |
| cap: '822', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '5', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '8', | |
| cost: '317.21', | |
| date: '68.42', | |
| t1: '14', | |
| t2: '59', | |
| cap: '457', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '1', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '9', | |
| cost: '457.12', | |
| date: '68.42', | |
| t1: '15', | |
| t2: '55', | |
| cap: '822', | |
| pr: '1', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '5', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '10', | |
| cost: '690.19', | |
| date: '68.33', | |
| t1: '12', | |
| t2: '71', | |
| cap: '792', | |
| pr: '0', | |
| ne: '1', | |
| ct: '1', | |
| bw: '1', | |
| 'cum.n': '2', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '11', | |
| cost: '350.63', | |
| date: '68.58', | |
| t1: '12', | |
| t2: '64', | |
| cap: '560', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '3', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '12', | |
| cost: '402.59', | |
| date: '68.75', | |
| t1: '13', | |
| t2: '47', | |
| cap: '790', | |
| pr: '0', | |
| ne: '1', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '6', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '13', | |
| cost: '412.18', | |
| date: '68.42', | |
| t1: '15', | |
| t2: '62', | |
| cap: '530', | |
| pr: '0', | |
| ne: '0', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '2', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '14', | |
| cost: '495.58', | |
| date: '68.92', | |
| t1: '17', | |
| t2: '52', | |
| cap: '1050', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '7', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '15', | |
| cost: '394.36', | |
| date: '68.92', | |
| t1: '13', | |
| t2: '65', | |
| cap: '850', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '1', | |
| 'cum.n': '16', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '16', | |
| cost: '423.32', | |
| date: '68.42', | |
| t1: '11', | |
| t2: '67', | |
| cap: '778', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '3', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '17', | |
| cost: '712.27', | |
| date: '69.5', | |
| t1: '18', | |
| t2: '60', | |
| cap: '845', | |
| pr: '0', | |
| ne: '1', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '17', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '18', | |
| cost: '289.66', | |
| date: '68.42', | |
| t1: '15', | |
| t2: '76', | |
| cap: '530', | |
| pr: '1', | |
| ne: '0', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '2', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '19', | |
| cost: '881.24', | |
| date: '69.17', | |
| t1: '15', | |
| t2: '67', | |
| cap: '1090', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '1', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '20', | |
| cost: '490.88', | |
| date: '68.92', | |
| t1: '16', | |
| t2: '59', | |
| cap: '1050', | |
| pr: '1', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '8', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '21', | |
| cost: '567.79', | |
| date: '68.75', | |
| t1: '11', | |
| t2: '70', | |
| cap: '913', | |
| pr: '0', | |
| ne: '0', | |
| ct: '1', | |
| bw: '1', | |
| 'cum.n': '15', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '22', | |
| cost: '665.99', | |
| date: '70.92', | |
| t1: '22', | |
| t2: '57', | |
| cap: '828', | |
| pr: '1', | |
| ne: '1', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '20', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '23', | |
| cost: '621.45', | |
| date: '69.67', | |
| t1: '16', | |
| t2: '59', | |
| cap: '786', | |
| pr: '0', | |
| ne: '0', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '18', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '24', | |
| cost: '608.8', | |
| date: '70.08', | |
| t1: '19', | |
| t2: '58', | |
| cap: '821', | |
| pr: '1', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '3', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '25', | |
| cost: '473.64', | |
| date: '70.42', | |
| t1: '19', | |
| t2: '44', | |
| cap: '538', | |
| pr: '0', | |
| ne: '0', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '19', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '26', | |
| cost: '697.14', | |
| date: '71.08', | |
| t1: '20', | |
| t2: '57', | |
| cap: '1130', | |
| pr: '0', | |
| ne: '0', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '21', | |
| pt: '0' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '27', | |
| cost: '207.51', | |
| date: '67.25', | |
| t1: '13', | |
| t2: '63', | |
| cap: '745', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '8', | |
| pt: '1' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '28', | |
| cost: '288.48', | |
| date: '67.17', | |
| t1: '9', | |
| t2: '48', | |
| cap: '821', | |
| pr: '0', | |
| ne: '0', | |
| ct: '1', | |
| bw: '0', | |
| 'cum.n': '7', | |
| pt: '1' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '29', | |
| cost: '284.88', | |
| date: '67.83', | |
| t1: '12', | |
| t2: '63', | |
| cap: '886', | |
| pr: '0', | |
| ne: '0', | |
| ct: '0', | |
| bw: '1', | |
| 'cum.n': '11', | |
| pt: '1' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '30', | |
| cost: '280.36', | |
| date: '67.83', | |
| t1: '12', | |
| t2: '71', | |
| cap: '886', | |
| pr: '1', | |
| ne: '0', | |
| ct: '0', | |
| bw: '1', | |
| 'cum.n': '11', | |
| pt: '1' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '31', | |
| cost: '217.38', | |
| date: '67.25', | |
| t1: '13', | |
| t2: '72', | |
| cap: '745', | |
| pr: '1', | |
| ne: '0', | |
| ct: '0', | |
| bw: '0', | |
| 'cum.n': '8', | |
| pt: '1' } | |
| CsvSource() OUT -> IN Display() DATA | |
| { '': '32', | |
| cost: '270.71', | |
| date: '67.83', | |
| t1: '7', | |
| t2: '80', | |
| cap: '886', | |
| pr: '1', | |
| ne: '0', | |
| ct: '0', | |
| bw: '1', | |
| 'cum.n': '11', | |
| pt: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '2', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '3', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '4', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '5', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '6', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '7', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '8', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '9', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '10', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '11', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '12', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '13', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '1', | |
| grade: '1', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '14', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '1', | |
| grade: '1', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '15', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '1', | |
| grade: '1', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '16', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '1', | |
| grade: '1', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '17', | |
| m: '1', | |
| r: '1', | |
| aged: '1', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '18', | |
| m: '1', | |
| r: '1', | |
| aged: '1', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '19', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '20', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '21', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '22', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '23', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '24', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '25', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '26', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '27', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '28', | |
| m: '1', | |
| r: '1', | |
| aged: '1', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '29', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '30', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '31', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '32', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '33', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '34', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '35', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '36', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '37', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '1', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '38', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '1', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '39', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '40', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '1', | |
| grade: '0', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '41', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '0', | |
| grade: '1', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '42', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '1', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '43', | |
| m: '1', | |
| r: '1', | |
| aged: '1', | |
| stage: '1', | |
| grade: '1', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '44', | |
| m: '1', | |
| r: '1', | |
| aged: '1', | |
| stage: '1', | |
| grade: '0', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '45', | |
| m: '1', | |
| r: '1', | |
| aged: '1', | |
| stage: '0', | |
| grade: '1', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '46', | |
| m: '1', | |
| r: '1', | |
| aged: '1', | |
| stage: '0', | |
| grade: '0', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '47', | |
| m: '1', | |
| r: '0', | |
| aged: '1', | |
| stage: '0', | |
| grade: '1', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '48', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '1', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '49', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '1', | |
| grade: '1', | |
| xray: '0', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '50', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '1', | |
| grade: '0', | |
| xray: '1', | |
| acid: '0' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '51', | |
| m: '1', | |
| r: '1', | |
| aged: '0', | |
| stage: '0', | |
| grade: '1', | |
| xray: '0', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '52', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '1', | |
| acid: '1' } | |
| CsvSource2() OUT -> IN Display2() DATA | |
| { '': '53', | |
| m: '1', | |
| r: '0', | |
| aged: '0', | |
| stage: '0', | |
| grade: '0', | |
| xray: '1', | |
| acid: '0' } | |
| CsvSource() OUT -> IN Display() > samples/tables/nuclear.csv | |
| CsvSource() OUT -> IN Display() > NUCLEAR | |
| CsvSource2() OUT -> IN Display2() > samples/tables/nodal.csv | |
| CsvSource2() OUT -> IN Display2() > NODAL |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 'use strict'; | |
| var noflo = require('noflo'); | |
| var fs = require('fs'); | |
| var DEFAULT_ENCODING = 'utf-8'; | |
| exports.getComponent = function() { | |
| var c = new noflo.Component(); | |
| c.state = { | |
| encoding: DEFAULT_ENCODING | |
| }; | |
| c.description = 'Readfile using wire pattern'; | |
| c.inPorts.add('in', { | |
| datatype: 'string', | |
| description: 'Source file path' | |
| }); | |
| c.inPorts.add('encoding', { | |
| datatype: 'string', | |
| description: 'File encoding', | |
| default: DEFAULT_ENCODING | |
| }); | |
| c.outPorts.add('connection', { | |
| datatype: 'object' | |
| }); | |
| c.outPorts.add('error', { | |
| datatype: 'object' | |
| }); | |
| // TODO: issue with defaulted (non required) params in wirepattern not being available in the process function | |
| c.inPorts.encoding.on('data', function(value) { | |
| c.state.encoding = value; | |
| }); | |
| noflo.helpers.WirePattern(c, { | |
| 'in': ['in'], | |
| out: 'connection', | |
| error: 'error', | |
| async: true, | |
| forwardGroups: true | |
| }, function(path, groups, out, callback) { | |
| var connection = fs.createReadStream(path, c.state); | |
| connection.once('error', function (err) { | |
| c.fail(err, [path]); | |
| }); | |
| connection.on('open', function () { | |
| out.beginGroup(path); | |
| out.send(connection); | |
| out.endGroup(); | |
| callback(); | |
| }); | |
| }); | |
| return c; | |
| }; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| m | r | aged | stage | grade | xray | acid | ||
|---|---|---|---|---|---|---|---|---|
| 1 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | |
| 2 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | |
| 3 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | |
| 4 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | |
| 5 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | |
| 6 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | |
| 7 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | |
| 8 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | |
| 9 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | |
| 10 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | |
| 11 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | |
| 12 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | |
| 13 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | |
| 14 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | |
| 15 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | |
| 16 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | |
| 17 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | |
| 18 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | |
| 19 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | |
| 20 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | |
| 21 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 22 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 23 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 24 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 25 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | |
| 26 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | |
| 27 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | |
| 28 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | |
| 29 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | |
| 30 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | |
| 31 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | |
| 32 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | |
| 33 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | |
| 34 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | |
| 35 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | |
| 36 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | |
| 37 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | |
| 38 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | |
| 39 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | |
| 40 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | |
| 41 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | |
| 42 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | |
| 43 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | |
| 44 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | |
| 45 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | |
| 46 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | |
| 47 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | |
| 48 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | |
| 49 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | |
| 50 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | |
| 51 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | |
| 52 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | |
| 53 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| cost | date | t1 | t2 | cap | pr | ne | ct | bw | cum.n | pt | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 460.05 | 68.58 | 14 | 46 | 687 | 0 | 1 | 0 | 0 | 14 | 0 | |
| 2 | 452.99 | 67.33 | 10 | 73 | 1065 | 0 | 0 | 1 | 0 | 1 | 0 | |
| 3 | 443.22 | 67.33 | 10 | 85 | 1065 | 1 | 0 | 1 | 0 | 1 | 0 | |
| 4 | 652.32 | 68 | 11 | 67 | 1065 | 0 | 1 | 1 | 0 | 12 | 0 | |
| 5 | 642.23 | 68 | 11 | 78 | 1065 | 1 | 1 | 1 | 0 | 12 | 0 | |
| 6 | 345.39 | 67.92 | 13 | 51 | 514 | 0 | 1 | 1 | 0 | 3 | 0 | |
| 7 | 272.37 | 68.17 | 12 | 50 | 822 | 0 | 0 | 0 | 0 | 5 | 0 | |
| 8 | 317.21 | 68.42 | 14 | 59 | 457 | 0 | 0 | 0 | 0 | 1 | 0 | |
| 9 | 457.12 | 68.42 | 15 | 55 | 822 | 1 | 0 | 0 | 0 | 5 | 0 | |
| 10 | 690.19 | 68.33 | 12 | 71 | 792 | 0 | 1 | 1 | 1 | 2 | 0 | |
| 11 | 350.63 | 68.58 | 12 | 64 | 560 | 0 | 0 | 0 | 0 | 3 | 0 | |
| 12 | 402.59 | 68.75 | 13 | 47 | 790 | 0 | 1 | 0 | 0 | 6 | 0 | |
| 13 | 412.18 | 68.42 | 15 | 62 | 530 | 0 | 0 | 1 | 0 | 2 | 0 | |
| 14 | 495.58 | 68.92 | 17 | 52 | 1050 | 0 | 0 | 0 | 0 | 7 | 0 | |
| 15 | 394.36 | 68.92 | 13 | 65 | 850 | 0 | 0 | 0 | 1 | 16 | 0 | |
| 16 | 423.32 | 68.42 | 11 | 67 | 778 | 0 | 0 | 0 | 0 | 3 | 0 | |
| 17 | 712.27 | 69.5 | 18 | 60 | 845 | 0 | 1 | 0 | 0 | 17 | 0 | |
| 18 | 289.66 | 68.42 | 15 | 76 | 530 | 1 | 0 | 1 | 0 | 2 | 0 | |
| 19 | 881.24 | 69.17 | 15 | 67 | 1090 | 0 | 0 | 0 | 0 | 1 | 0 | |
| 20 | 490.88 | 68.92 | 16 | 59 | 1050 | 1 | 0 | 0 | 0 | 8 | 0 | |
| 21 | 567.79 | 68.75 | 11 | 70 | 913 | 0 | 0 | 1 | 1 | 15 | 0 | |
| 22 | 665.99 | 70.92 | 22 | 57 | 828 | 1 | 1 | 0 | 0 | 20 | 0 | |
| 23 | 621.45 | 69.67 | 16 | 59 | 786 | 0 | 0 | 1 | 0 | 18 | 0 | |
| 24 | 608.8 | 70.08 | 19 | 58 | 821 | 1 | 0 | 0 | 0 | 3 | 0 | |
| 25 | 473.64 | 70.42 | 19 | 44 | 538 | 0 | 0 | 1 | 0 | 19 | 0 | |
| 26 | 697.14 | 71.08 | 20 | 57 | 1130 | 0 | 0 | 1 | 0 | 21 | 0 | |
| 27 | 207.51 | 67.25 | 13 | 63 | 745 | 0 | 0 | 0 | 0 | 8 | 1 | |
| 28 | 288.48 | 67.17 | 9 | 48 | 821 | 0 | 0 | 1 | 0 | 7 | 1 | |
| 29 | 284.88 | 67.83 | 12 | 63 | 886 | 0 | 0 | 0 | 1 | 11 | 1 | |
| 30 | 280.36 | 67.83 | 12 | 71 | 886 | 1 | 0 | 0 | 1 | 11 | 1 | |
| 31 | 217.38 | 67.25 | 13 | 72 | 745 | 1 | 0 | 0 | 0 | 8 | 1 | |
| 32 | 270.71 | 67.83 | 7 | 80 | 886 | 1 | 0 | 0 | 1 | 11 | 1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment