javax.xml.bind.annotation.XmlValue Java Examples

The following examples show how to use javax.xml.bind.annotation.XmlValue. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: TaskParameter.java    From proarc with GNU General Public License v3.0 6 votes vote down vote up
@XmlValue
/* Jackson 2.0 ignores @XmlValue for methods and thus @JsonProperty. */
@JsonProperty
public String getValue() {
    String value = null;
    if (valueType == ValueType.NUMBER) {
        BigDecimal n = getValueNumber();
        value = n == null ? null : n.toPlainString();
    } else if (valueType == ValueType.DATETIME) {
        Timestamp t = getValueDateTime();
        if (t != null) {
            value = ISODateTimeFormat.dateTime().withZoneUTC().print(t.getTime());
        }
    } else if (valueType == ValueType.STRING) {
        value = getValueString();
    } else {
        throw new IllegalStateException("Unsupported type: " + valueType);
    }
    return value;
}
 
Example #2
Source File: AbstractField.java    From openjdk-8 with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Annotate the field according to the recipes given as {@link CPropertyInfo}.
 */
protected void annotate( JAnnotatable field ) {

    assert(field!=null);

    /*
    TODO: consider moving this logic to somewhere else
    so that it can be better shared, for how a field gets
    annotated doesn't really depend on how we generate accessors.

    so perhaps we should separate those two.
    */

    // TODO: consider a visitor
    if (prop instanceof CAttributePropertyInfo) {
        annotateAttribute(field);
    } else if (prop instanceof CElementPropertyInfo) {
        annotateElement(field);
    } else if (prop instanceof CValuePropertyInfo) {
        field.annotate(XmlValue.class);
    } else if (prop instanceof CReferencePropertyInfo) {
        annotateReference(field);
    }

    outline.parent().generateAdapterIfNecessary(prop,field);

    QName st = prop.getSchemaType();
    if(st!=null)
        field.annotate2(XmlSchemaTypeWriter.class)
            .name(st.getLocalPart())
            .namespace(st.getNamespaceURI());

    if(prop.inlineBinaryData())
        field.annotate(XmlInlineBinaryData.class);
}
 
Example #3
Source File: DOMFactory.java    From c2mon with GNU Lesser General Public License v3.0 5 votes vote down vote up
/**
 * Generates an xml element from this pojo. Translating the fields like described
 * in the class description.
 * @param document The document in which the nodes should be.
 * @param rootName This is to use another name for the root element than the
 * simple class name.
 * @param pojo The pojo to take the fields from.
 * @param attributes The fields which should be used as attributes and not
 * as elements.
 * @return The create element representing the provided pojo.
 * @throws ParserConfigurationException Might throw a ParserConfigurationException.
 * @throws IllegalAccessException Might throw a IllegalAccessException.
 * @throws InstantiationException Might throw a InstantiationException.
 */
public Element generateSimpleElement(final Document document, final String rootName,
        final Object pojo, final List<String> attributes) 
        throws ParserConfigurationException,
        IllegalAccessException, InstantiationException {
    Element rootNode = document.createElementNS(getDefaultNamespace(), rootName);
    List<Field> fields = getNonTransientSimpleFields(pojo.getClass());
    for (Field field : fields) {            
        field.setAccessible(true);
        String fieldName = field.getName();
                                
        if (field.get(pojo) != null) {
            
            if (!attributes.contains(fieldName)) {
                
                Element element = document.createElementNS(getDefaultNamespace(), getElementName(field));
                
                // handle CDATAs
                if (field.isAnnotationPresent(XmlValue.class)) {
                    CDATASection cdata = document.createCDATASection(field.get(pojo).toString());
                    element.appendChild(cdata);
                }
                else {
                  element.setTextContent(field.get(pojo).toString());                    
                }
                
                rootNode.appendChild(element);                    
            }
            else {
                rootNode.setAttribute(getAttributeName(field), field.get(pojo).toString());
            }
        }
    }
    return rootNode;
}
 
