Interface

Provides an interface to remote systems. Commands may be added to this managed object which are mapped into commands to other, local, managed objects. Objects may also be exported by this interface in which case they are addressed in the normal manner using pathnames through the interface or by using the command "at:"

Factory Messages
OperationDescription
create Creates a new Interface object

Operational Messages
OperationReturnDescription
listenTo: anObject self
missionController: aMissionController self Set the Interface's mission controller to be aMissionController.
event: aName is: anEventType self Maps aName to anEventType. This name may be used in the acceptsEvent: or sendsEvent: Interface commands.

Events appear as objects in the interface under the pseudo domain event. Thus they may be accessed as interface/event/eventName

acceptsEvent: anEventName self Tells the Interface that it can accept events previously defined with anEventName
acceptsEvent: anEventName from: anObject self Tells the Interface that it can accept events previously defined with anEventName
raise: eventName self
providesEvent: anEventName self Tells the Interface that it can propagate events previously defined with anEventName
subscribe: anObject self
map: aCommand to: anObject self Maps aCommand to anObject. aCommand appears as part of the external interface of this Interface. Answers with the result of the command
map: aCommand to: anObject as: anotherCommand self Maps aCommand to anObject as anotherCommand. aCommand appears as part of the external interface of this Interface. Answers with the result of the command
map: aName toObject: anObject self Exports anObject with aName. The Interface appears to be a domain with aName inside it
at: aName P2Object Returns the exported object called aName
Wild Card P2Object For internal use. Maps any command to the correct object and command. Answers with the answer produced by executing the command. Throws an error if the command is not found.