1.1 Is there any clear separation between external
interfaces and internal classes of Execution API (communication with Agent
Controller related) on the Hyades
client side? The definition of external interfaces being the
interfaces being used by the
Eclipse workbench plugins. And
internal being the classes that provide implementation for the external interfaces and communicate with the
agent controller.
1.2. Are the
interfaces like INode, IControlMessage, IDataProcessor (defined in
org.eclipse.hyades.execution.core package) external interfaces of the Execution
API? If so, why are the interfaces like
Process, Agent not included in it? Are these interfaces not expected to be used
by a Client.
1.3. What is the
purpose of NodeImpl class in org.eclipse.hyades.execution.local package? Is this the class supposed to be used by the
client application for communicating with
the agent controller? In that case, why there is only one method
connect() defined in this class? Why is it
returning ISession as it appears that ISession is used only in secure communication?
1.4. It is noticed
that classes like PDCoreUtil in Trace UI package use interfaces and classes
(NodeFactory, Node, ProcessFactory, Process, etc.) defined in
org.eclipse.hyades.internal.execution.local.control. Aren't these the
internal classes and not supposed to be used by the workbench directly?
1.5. What is the
purpose of interfaces like IExecutionComponent, IExecutor,
IExecutableObject defined in
org.eclipse.hyades.execution.core package and also their implementation
classes? Are these used solely on the
agent controller side? Are they in some way related to classes in org.eclipse.hyades.execution.local package and
it's sub packages.
1.6. Are the classes
in following packages used only on the agent controller side?
-
org.eclipse.hyades.execution.remote
- org.eclipse.hyades.collection.framework
1.7 It appears that
the concept of session is applicable only in case of secured communication
where user credentials are supplied. Are
the session related classes defined in (SessionImpl, SessonStub, etc.) org.eclipse.hyades.execution.local package used
only in case of secured connection.?
1.8. Is the package
org.eclipse.hyades.execution.security package external interface for secured
connection?
1.9. The package
org.eclipse.hyades.execution.invocation contains set of classes that help in
remote object and method invocation and
provides marshalling and unmarshalling capabilities for sending objects across the wire. Where are these
classes used in the context of external and internal interfaces described
above?