Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.ejie.r01f.xml.marshalling
Class XOMap

    java.lang.Object
      com.ejie.r01f.xml.marshalling.XOMap

All Implemented Interfaces:
  java.io.Serializable

public class XOMap
extends java.lang.Object
implements java.io.Serializable

Obtiene una representación en memoria de la definición en XML de una jerarquia de clases. Un ejemplo del XML es: Trukos de definición de mapeos: - Una lista / mapa de objetos complejos: En el objeto padre que tiene como miembro la lista / mapa incluir un miembro: Incluir la definición del objeto hijo (ElementoHijoClass): ... todos los miembros ... Si se trata de un mapa uno de los miembros del objeto hijo debe tener el atributo isOID='true' lo que va a hacer que se indexe en el mapa utilizando el valor de este miembro Otra posibilidad es incluir el atributo oidAccessorMethod en la definición de la clase hijo, que se utiliza para indicar cual es el método a llamar para obtener la clave para indexar cada instancia de la clase en un mapa - Un mapa de Strings en el que la clave del mapa es el propio tag: (en este caso además cada elemento será CDATA o no segun el valor del atributo) Ejemplo: val1 val2 - Una lista de Strings, enteros, etc Ejemplo: 1 2 ... - Una miembro tipo fecha con formateo al serializar a XML - Para utilizar metodos get/set en una clase establecer la propiedad useAccesors='true' en la definicion de la clase - Para especificar un método para obtener el oid de un objeto establecer la propiedad oidAccessorMethod='getKey' en la definición de la clase. Esta propiedad es util cuando el oid no se compone a partir de una un unico miembro (en cuyo caso se pondría ) sino que se compone por ejemplo concatenando los valores de varios miembros Se utilizan dos clases auxiliares: - ClassMap: Modela una clase (nombre, paquete, miembros, tag por defecto de la que procede, etc) - MemberMap: Modela un miembro de una clase (nombre, tag del que procede, etc) Internamente se mantienen dos mapas: _objClases: Relaciona las clases (objetos ClassMap) con el nombre de la clase java _xmlClasses: Relaciona las clases (objetos ClassMap) con el nombre del tag xml del que procede Al final en memoria se tiene una estructura como la siguiente: Clase1 |_ Miembro 1 (String) |_ Miembro 2 (Clase 3) --------| |_ Miembro 3 (Clase 2) ----| | | | | | |--------------------------| | Clase 2 | |_ Miembro 1 (String) | |_ Miembro 2 (Clase 3) ----| | | | | | |--------------------------| | |------------------------------| | Clase 3 |_ Miembro 1 (Long) |_ Miembro 2 (String)

See Also:
  Serialized Form

Field Summary
`static int` | `COLLECTION_ARRAY`
`static int` | `COLLECTION_ARRAYLIST`
`static java.lang.String[]` | `COLLECTION_DESCS`
`static int` | `COLLECTION_HASHMAP`
`static int` | `COLLECTION_HASHTABLE`
`static int` | `COLLECTION_LIST`
`static int` | `COLLECTION_MAP`
`static int` | `COLLECTION_NO_COLLECTION`
`static int` | `COLLECTION_STATEMAP`
`static int` | `COLLECTION_VECTOR`
`static int` | `COLLECTION_XMLMAP`
`static int` | `DATATYPE_boolean`
`static int` | `DATATYPE_Boolean`
`static int` | `DATATYPE_Collection`
`static int` | `DATATYPE_Date`
`static int` | `DATATYPE_double`
`static int` | `DATATYPE_Double`
`static int` | `DATATYPE_float`
`static int` | `DATATYPE_Float`
`static int` | `DATATYPE_int`
`static int` | `DATATYPE_Integer`
`static int` | `DATATYPE_long`
`static int` | `DATATYPE_Long`
`static int` | `DATATYPE_null`
`static int` | `DATATYPE_Object`
`static int` | `DATATYPE_SQLDate`
`static int` | `DATATYPE_String`
`static int` | `DATATYPE_XML`
`static java.lang.String[]` | `DATATYPES_DESCS`
`static int` | `RELATION_AGGREGATION`
`static int` | `RELATION_COMPOSITION`
`static java.lang.String[]` | `RELATION_DESCS`
`static int` | `RELATION_NO_RELATION`

Constructor Summary
`XOMap()` Constructor vacio
`XOMap(java.io.InputStream is)` Constructor en base a un inputStream de la definición del mapeo
`XOMap(java.lang.String inXMLStr)` Constructor en base a un String con el mapeo

Method Summary
`java.util.Collection` | `getClasses()` Devuelve una colección con la definición de las clases
`ClassMap` | `getClassFromClassName(java.lang.String className)` Obtiene la definición de una clase a partir del nombre de la clase
`ClassMap` | `getClassFromXMLTag(java.lang.String tagName)` Obtiene la definición de una clase a partir del tag xml
`java.lang.String` | `getEncoding()` Devuelve el encoding de los xml que se transforman con el mapeador
`void` | `loadFromXML(java.io.InputStream is)` Carga el mapa de clases que ha llegado en formato XML
`void` | `setClassMap(ClassMap newClassMap)` Establece un mapeo de una clase
`void` | `setEncoding(java.lang.String theEncoding)` Establece el encoding de los xml que se transforman con el mapeador
`java.lang.String` | `toString()` Devuelve la representación en String de las clases

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### DATATYPE_null

    public static final int DATATYPE_null

See Also:
  Constant Field Values

