org.objectweb.proactive.core.body.ibis
Class ProActiveIbisMetaObjectFactory

java.lang.Object
  |
  +--org.objectweb.proactive.core.body.ProActiveMetaObjectFactory
        |
        +--org.objectweb.proactive.core.body.ibis.ProActiveIbisMetaObjectFactory
All Implemented Interfaces:
MetaObjectFactory, java.io.Serializable

public class ProActiveIbisMetaObjectFactory
extends ProActiveMetaObjectFactory
implements java.io.Serializable

This class provides singleton instances of all default factories creating MetaObjects used in the Body.

One can inherit from this class in order to provide custom implementation of one or several factories. This class provide a default implementation that makes the factories a singleton. One instance of each mata object factory is created when this object is built and the same instance is returned each time somebody ask for an instance.

In order to change one meta object factory following that singleton pattern, only the protected method newXXXSingleton has to be overwritten. The method newXXXSingleton is guarantee to be called only once at construction time of this object.

In order to change one meta object factory that does not follow the singleton pattern, the public method newXXX has to be overwritten in order to return a new instance of the factory each time. The default implementation of each newXXX method if to return the singleton instance of the factory created from newXXXSingleton method call.

Each sub class of this class should be implemented as a singleton and provide a static method newInstance for this purpose.

Since:
ProActive 0.9.2
Version:
1.0, 2002/05
Author:
ProActive Team
See Also:
Serialized Form

Nested Class Summary
protected static class ProActiveIbisMetaObjectFactory.RemoteIbisBodyFactoryImpl
           
 
Nested classes inherited from class org.objectweb.proactive.core.body.ProActiveMetaObjectFactory
ProActiveMetaObjectFactory.MigrationManagerFactoryImpl, ProActiveMetaObjectFactory.ProActiveComponentFactoryImpl, ProActiveMetaObjectFactory.ProActiveGroupManagerFactoryImpl, ProActiveMetaObjectFactory.RemoteBodyFactoryImpl, ProActiveMetaObjectFactory.ReplyReceiverFactoryImpl, ProActiveMetaObjectFactory.RequestFactoryImpl, ProActiveMetaObjectFactory.RequestQueueFactoryImpl, ProActiveMetaObjectFactory.RequestReceiverFactoryImpl, ProActiveMetaObjectFactory.ThreadStoreFactoryImpl
 
Field Summary
 
Fields inherited from class org.objectweb.proactive.core.body.ProActiveMetaObjectFactory
COMPONENT_PARAMETERS_KEY, componentFactoryInstance, logger, migrationManagerFactoryInstance, parameters, proActiveGroupManagerFactoryInstance, proActiveSecurityManager, remoteBodyFactoryInstance, replyReceiverFactoryInstance, requestFactoryInstance, requestQueueFactoryInstance, requestReceiverFactoryInstance, threadStoreFactoryInstance
 
Constructor Summary
ProActiveIbisMetaObjectFactory()
           
 
Method Summary
protected  RemoteBodyFactory newRemoteBodyFactorySingleton()
           
 
Methods inherited from class org.objectweb.proactive.core.body.ProActiveMetaObjectFactory
getParameters, getProActiveSecurityManager, newComponentFactory, newComponentFactorySingleton, newInstance, newMigrationManagerFactory, newMigrationManagerFactorySingleton, newProActiveGroupManagerFactory, newProActiveGroupManagerFactorySingleton, newRemoteBodyFactory, newReplyReceiverFactory, newReplyReceiverFactorySingleton, newRequestFactory, newRequestFactorySingleton, newRequestQueueFactory, newRequestQueueFactorySingleton, newRequestReceiverFactory, newRequestReceiverFactorySingleton, newThreadStoreFactory, newThreadStoreFactorySingleton, setNewInstance, setProActiveSecurityManager
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProActiveIbisMetaObjectFactory

public ProActiveIbisMetaObjectFactory()
Method Detail

newRemoteBodyFactorySingleton

protected RemoteBodyFactory newRemoteBodyFactorySingleton()
Overrides:
newRemoteBodyFactorySingleton in class ProActiveMetaObjectFactory


Copyright © April 2004 INRIA All Rights Reserved.