org.objectweb.jeremie.binding.jiop

Class JIOP

Implemented Interfaces:
JRMIBFactory, NamingContext

public class JIOP
extends Object
implements JRMIBFactory

Provides an implementation of a binder for binding Jeremie identifiers to remote objects using a simple protocol built on top of IIOP.

Constructor Summary

JIOP()
Creates a JIOP binder.
JIOP(JRMIStubFactory stub_factory)

Method Summary

Object
bind(String type, String host, int port, byte[] key)
Uses the underlying IIOP binder to bind an identifier, constructed from the host, port, key and type, returning an object giving access to a target object.
Identifier
decode(UnMarshaller u)
Uses the underlying IIOP binder to decode an identifier from the given unmarshaller.
Identifier
decode(byte[] data, int offset, int length)
Uses the underlying IIOP binder to decode an identifier from the given buffered data.
Identifier
export(Object id, Context hints)
Exports the given identifier to an underlying IIOP binder.
JRMIStubFactory
getStubFactory()
Returns the stub factory associated with this binder viewed as a Jeremie binding factory.
void
setBinder(IIOPBinder binder)

Constructor Details

JIOP

protected JIOP()
Creates a JIOP binder.


JIOP

public JIOP(JRMIStubFactory stub_factory)

Method Details

bind

public Object bind(String type,
                   String host,
                   int port,
                   byte[] key)
            throws JonathanException
Uses the underlying IIOP binder to bind an identifier, constructed from the host, port, key and type, returning an object giving access to a target object.

Parameters:
type - a type, forming part of an identifier for the target object;
host - a host, forming part of an identifier for the target object;
port - a port, forming part of an identifier for the target object;
key - an object key, forming part of an identifier for the target object.

Returns:
an object giving access to the target object.


decode

public Identifier decode(UnMarshaller u)
            throws JonathanException
Uses the underlying IIOP binder to decode an identifier from the given unmarshaller.

Parameters:
u - an unmarshaller.


decode

public Identifier decode(byte[] data,
                         int offset,
                         int length)
            throws JonathanException
Uses the underlying IIOP binder to decode an identifier from the given buffered data.

Parameters:
data - the byte array from which to read the encoded identifier;
offset - offset of the first byte of the encoding;
length - the length of the encoding.


export

public Identifier export(Object id,
                         Context hints)
            throws JonathanException
Exports the given identifier to an underlying IIOP binder. id must be of type Identifier.

Parameters:
id - an identifier;
hints - other data that may be useful for the export;

Returns:
the IIOP identifier resulting from the export.


getStubFactory

public JRMIStubFactory getStubFactory()
Returns the stub factory associated with this binder viewed as a Jeremie binding factory.
Specified by:
getStubFactory in interface JRMIBFactory


setBinder

public void setBinder(IIOPBinder binder)