Example #4
Source File: AbstractField.java    From openjdk-jdk9 with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Annotate the field according to the recipes given as {@link CPropertyInfo}.
 */
protected void annotate( JAnnotatable field ) {

    assert(field!=null);

    /*
    TODO: consider moving this logic to somewhere else
    so that it can be better shared, for how a field gets
    annotated doesn't really depend on how we generate accessors.

    so perhaps we should separate those two.
    */

    // TODO: consider a visitor
    if (prop instanceof CAttributePropertyInfo) {
        annotateAttribute(field);
    } else if (prop instanceof CElementPropertyInfo) {
        annotateElement(field);
    } else if (prop instanceof CValuePropertyInfo) {
        field.annotate(XmlValue.class);
    } else if (prop instanceof CReferencePropertyInfo) {
        annotateReference(field);
    }

    outline.parent().generateAdapterIfNecessary(prop,field);

    QName st = prop.getSchemaType();
    if(st!=null)
        field.annotate2(XmlSchemaTypeWriter.class)
            .name(st.getLocalPart())
            .namespace(st.getNamespaceURI());

    if(prop.inlineBinaryData())
        field.annotate(XmlInlineBinaryData.class);
}
 
Example #5
Source File: AbstractField.java    From TencentKona-8 with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Annotate the field according to the recipes given as {@link CPropertyInfo}.
 */
protected void annotate( JAnnotatable field ) {

    assert(field!=null);

    /*
    TODO: consider moving this logic to somewhere else
    so that it can be better shared, for how a field gets
    annotated doesn't really depend on how we generate accessors.

    so perhaps we should separate those two.
    */

    // TODO: consider a visitor
    if (prop instanceof CAttributePropertyInfo) {
        annotateAttribute(field);
    } else if (prop instanceof CElementPropertyInfo) {
        annotateElement(field);
    } else if (prop instanceof CValuePropertyInfo) {
        field.annotate(XmlValue.class);
    } else if (prop instanceof CReferencePropertyInfo) {
        annotateReference(field);
    }

    outline.parent().generateAdapterIfNecessary(prop,field);

    QName st = prop.getSchemaType();
    if(st!=null)
        field.annotate2(XmlSchemaTypeWriter.class)
            .name(st.getLocalPart())
            .namespace(st.getNamespaceURI());

    if(prop.inlineBinaryData())
        field.annotate(XmlInlineBinaryData.class);
}
 
Example #6
Source File: AbstractField.java    From hottub with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Annotate the field according to the recipes given as {@link CPropertyInfo}.
 */
protected void annotate( JAnnotatable field ) {

    assert(field!=null);

    /*
    TODO: consider moving this logic to somewhere else
    so that it can be better shared, for how a field gets
    annotated doesn't really depend on how we generate accessors.

    so perhaps we should separate those two.
    */

    // TODO: consider a visitor
    if (prop instanceof CAttributePropertyInfo) {
        annotateAttribute(field);
    } else if (prop instanceof CElementPropertyInfo) {
        annotateElement(field);
    } else if (prop instanceof CValuePropertyInfo) {
        field.annotate(XmlValue.class);
    } else if (prop instanceof CReferencePropertyInfo) {
        annotateReference(field);
    }

    outline.parent().generateAdapterIfNecessary(prop,field);

    QName st = prop.getSchemaType();
    if(st!=null)
        field.annotate2(XmlSchemaTypeWriter.class)
            .name(st.getLocalPart())
            .namespace(st.getNamespaceURI());

    if(prop.inlineBinaryData())
        field.annotate(XmlInlineBinaryData.class);
}
 
Example #7
Source File: AbstractField.java    From openjdk-8-source with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Annotate the field according to the recipes given as {@link CPropertyInfo}.
 */
protected void annotate( JAnnotatable field ) {

    assert(field!=null);

    /*
    TODO: consider moving this logic to somewhere else
    so that it can be better shared, for how a field gets
    annotated doesn't really depend on how we generate accessors.

    so perhaps we should separate those two.
    */

    // TODO: consider a visitor
    if (prop instanceof CAttributePropertyInfo) {
        annotateAttribute(field);
    } else if (prop instanceof CElementPropertyInfo) {
        annotateElement(field);
    } else if (prop instanceof CValuePropertyInfo) {
        field.annotate(XmlValue.class);
    } else if (prop instanceof CReferencePropertyInfo) {
        annotateReference(field);
    }

    outline.parent().generateAdapterIfNecessary(prop,field);

    QName st = prop.getSchemaType();
    if(st!=null)
        field.annotate2(XmlSchemaTypeWriter.class)
            .name(st.getLocalPart())
            .namespace(st.getNamespaceURI());

    if(prop.inlineBinaryData())
        field.annotate(XmlInlineBinaryData.class);
}
 
Example #8
Source File: MainFindOccurrances.java    From ph-ubl with Apache License 2.0 5 votes vote down vote up
/**
 * Create an XML name from the passed field. It uses the {@link XmlElement},
 * {@link XmlAttribute} and {@link XmlValue} annotations to differentiate.
 *
 * @param aField
 *        Source field
 * @return Never <code>null</code>.
 */
@Nonnull
public static String _getXMLName (@Nonnull final Field aField)
{
  final XmlElement aElement = aField.getAnnotation (XmlElement.class);
  if (aElement != null)
    return "/" + aElement.name ();
  final XmlAttribute aAttr = aField.getAnnotation (XmlAttribute.class);
  if (aAttr != null)
    return "/@" + aAttr.name ();
  if (aField.getAnnotation (XmlValue.class) != null)
    return "/value()";
  throw new IllegalStateException ("Field is neither XML element nor attribute nor value: " + aField);
}
 
Example #9
Source File: AbstractField.java    From jdk8u60 with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Annotate the field according to the recipes given as {@link CPropertyInfo}.
 */
protected void annotate( JAnnotatable field ) {

    assert(field!=null);

    /*
    TODO: consider moving this logic to somewhere else
    so that it can be better shared, for how a field gets
    annotated doesn't really depend on how we generate accessors.

    so perhaps we should separate those two.
    */

    // TODO: consider a visitor
    if (prop instanceof CAttributePropertyInfo) {
        annotateAttribute(field);
    } else if (prop instanceof CElementPropertyInfo) {
        annotateElement(field);
    } else if (prop instanceof CValuePropertyInfo) {
        field.annotate(XmlValue.class);
    } else if (prop instanceof CReferencePropertyInfo) {
        annotateReference(field);
    }

    outline.parent().generateAdapterIfNecessary(prop,field);

    QName st = prop.getSchemaType();
    if(st!=null)
        field.annotate2(XmlSchemaTypeWriter.class)
            .name(st.getLocalPart())
            .namespace(st.getNamespaceURI());

    if(prop.inlineBinaryData())
        field.annotate(XmlInlineBinaryData.class);
}
 
Example #10
Source File: DefaultRecord.java    From sis with Apache License 2.0 5 votes vote down vote up
/**
 * Returns the record value as a string.
 */
@XmlValue
private String getValue() {
    if (values != null) {
        switch (Array.getLength(values)) {
            case 0:  break;
            case 1:  return String.valueOf(Array.get(values, 0));
            default: return definition.toString(null, values);
        }
    }
    return null;
}
 
Example #11
Source File: DefaultRecordType.java    From sis with Apache License 2.0 5 votes vote down vote up
/**
 * Returns the record type value as a string. Current implementation returns the members with
 * one member per line, but it may change in any future version for adapting to common practice.
 */
@XmlValue
private String getValue() {
    switch (size()) {
        case 0:  return null;
        case 1:  return String.valueOf(memberTypes[0]);
        default: return toString(null, null);
    }
}
 
