org.objectweb.jeremie.stub_factories.std

Class StdStubFactory

Implemented Interfaces:
DefaultStubTable, JRMIStubFactory, StubFactory

public class StdStubFactory
extends Object
implements JRMIStubFactory

Provides an implementation of a Jeremie stub factory.

The factory maintains a table associating Jeremie stubs with the target remote objects that they represent.

Nested Class Summary

protected class
StdStubFactory.DynamicRequestSession
Provides an implementation of a request session.
protected class
StdStubFactory.RequestSessionImpl
Provides an implementation of a request session.

Fields inherited from interface org.objectweb.jeremie.stub_factories.api.DefaultStubTable

default_stub_table

Constructor Summary

StdStubFactory(MarshallerFactory marshaller_factory, ClassPathFinder classpath_finder)
Constructs a new Jeremie stub factory.

Method Summary

Hashtable
getStubTable()
Retrieves the stub table associated with this stub factory.
RequestSession
newRequestSession(Object target)
Creates a request session which can be used by the stub to send data to the given remote object.
RemoteStub
newStub(Object impl, Identifier id)
Creates a stub object to represent the given (remote) object with a reference containing the given identifier.
Object
newStub(SessionIdentifier ep, Identifier[] ids, Context hints)
Creates a stub object with a reference containing the given identifiers and the given session identifier.
void
setStubNameExtension(String ext)
Optional parameters...

Constructor Details

StdStubFactory

public StdStubFactory(MarshallerFactory marshaller_factory,
                      ClassPathFinder classpath_finder)
Constructs a new Jeremie stub factory.

Parameters:
classpath_finder - a class path finder

Method Details

getStubTable

public Hashtable getStubTable()
Retrieves the stub table associated with this stub factory.
Specified by:
getStubTable in interface JRMIStubFactory

Returns:
the stub table.


newRequestSession

public RequestSession newRequestSession(Object target)
            throws JonathanException
Creates a request session which can be used by the stub to send data to the given remote object.

Specified by:
newRequestSession in interface JRMIStubFactory

Parameters:
target - the remote object.

Returns:
the created request session.


newStub

public RemoteStub newStub(Object impl,
                          Identifier id)
            throws JonathanException
Creates a stub object to represent the given (remote) object with a reference containing the given identifier.

Specified by:
newStub in interface JRMIStubFactory

Parameters:
impl - the (remote) object;
id - an identifier (for the remote object) that will be included in the reference held by the stub.

Returns:
a stub.


newStub

public Object newStub(SessionIdentifier ep,
                      Identifier[] ids,
                      Context hints)
            throws JonathanException
Creates a stub object with a reference containing the given identifiers and the given session identifier.

Parameters:
ep - a session identifier to be used to send marshalled data to the object represented by the stub;
ids - a set of identifiers;
hints - other data possibly used to create the stub.

Returns:
a stub.


setStubNameExtension

public void setStubNameExtension(String ext)
Optional parameters...