org.objectweb.jorm.naming.api
Interface PBinder

All Superinterfaces:
PNameCoder, PNameManager
All Known Implementing Classes:
BasidBinder

public interface PBinder
extends PNameManager

This interface defines a binder as a particular PNameManager that manages the association of bindings with PName. Each JORM class managed by a mapper have an associated PBinder. * Binders provide binding objects specific to the persistent class.

Author:
R. Basset, P. D?chamboux

Fields inherited from interface org.objectweb.jorm.naming.api.PNameCoder
CTBYTE, CTBYTEARRAY, CTCHAR, CTCHARARRAY, CTCOMPOSITE, CTDATE, CTINT, CTLONG, CTOBYTE, CTOCHAR, CTOINT, CTOLONG, CTOSHORT, CTSHORT, CTSTRING, CTSYSTEM
 
Method Summary
 void bind(PName pn, PBindingCtrl pb)
          It associates a PBinding object with a PName within a PBinder.
 PClassMapping getBinderClassMapping()
          It returns the PClassMapping for which it is the binder.
 PBinding lookup(PName pn)
          It looks for a PBinding object with the given PName within a PBinder.
 void setPClassMapping(PClassMapping pcm)
          It set the PClassMapping which use this binder slave.
 void unbind(PBindingCtrl pb)
          It releases the link between the PBinding passed as parameter and its associated DSI represented by the PName referenced by this PBinding.
 
Methods inherited from interface org.objectweb.jorm.naming.api.PNameManager
export, export, getPType, setPType, unexport
 
Methods inherited from interface org.objectweb.jorm.naming.api.PNameCoder
codingSupported, decode, decodeAbstract, decodeByte, decodeChar, decodeDate, decodeInt, decodeLong, decodeObyte, decodeOchar, decodeOint, decodeOlong, decodeOshort, decodeShort, decodeString, encode, encodeAbstract, encodeByte, encodeChar, encodeDate, encodeInt, encodeLong, encodeObyte, encodeOchar, encodeOint, encodeOlong, encodeOshort, encodeShort, encodeString, getNull, supportCompositeField, supportDynamicComposite, supportStaticComposite
 

Method Detail

lookup

public PBinding lookup(PName pn)
                throws PException
It looks for a PBinding object with the given PName within a PBinder.
Parameters:
pn - The PName to associate to the PBinding. This PName must be valid within this binder just like with a naming context.
Returns:
The PBinding bound with the given PName.
Throws:
PExceptionNaming - The given PName is not valid in this PBinder or this PBinding cannot be managed by this PBinder.

bind

public void bind(PName pn,
                 PBindingCtrl pb)
          throws PException
It associates a PBinding object with a PName within a PBinder. This sets/resets the link between a PBinding and a DSI.
Parameters:
pn - The PName to associate to the PBinding. This PName must be valid within this binder just like with a naming context.
pb - The PBinding to bind with the given PName; this PBinding must have been created or initialised by this PBinder.
Throws:
PExceptionNaming - The given PName is not valid in this PBinder or this PBinding cannot be managed by this PBinder.

getBinderClassMapping

public PClassMapping getBinderClassMapping()
It returns the PClassMapping for which it is the binder.
Returns:
The PClassMapping to which it is associated.

setPClassMapping

public void setPClassMapping(PClassMapping pcm)
It set the PClassMapping which use this binder slave.
Parameters:
pcm - The PClassMapping.

unbind

public void unbind(PBindingCtrl pb)
            throws PException
It releases the link between the PBinding passed as parameter and its associated DSI represented by the PName referenced by this PBinding.
Parameters:
pb - The PBinding to unbind.
Throws:
PExceptionNaming - This PBinding cannot be managed by this PBinder.