| 
 | ||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||
java.lang.Objectorg.jibx.extras.IdRefMapperBase
public abstract class IdRefMapperBase
Abstract base custom marshaller/unmarshaller for an object reference. This
 marshals the reference as an empty element with a single IDREF attribute, and
 unmarshals an element with the same structure to create a reference to the
 object with that ID value. To use this class you need to create a subclass
 with a constructor using the same signature as the one provided (calling the
 base class constructor from your subclass constructor) and implement the
 abstract getIdValue(java.lang.Object) method in your subclass. You can also override
 the provided getAttributeName() method to change the name used for the
 IDREF attribute. Note that this class can only be used when the definitions
 precede the references in the XML document; if a referenced ID is not defined
 the unmarshaller throws an exception.
| Constructor Summary | |
|---|---|
| IdRefMapperBase(java.lang.String uri,
                int index,
                java.lang.String name)Aliased constructor taking a name definition for the element. | |
| Method Summary | |
|---|---|
|  boolean | isExtension(int index)Check if marshaller represents an extension mapping. | 
|  boolean | isPresent(IUnmarshallingContext ctx)Check if instance present in XML. | 
|  void | marshal(java.lang.Object obj,
        IMarshallingContext ictx)Marshal instance of handled class. | 
|  java.lang.Object | unmarshal(java.lang.Object obj,
          IUnmarshallingContext ictx)Unmarshal instance of handled class. | 
| Methods inherited from class java.lang.Object | 
|---|
| equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
|---|
public IdRefMapperBase(java.lang.String uri,
                       int index,
                       java.lang.String name)
uri - namespace URI for the top-level elementindex - namespace index corresponding to the defined URI within the
 marshalling context definitionsname - local name for the top-level element| Method Detail | 
|---|
public boolean isExtension(int index)
IMarshaller
isExtension in interface IMarshallerindex - abstract mapping index to be checked
true if this mapping is an extension of the abstract
 mapping, false if not
public void marshal(java.lang.Object obj,
                    IMarshallingContext ictx)
             throws JiBXException
IMarshaller
marshal in interface IMarshallerobj - object to be marshalled (may be null if property
 is not optional)ictx - XML text output context
JiBXException - on error in marshalling process
public boolean isPresent(IUnmarshallingContext ctx)
                  throws JiBXException
IUnmarshaller
isPresent in interface IUnmarshallerctx - unmarshalling context
true if expected parse data found,
 false if not
JiBXException - on error in unmarshalling process
public java.lang.Object unmarshal(java.lang.Object obj,
                                  IUnmarshallingContext ictx)
                           throws JiBXException
IUnmarshaller
unmarshal in interface IUnmarshallerobj - object to be unmarshalled (may be null)ictx - unmarshalling context
null)
JiBXException - on error in unmarshalling process| 
 | ||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||