Hello,

since I'm new to OSGi I would like to ask the experts a few questions on a design question.

We have a Java-based data-flow system which consists of processes (technically threads) which have typed input and output ports. There are various types of these processses, like read-, write-, compound-, and filter-processes. The type of the input port determins which data structure the process can handle. There is a XML file which describes a configuration - a net - of these processes. Some "Configurator" reads the XML file, instantiates and starts these processes.

Except some reader which is reading from a data-source immediately, the other threads are blocked until they receive data through a channel (connection of input and output port). Processes block if the channel is empty while reading or the channel is full while writing. Since a process could receive from any other process on its input-port this adds nondeterminism to the whole system.

The runtime environment should be able to handle many nets of these processes.
Now, we have the task to "port this to osgi".

Using DS I would map in this way:

Net -> Bundle
Process -> DS Service Component
Port of Process -> Service provided/required by DS Service Component

The questions for me then are
a) How can these processes be instantiated from a XML file as DS components?
b) Is is feasible to model typed ports as services? How would then the "channel" over which the communication happens look like?
c) The whole net of processes as one bundle?
d) Perhaps you would model this in a totally different way?

Would appreciate any help on this.
Thank you in advance!
Michael

_______________________________________________
OSGi Developer Mail List
[email protected]
https://mail.osgi.org/mailman/listinfo/osgi-dev

Reply via email to