Class XMLEntity

java.lang.Object
org.gvsig.utils.XMLEntity

public class XMLEntity extends Object
Adaptador de las llamadas a sus métodos sobre los generados por castor para generar después los XML.
Author:
Vicente Caballero Navarro
  • Constructor Details

    • XMLEntity

      public XMLEntity(XmlTag tag)
      Crea un nuevo XMLEntity.
      Parameters:
      tag - DOCUMENT ME!
    • XMLEntity

      public XMLEntity()
      Crea un nuevo XMLEntity.
  • Method Details

    • putProperty

      public void putProperty(String key, String value, boolean matters)
      Añade una propiedad con un String como clave y un String como valor.
      Parameters:
      key - clave.
      value - valor.
      matters - , if false this property will not take effect to the result of toHashCode() method
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, String value)
    • putProperty

      public void putProperty(String key, Object value, boolean matters)
      Añade una propiedad con un String como clave y un Object como valor.
      Parameters:
      key - clave.
      value - valor.
      matters - , if false this property will not take effect to the result of toHashCode() method
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, Object value)
      Añade una propiedad con un String como clave y un double como valor. La propiedad añadida afecta al valor calculado por toHashCode()
      Parameters:
      key - clave.
      value - valor.
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, int value, boolean matters)
      Añade una propiedad con un String como clave y un entero como valor.
      Parameters:
      key - clave.
      value - valor.
      matters - , if false this property will not take effect to the result of toHashCode() method
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, int value)
      Añade una propiedad con un String como clave y un double como valor. La propiedad añadida afecta al valor calculado por toHashCode()
      Parameters:
      key - clave.
      value - valor.
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, long value, boolean matters)
      Añade una propiedad con un String como clave y un long como valor.
      Parameters:
      key - clave.
      value - valor.
      matters - , if false this property will not take effect to the result of toHashCode() method
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, long value)
      Añade una propiedad con un String como clave y un double como valor. La propiedad añadida afecta al valor calculado por toHashCode()
      Parameters:
      key - clave.
      value - valor.
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, boolean value, boolean matters)
      Añade una propiedad con un String como clave y un boolean como valor.
      Parameters:
      key - clave.
      value - valor.
      matters - , if false this property will not take effect to the result of toHashCode() method
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, boolean value)
      Añade una propiedad con un String como clave y un double como valor. La propiedad añadida afecta al valor calculado por toHashCode()
      Parameters:
      key - clave.
      value - valor.
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, float value, boolean matters)
      Añade una propiedad con un String como clave y un float como valor.
      Parameters:
      key - clave.
      value - valor.
      matters - , if false this property will not take effect to the result of toHashCode() method
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, float value)
      Añade una propiedad con un String como clave y un double como valor. La propiedad añadida afecta al valor calculado por toHashCode()
      Parameters:
      key - clave.
      value - valor.
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, double value, boolean matters)
      Añade una propiedad con un String como clave y un double como valor.
      Parameters:
      key - clave.
      value - valor.
      matters - , if false this property will not take effect to the result of toHashCode() method
      See Also:
      • invalid reference
        toHashCode()
    • putProperty

      public void putProperty(String key, double value)
      Añade una propiedad con un String como clave y un double como valor. La propiedad añadida afecta al valor calculado por toHashCode()
      Parameters:
      key - clave.
      value - valor.
      See Also:
      • invalid reference
        toHashCode()
    • getStringProperty

      public String getStringProperty(String key)
      Devuelve el String que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getDoubleProperty

      public double getDoubleProperty(String key)
      Devuelve el double que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getDoubleArrayProperty

      public double[] getDoubleArrayProperty(String key)
      Devuelve el array de doubles que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getObjectProperty

      public Object getObjectProperty(String key)
      Devuelve el Object que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getFloatArrayProperty

      public float[] getFloatArrayProperty(String key)
      Devuelve el array de float que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getLongArrayProperty

      public long[] getLongArrayProperty(String key)
      Devuelve el array de long que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getByteArrayProperty

      public byte[] getByteArrayProperty(String key)
      Devuelve el array de bytes que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getIntArrayProperty

      public int[] getIntArrayProperty(String key)
      Devuelve el array de enteros que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getBooleanArrayProperty

      public boolean[] getBooleanArrayProperty(String key)
      Devuelve el array de boolean que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getStringArrayProperty

      public String[] getStringArrayProperty(String key)
      Devuelve el array de String que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getBooleanProperty

      public boolean getBooleanProperty(String key)
      Devuelve el boolean que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getIntProperty

      public int getIntProperty(String key)
      Devuelve el entero que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getLongProperty

      public long getLongProperty(String key)
      Devuelve el long que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • getFloatProperty

      public float getFloatProperty(String key)
      Devuelve el float que corresponda a la clave que se pasa como parámetro.
      Parameters:
      key - clave
      Returns:
      valor.
      Throws:
      NotExistInXMLEntity - Lanza esta excepción si no se encuentra ningún elemento con esa clave.
    • setName

      public void setName(String name)
      Añade el nombre con clave name y valor el String que se pasa como parámetro.
      Parameters:
      name - nombre.
    • getName

      public String getName()
      Devuelve el nombre.
      Returns:
      nombre.
    • getImplementingClass

      public Class getImplementingClass()
      Devuelve la clase que implementa.
      Returns:
      clase.
    • addChild

      public void addChild(XMLEntity entity)
      Añade un hijo al XMLEntity.
      Parameters:
      entity - xml para añadir.
    • getChild

      public XMLEntity getChild(int i)
      Devuelve un hijo a partir de un indice.
      Parameters:
      i - indice.
      Returns:
      hijo.
    • getChildrenCount

      public int getChildrenCount()
      Devuelve el número de hijos que contiene el XMLEntity.
      Returns:
      número de hijos.
    • getXmlTag

      public XmlTag getXmlTag()
      Devuelve el xmltag.
      Returns:
      xmltag.
    • contains

      public boolean contains(String key)
    • getPropertyCount

      public int getPropertyCount()
    • getPropertyValue

      public String getPropertyValue(int index)
    • getPropertyName

      public String getPropertyName(int index)
    • remove

      public void remove(String key)
      Removes a property of this XML-Entity.
      Parameters:
      p - property.
    • removeChild

      public void removeChild(int index)
      Elimina el hijo n del XMLEntity.
      Parameters:
      indice - del hijo a eliminar.
    • removeAllChildren

      public void removeAllChildren()
      Elimina todos los hijos de XMLEntity.
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hash

      public long hash()

      hash() method is used to know if this XMLEntity can be considered as changed. At the loading of the XMLEntity tree you can invoke this method. The result of it is a int hash value calculated from the contents of this and its children. Then, if you store this value you can recognize if the XMLEntity has changed since the last time you called hash() just by comparing the previous calculated value to the new calculated one.

      Doing so, you can automatically detect if your persistent data has changed and you are required to save it.

      Notice that you can mark the properties that you are using during the session but you don't care about the values between sessions as properties which don't matter to detect if your XMLEntity has changed.

    • firstChild

      public XMLEntity firstChild(String key, String value)
      Devuelve el primer hijo que el valor de su propieda 'key' es igual a 'value'
      Parameters:
      key - propiedad a comparar
      value - valor a comparar
      Returns:
      XMLEntity hijo o null si no se encuentra
    • firstChild

      public XMLEntity firstChild(String value)
      Devuelve el primer hijo cuyo nombre es igual a 'value'. El nombre de un XMLEntity viene determinado por el valor del atributo 'name' del xml-tag.
      Parameters:
      value - valor a comparar
      Returns:
      XMLEntity hijo o null si no se encuentra
    • firstIndexOfChild

      public int firstIndexOfChild(String key, String value)
      Devuelve el indice del primer hijo que el valor de su propieda 'key' es igual a 'value'
      Parameters:
      key - propiedad a comparar
      value - valor a comparar
      Returns:
      int indice del hijo o -1 si no se encuentra
    • firstIndexOfChild

      public int firstIndexOfChild(String value)
      Devuelve el indice del primer hijo cuyo nombre es igual a 'value'. El nombre de un XMLEntity viene determinado por el valor del atributo 'name' del xml-tag.
      Parameters:
      value - valor a comparar
      Returns:
      int indice del hijo o -1 si no se encuentra
    • findChildren

      public Iterator findChildren(String key, String value)
      Devuelve un iterador sobre los hijos que cumplen la condicion que el valor de su propiedad 'key' es igual a 'value' El iterador no permite eliminacion
      Parameters:
      key - nombre de la propidedad
      value - valor de la propiedad
      Returns:
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • parse

      public static XMLEntity parse(String data) throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException
      Throws:
      org.exolab.castor.xml.MarshalException
      org.exolab.castor.xml.ValidationException