package org.geotools.kml.v22.bindings;
import java.util.Map;
import javax.xml.namespace.QName;
import org.geotools.kml.v22.KML;
import org.geotools.xml.AbstractComplexBinding;
import org.geotools.xml.ElementInstance;
import org.geotools.xml.Node;
import org.opengis.feature.type.Name;
/**
* Binding object for the type http://www.opengis.net/kml/2.2:DataType.
*
* <p>
* <pre>
* <code>
* <complexType final="#all" name="DataType">
* <complexContent>
* <extension base="kml:AbstractObjectType">
* <sequence>
* <element minOccurs="0" ref="kml:displayName"/>
* <element ref="kml:value"/>
* <element maxOccurs="unbounded" minOccurs="0" ref="kml:DataExtension"/>
* </sequence>
* <attribute name="name" type="string"/>
* </extension>
* </complexContent>
* </complexType>
*
* </code>
* </pre>
* </p>
*
* @generated
*/
public class DataTypeBinding extends AbstractComplexBinding {
/**
* @generated
*/
public QName getTarget() {
return KML.DataType;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated modifiable
*/
public Class getType() {
return Map.Entry.class;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated modifiable
*/
public Object parse(ElementInstance instance, Node node, Object value)
throws Exception {
//TODO: implement and remove call to super
return super.parse(instance,node,value);
}
public Object getProperty(Object object, QName name) throws Exception {
Map.Entry<Name, Object> data = (Map.Entry<Name, Object>) object;
if ("name".equals(name.getLocalPart())) {
return data.getKey().toString();
}
if ("value".equals(name.getLocalPart())) {
return data.getValue().toString();
}
return super.getProperty(object, name);
}
}