Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[hyades-dev] Propose changes/additions to Execution team interfaces


Team,

As part of the data collection teams efforts to implement the runtime side functionality of the interfaces dropped by the Execution team we have come across a couple of issues we would like to have changed if posible.  Here is the list.  

***  Replacement of the IChannelReader interface with the IDataChannel interface
As part of our work of implementing the data channel bindings in Java and runtime in C, we thought it would be better to make the channels use streams instead of 'roll your own' handlers.  We came up with the org.eclipse.hyades.collection.framework.channel. IDataChannel interface.  I would like to have this replace the IChannelReader interface and move it to the org.eclipse.hyades.execution.core package.  (As a side note, we intend to change this new interface slightly so that the streams are 'getters' instead of 'setters' as this is the wrong paradigm.  You can inspect the interface in CVS.

*** Addition of a IProcessConsole interface
The name may not be correct, but we have a requirement for console interaction with our IExecutor realizations that map to processes.  We have defined the org.eclipse.hyades.collection.framework.executor.IProcessConsole interface for obtaining streams for each of the stdin, stdout, and stderr native streams.   You can inspect the interface in CVS.

*** Provide a getter for the IProcessConsole on the IExecutor
Once a IExecutor relaization has been launched it is ncessary to obtain its console through some means.  It makes sence to provide a getter on the IExecutor interface for achieving this.  This is another substantiation for wanting to rename this.

*** Make the IOrderedProperty interface extend the clonable interface
When dealing with IOrderedProperties it often becomes necessary to make a copy of the original for local modification.  Addition of the clonable  interface would standardize this and save persons from continuously writing the same copy code.

*** Addition of a IExecutorComponentStateChangeListener
We need a means of knowing when IExecutionComponent's chage state.  This could be achieved with a IExecutionComponentStateChangeListener type of interface. In it's absence, we have opted to provide a IExecutionCompletionListener to our Executor implementation.  

*** Removal of the createExecutor method on the IExecutionEnvironment interface
I figured I would throw this one in while I was at it.  I don't agree with this method.  It tighly couples the IExecutor implementation with the IExecutionEnvironment interface and implies a heirarchy of IExecutionComponents.  If we do this right we should be able to swap implementation in and out of the heirarchy.


Thanks,

Richard K. Duggan
Problem Determination Enablement
IBM Toronto Laboratory
External: 905-413-2396
Internal: 969-2396

Back to the top