| Method from org.dom4j.datatype.DatatypeAttribute Detail: |
protected Object convertToValue(String txt) {
if (datatype instanceof DatabindableDatatype) {
DatabindableDatatype bindable = (DatabindableDatatype) datatype;
return bindable.createJavaObject(txt, this);
} else {
return datatype.createValue(txt, this);
}
}
|
public String getBaseUri() {
// XXXX: could we use a Document for this?
return null;
}
|
public Object getData() {
return data;
}
|
public String getNamespacePrefix(String uri) {
Element parentElement = getParent();
if (parentElement != null) {
Namespace namespace = parentElement.getNamespaceForURI(uri);
if (namespace != null) {
return namespace.getPrefix();
}
}
return null;
}
|
public Element getParent() {
return parent;
}
|
public QName getQName() {
return qname;
}
|
public String getValue() {
return text;
}
|
public XSDatatype getXSDatatype() {
return datatype;
}
Returns the MSV XSDatatype for this node |
public boolean isNotation(String notationName) {
// XXXX: no way to do this yet in dom4j so assume false
return false;
}
|
public boolean isReadOnly() {
return false;
}
|
public boolean isUnparsedEntity(String entityName) {
// XXXX: no way to do this yet in dom4j so assume valid
return true;
}
|
public String resolveNamespacePrefix(String prefix) {
// first lets see if this is our attribute's prefix
if (prefix.equals(getNamespacePrefix())) {
return getNamespaceURI();
} else {
Element parentElement = getParent();
if (parentElement != null) {
Namespace namespace = parentElement
.getNamespaceForPrefix(prefix);
if (namespace != null) {
return namespace.getURI();
}
}
}
return null;
}
|
public void setData(Object data) {
String s = datatype.convertToLexicalValue(data, this);
validate(s);
this.text = s;
this.data = data;
}
|
public void setParent(Element parent) {
this.parent = parent;
}
|
public void setValue(String value) {
validate(value);
this.text = value;
this.data = convertToValue(value);
}
|
public boolean supportsParent() {
return true;
}
|
public String toString() {
return getClass().getName() + hashCode() + " [Attribute: name "
+ getQualifiedName() + " value \"" + getValue() + "\" data: "
+ getData() + "]";
}
|
protected void validate(String txt) throws IllegalArgumentException {
try {
datatype.checkValid(txt, this);
} catch (DatatypeException e) {
throw new IllegalArgumentException(e.getMessage());
}
}
|