Sample application
Example code that builds and then submits a simple topology.
from streamsx.topology.topology import Topology
import streamsx.topology.context
import transform_sample_functions
topo = Topology("transform_sample")
source = topo.source(transform_sample_functions.int_strings_transform)
i1 = source.map(lambda tuple_ : int(tuple_))
i2 = i1.map(transform_sample_functions.AddNum(17))
i2.print()
streamsx.topology.context.submit("STANDALONE", topo.graph)
The source function is passed a function that returns an Iterable, in this case transform_sample_functions.int_strings_transform.
def int_strings_transform():
return ["325", "457", "9325"]
The first map function is passed a function that returns an integer converted from the string object, in this case a lambda expression.
The second map function is passed an instance of a callable class that adds 17 to the integer, in this case transform_sample_functions.AddNum(17).
class AddNum:
def __init__(self, increment):
self.increment = increment
def __call__(self, tuple):
return tuple + self.increment
Running the Sample Transform Application
When building the topology the directory com.teracloud.streams.topology/opt/python/packages must be in $PYTHONPATH.
The sample transform_sample.py can be found under samples/python/topology/simple. After updating the PYTHONPATH, the sample can be executed using python3 transform_sample.py.
342
474
9342