Example #12
Source File: AbstractField.java    From openjdk-jdk8u with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Annotate the field according to the recipes given as {@link CPropertyInfo}.
 */
protected void annotate( JAnnotatable field ) {

    assert(field!=null);

    /*
    TODO: consider moving this logic to somewhere else
    so that it can be better shared, for how a field gets
    annotated doesn't really depend on how we generate accessors.

    so perhaps we should separate those two.
    */

    // TODO: consider a visitor
    if (prop instanceof CAttributePropertyInfo) {
        annotateAttribute(field);
    } else if (prop instanceof CElementPropertyInfo) {
        annotateElement(field);
    } else if (prop instanceof CValuePropertyInfo) {
        field.annotate(XmlValue.class);
    } else if (prop instanceof CReferencePropertyInfo) {
        annotateReference(field);
    }

    outline.parent().generateAdapterIfNecessary(prop,field);

    QName st = prop.getSchemaType();
    if(st!=null)
        field.annotate2(XmlSchemaTypeWriter.class)
            .name(st.getLocalPart())
            .namespace(st.getNamespaceURI());

    if(prop.inlineBinaryData())
        field.annotate(XmlInlineBinaryData.class);
}
 
Example #13
Source File: AnnotatePropertyVisitor.java    From jaxb2-basics with BSD 2-Clause "Simplified" License 4 votes vote down vote up
public Void visitValuePropertyInfo(MValuePropertyInfo<NType, NClass> info) {
	this.annotatable.annotate(XmlValue.class);
	return null;
}
 
Example #14
Source File: ClientName.java    From sissi with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getText() {
	return this.text;
}
 
Example #15
Source File: ClientVersion.java    From sissi with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getText() {
	return this.text;
}
 
Example #16
Source File: ExtendsClass.java    From jaxb2-basics with BSD 2-Clause "Simplified" License 4 votes vote down vote up
@XmlValue
@XmlJavaTypeAdapter(value = CollapsedStringAdapter.class)
String getClassName() {
	return className;
}
 
Example #17
Source File: Last.java    From sissi with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getText() {
	return this.text;
}
 
Example #18
Source File: Reason.java    From sissi with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getText() {
	return this.text != null && !this.text.isEmpty() ? this.text : "";
}
 
Example #19
Source File: Subject.java    From sissi with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getText() {
	return this.text.toString();
}
 
Example #20
Source File: Unique.java    From sissi with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getValue() {
	return UUID.randomUUID().toString();
}
 
Example #21
Source File: Thread.java    From sissi with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getText() {
	return this.text;
}
 
Example #22
Source File: XmlHttpHeader.java    From activemq-artemis with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getValue() {
   return value;
}
 
Example #23
Source File: IOTServerConfiguration.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@XmlValue()
public String getContextPath() {
    return contextPath;
}
 
Example #24
Source File: Template.java    From adam with GNU Lesser General Public License v3.0 4 votes vote down vote up
@XmlValue
@XmlValueExtension
public void setSource(@Nonnull String source) {
    _source = source;
}
 
Example #25
Source File: JaxbSearch.java    From documentum-rest-client-java with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getValue() {
    return value;
}
 
Example #26
Source File: RosterNickname.java    From sissi with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getText() {
	return this.text;
}
 
Example #27
Source File: JaxbSearch.java    From documentum-rest-client-java with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getValue() {
    return value;
}
 
Example #28
Source File: JaxbSearch.java    From documentum-rest-client-java with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getProperty() {
    return property;
}
 
Example #29
Source File: JaxbPropertyValueAssistQuery.java    From documentum-rest-client-java with Apache License 2.0 4 votes vote down vote up
@XmlValue
public String getQueryExpression() {
    return queryExpression;
}
 
Example #30
Source File: XmlValueQuick.java    From openjdk-8 with GNU General Public License v2.0 4 votes vote down vote up
public Class<XmlValue> annotationType() {
    return XmlValue.class;
}