|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.objectweb.carol.cmi.Distributor
public abstract class Distributor
Each clustered server object has to be accompanied by a class which extends this one to specify configuration information. It specifies how the replicates will be accessed by the clients, and how replicates are recognized in the cluster.
For CMI to load this configuration, the class has to be named under the
form : full.ServerClass_Cmi
It must provide a constructor without parameter. The results should be constant in the cluster so that each server and client uses the same configuration.
Constructor Summary | |
---|---|
Distributor()
Default constructor |
Method Summary | |
---|---|
StubData |
choose(java.lang.reflect.Method method,
java.lang.Object[] parameters)
Choose a stub among the stub list Default algorithm : round robin The application deployer can override this method to make its own choices. |
StubData |
chooseLocalFirst(java.lang.reflect.Method method,
java.lang.Object[] parameters)
Choose a stub among the stub list with a local preference The application deployer can override this method to make its own choices. |
abstract boolean |
equivAtBind()
To be overriden |
abstract boolean |
equivAtExport()
To be overriden |
protected java.util.Set |
getCurrentState()
Get the current state of the stubs |
ClusterId |
getMyServerId()
Get the local server id |
ServerStubList |
getStubList()
Get the stub list |
Decision |
onException(java.lang.reflect.Method method,
java.lang.Object[] parameters,
StubData sd,
java.lang.Exception ex)
Decision on Exception - retry on ConnectException or ConnectIOException or NoSuchObjectException The application deployer can override this method to make its own choices. |
Decision |
onReturn(java.lang.reflect.Method method,
java.lang.Object[] parameters,
StubData sd,
java.lang.Object retVal)
Decision on return - do nothing The application deployer can override this method to make its own choices. |
void |
preInvoke(java.lang.reflect.Method method,
java.lang.Object[] parameters)
Callback invoked just before the method call The application deployer can override this method |
void |
read(java.io.ObjectInput in)
Read the specific distributor data |
protected void |
removeStub(ClusterId serverId)
Remove a stub in the list by its serverId |
protected void |
removeStub(StubData sd)
Remove a stub in the list |
java.lang.String |
toContentsString()
Build a readable view of the stub list |
java.lang.String |
toString()
|
void |
write(java.io.ObjectOutput out)
Write the specific distributor data |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public Distributor()
Method Detail |
---|
protected java.util.Set getCurrentState()
protected void removeStub(StubData sd)
sd
- stubprotected void removeStub(ClusterId serverId)
sd
- stubpublic ServerStubList getStubList()
public ClusterId getMyServerId()
public abstract boolean equivAtBind()
public abstract boolean equivAtExport()
public void preInvoke(java.lang.reflect.Method method, java.lang.Object[] parameters)
method
- calling methodparameters
- parameters of the calling methodpublic StubData choose(java.lang.reflect.Method method, java.lang.Object[] parameters) throws NoServerException
method
- calling methodparameters
- parameters of the calling method
NoServerException
- if no server availablepublic StubData chooseLocalFirst(java.lang.reflect.Method method, java.lang.Object[] parameters) throws NoServerException
method
- calling methodparameters
- parameters of the calling method
NoServerException
- if no server availablepublic Decision onException(java.lang.reflect.Method method, java.lang.Object[] parameters, StubData sd, java.lang.Exception ex)
method
- calling methodparameters
- parameters of the calling methodsd
- stub dataex
- exception
public Decision onReturn(java.lang.reflect.Method method, java.lang.Object[] parameters, StubData sd, java.lang.Object retVal)
method
- calling methodparameters
- parameters of the calling methodsd
- stub dataretVal
- return value
public java.lang.String toContentsString()
public java.lang.String toString()
toString
in class java.lang.Object
public void write(java.io.ObjectOutput out) throws java.io.IOException
out
- output
java.io.IOException
- if an I/O error occurspublic void read(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
in
- input
java.io.IOException
- if an I/O error occurs
java.lang.ClassNotFoundException
- if the expected class can not be created
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |