20 import java.io.InputStream;
22 import ca.uqac.lif.cep.Connector;
23 import ca.uqac.lif.cep.Pullable;
24 import ca.uqac.lif.cep.functions.ApplyFunction;
25 import ca.uqac.lif.cep.io.ReadLines;
26 import ca.uqac.lif.cep.tmf.Fork;
27 import ca.uqac.lif.cep.tuples.FetchAttribute;
28 import ca.uqac.lif.cep.tuples.TupleFeeder;
29 import ca.uqac.lif.cep.util.Numbers;
55 public static void main(String[] args)
58 InputStream is =
SumAttributes.class.getResourceAsStream(
"file1.csv");
59 ReadLines reader =
new ReadLines(is);
60 TupleFeeder
tuples =
new TupleFeeder();
61 Connector.connect(reader, tuples);
62 Fork fork =
new Fork(2);
63 Connector.connect(tuples, fork);
64 ApplyFunction get_a =
new ApplyFunction(
new FetchAttribute(
"A"));
65 Connector.connect(fork, 0, get_a, 0);
66 ApplyFunction get_b =
new ApplyFunction(
new FetchAttribute(
"B"));
67 Connector.connect(fork, 1, get_b, 0);
68 ApplyFunction cast_a =
new ApplyFunction(Numbers.numberCast);
69 Connector.connect(get_a, cast_a);
70 ApplyFunction cast_b =
new ApplyFunction(Numbers.numberCast);
71 Connector.connect(get_b, cast_b);
72 ApplyFunction sum =
new ApplyFunction(Numbers.addition);
73 Connector.connect(cast_a, 0, sum, 0);
74 Connector.connect(cast_b, 0, sum, 1);
75 Pullable p = sum.getPullableOutput();
78 System.out.println(p.next());
Compute the sum of two tuple attributes using the GetAttribute function.