Package ibis.gmi

The GMI (Group Method Invocation) package implements group communication using method invocations.

See:
          Description

Interface Summary
GroupInterface This is the magic interface, signalling the compiler to generate stub and skeleton code.
GroupProtocol Constants, placed in an interface to allow for easy access.
 

Class Summary
BinomialCombiner The BinomialCombiner class serves as a base class for user-defined binomial reply combiners.
BinomialInvocationCombiner The BinomialInvocationCombiner class serves as a base class for user-defined binomial invocation combiners.
CombinedInvocation The CombinedInvocation class must be used whenever a group method must be configured using a combined invocation scheme.
CombinedInvocationInfo The CombinedInvocationInfo class is used to collect some information about a combined invocation.
CombineReply The CombineReply class must be used to configure a group method with a combined reply.
DiscardReply The DiscardReply class must be used when configuring a group method to discard its result.
FlatCombiner The FlatCombiner class serves as a base class for user-defined result flat-combiners.
FlatInvocationCombiner The FlatInvocationCombiner class provides a base class for user-defined flat invocation combiners.
Forwarder The Forwarder class serves as a base class for user-defined forwarders.
ForwardReply The ForwardReply class must be used when configuring a group method to forward all replies to a Forwarder object.
Group The Group class takes care of the startup, and has methods to create, join, lookup, and exit a group.
GroupInvocation The GroupInvocation class is to be used when configuring a group method to be invoked on all members of the group.
GroupMember To be part of a group, an object must implement the GroupInterface and extent the GroupMember class.
GroupMessage The GroupMessage class is a container class for keeping replies around until they can be processed.
GroupMethod A GroupMethod object represents a method of a specific group reference.
GroupSkeleton The GroupSkeleton class serves as a base class for generated skeletons.
GroupStub The GroupStub class provides a base class for generated stubs.
InvocationScheme The InvocationScheme class provides a base class for all invocation schemes.
ParameterVector The ParameterVector class provides a base class for generated parameter vector classes, specific for a group method.
PersonalizedInvocation The PersonalizedInvocation class must be used to configure a group method for personalized invocations.
Personalizer The Personalizer class provides a base class for parameter personalizers.
PersonalizeReply The PersonalizeReply class must be used when configuring a group method to have a personalized reply scheme.
ReplyPersonalizer The ReplyPersonalizer class can be extended by the user to create a specific reply personalizer.
ReplyScheme Class ReplyScheme is the base class for all reply schemes.
ReturnReply The ReturnReply class must be used to configure a group method that returns a single reply, from the indicated group member.
SingleInvocation The SingleInvocation class must be used to configure a group method to a single invocation.
 

Exception Summary
ConfigurationException The ConfigurationException class describes exceptions caused by illegal group method configurations.
 

Package ibis.gmi Description

The GMI (Group Method Invocation) package implements group communication using method invocations.

The GMI model generalizes the RMI model in three ways. First, a reference (stub) can be used to refer to a group of objects instead of a single object. Second, GMI has several ways of forwarding method invocations and dealing with the replies. For instance, GMI allows the user to express broadcast and asynchronous communication. Third, GMI allows the programmer to configure a group reference at run time to use specific forwarding and result-handling schemes. Each method in a group reference can be configured separately, and different forwarding and result-handling schemes can be combined.



The Ibis project