### DATATYPE_String

    public static final int DATATYPE_String

See Also:
  Constant Field Values

### DATATYPE_Integer

    public static final int DATATYPE_Integer

See Also:
  Constant Field Values

### DATATYPE_int

    public static final int DATATYPE_int

See Also:
  Constant Field Values

### DATATYPE_Long

    public static final int DATATYPE_Long

See Also:
  Constant Field Values

### DATATYPE_long

    public static final int DATATYPE_long

See Also:
  Constant Field Values

### DATATYPE_Double

    public static final int DATATYPE_Double

See Also:
  Constant Field Values

### DATATYPE_double

    public static final int DATATYPE_double

See Also:
  Constant Field Values

### DATATYPE_Float

    public static final int DATATYPE_Float

See Also:
  Constant Field Values

### DATATYPE_float

    public static final int DATATYPE_float

See Also:
  Constant Field Values

### DATATYPE_Boolean

    public static final int DATATYPE_Boolean

See Also:
  Constant Field Values

### DATATYPE_boolean

    public static final int DATATYPE_boolean

See Also:
  Constant Field Values

### DATATYPE_Date

    public static final int DATATYPE_Date

See Also:
  Constant Field Values

### DATATYPE_SQLDate

    public static final int DATATYPE_SQLDate

See Also:
  Constant Field Values

### DATATYPE_Object

    public static final int DATATYPE_Object

See Also:
  Constant Field Values

### DATATYPE_Collection

    public static final int DATATYPE_Collection

See Also:
  Constant Field Values

### DATATYPE_XML

    public static final int DATATYPE_XML

See Also:
  Constant Field Values

### DATATYPES_DESCS

    public static final java.lang.String[] DATATYPES_DESCS

### COLLECTION_NO_COLLECTION

    public static final int COLLECTION_NO_COLLECTION

See Also:
  Constant Field Values

### COLLECTION_ARRAY

    public static final int COLLECTION_ARRAY

See Also:
  Constant Field Values

### COLLECTION_HASHTABLE

    public static final int COLLECTION_HASHTABLE

See Also:
  Constant Field Values

### COLLECTION_HASHMAP

    public static final int COLLECTION_HASHMAP

See Also:
  Constant Field Values

### COLLECTION_XMLMAP

    public static final int COLLECTION_XMLMAP

See Also:
  Constant Field Values

### COLLECTION_STATEMAP

    public static final int COLLECTION_STATEMAP

See Also:
  Constant Field Values

### COLLECTION_MAP

    public static final int COLLECTION_MAP

See Also:
  Constant Field Values

### COLLECTION_VECTOR

    public static final int COLLECTION_VECTOR

See Also:
  Constant Field Values

### COLLECTION_ARRAYLIST

    public static final int COLLECTION_ARRAYLIST

See Also:
  Constant Field Values

### COLLECTION_LIST

    public static final int COLLECTION_LIST

See Also:
  Constant Field Values

### COLLECTION_DESCS

    public static final java.lang.String[] COLLECTION_DESCS

### RELATION_COMPOSITION

    public static final int RELATION_COMPOSITION

See Also:
  Constant Field Values

### RELATION_AGGREGATION

    public static final int RELATION_AGGREGATION

See Also:
  Constant Field Values

### RELATION_NO_RELATION

    public static final int RELATION_NO_RELATION

See Also:
  Constant Field Values

### RELATION_DESCS

    public static final java.lang.String[] RELATION_DESCS

Constructor Detail

### XOMap

    public XOMap()

  Constructor vacio

### XOMap

    public XOMap(java.io.InputStream is)
          throws org.xml.sax.SAXException

  Constructor en base a un inputStream de la definición del mapeo

Parameters:
  `is` -
Throws:
  `org.xml.sax.SAXException`

### XOMap

    public XOMap(java.lang.String inXMLStr)
          throws org.xml.sax.SAXException

  Constructor en base a un String con el mapeo

Parameters:
  `inXMLStr` -
Throws:
  `org.xml.sax.SAXException`

Method Detail

### getEncoding

    public java.lang.String getEncoding()

  Devuelve el encoding de los xml que se transforman con el mapeador

  Returns:
    el encoding

### setEncoding

    public void setEncoding(java.lang.String theEncoding)

  Establece el encoding de los xml que se transforman con el mapeador

  Parameters:
    `theEncoding` - el nuevo encoding

### loadFromXML

    public void loadFromXML(java.io.InputStream is)
                     throws org.xml.sax.SAXException

  Carga el mapa de clases que ha llegado en formato XML

  Parameters:
    `is` - Chorro de entrada del XML
  Throws:
    `org.xml.sax.SAXException` - si no se puede cargar el XML

### getClasses

    public java.util.Collection getClasses()

  Devuelve una colección con la definición de las clases

### getClassFromXMLTag

    public ClassMap getClassFromXMLTag(java.lang.String tagName)

  Obtiene la definición de una clase a partir del tag xml

  Parameters:
    `tagName` - Tag XML en el que se define la clase

### getClassFromClassName

    public ClassMap getClassFromClassName(java.lang.String className)

  Obtiene la definición de una clase a partir del nombre de la clase

  Parameters:
    `className` - Nombre de la clase

### setClassMap

    public void setClassMap(ClassMap newClassMap)

  Establece un mapeo de una clase

  Parameters:
    `newClassMap` - La definición del mapeo de la clase

### toString

    public java.lang.String toString()

  Devuelve la representación en String de las clases

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD