org.eclipse.jpt.jaxb.core.resource.java
Interface XmlElementRefAnnotation

All Superinterfaces:
Annotation, JavaResourceNode, Model, NestableAnnotation

public interface XmlElementRefAnnotation
extends NestableAnnotation

Corresponds to the JAXB annotation javax.xml.bind.annotation.XmlElementRef Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

Since:
3.0
Version:
3.0

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.jpt.jaxb.core.resource.java.JavaResourceNode
JavaResourceNode.Root
 
Field Summary
static java.lang.String ANNOTATION_NAME
           
static java.lang.String FULLY_QUALIFIED_TYPE_NAME_PROPERTY
           
static java.lang.String NAME_PROPERTY
           
static java.lang.String NAMESPACE_PROPERTY
           
static java.lang.String TYPE_PROPERTY
           
 
Method Summary
 java.lang.String getFullyQualifiedTypeName()
          Return the fully-qualified type name as resolved by the AST's bindings.
 java.lang.String getName()
          Corresponds to the 'name' element of the XmlElementRef annotation.
 java.lang.String getNamespace()
          Corresponds to the 'namespace' element of the XmlElementRef annotation.
 TextRange getNamespaceTextRange(org.eclipse.jdt.core.dom.CompilationUnit astRoot)
          Return the TextRange for the 'namespace' element.
 TextRange getNameTextRange(org.eclipse.jdt.core.dom.CompilationUnit astRoot)
          Return the TextRange for the 'name' element.
 java.lang.String getType()
          Corresponds to the 'type' element of the XmlElementRef annotation.
 TextRange getTypeTextRange(org.eclipse.jdt.core.dom.CompilationUnit astRoot)
          Return the TextRange for the 'type' element.
 void setName(java.lang.String name)
          Corresponds to the 'name' element of the XmlElementRef annotation.
 void setNamespace(java.lang.String namespace)
          Corresponds to the 'namespace' element of the XmlElementRef annotation.
 void setType(java.lang.String type)
          Corresponds to the 'type' element of the XmlElementRef annotation.
 
Methods inherited from interface org.eclipse.jpt.jaxb.core.resource.java.NestableAnnotation
moveAnnotation
 
Methods inherited from interface org.eclipse.jpt.jaxb.core.resource.java.Annotation
getAnnotationName, getAstAnnotation, newAnnotation, removeAnnotation
 
Methods inherited from interface org.eclipse.jpt.jaxb.core.resource.java.JavaResourceNode
getFile, getJavaResourceCompilationUnit, getRoot, getTextRange, initialize, synchronizeWith
 
Methods inherited from interface org.eclipse.jpt.common.utility.model.Model
addChangeListener, addCollectionChangeListener, addListChangeListener, addPropertyChangeListener, addStateChangeListener, addTreeChangeListener, removeChangeListener, removeCollectionChangeListener, removeListChangeListener, removePropertyChangeListener, removeStateChangeListener, removeTreeChangeListener
 

Field Detail

ANNOTATION_NAME

static final java.lang.String ANNOTATION_NAME
See Also:
Constant Field Values

NAME_PROPERTY

static final java.lang.String NAME_PROPERTY
See Also:
Constant Field Values

NAMESPACE_PROPERTY

static final java.lang.String NAMESPACE_PROPERTY
See Also:
Constant Field Values

TYPE_PROPERTY

static final java.lang.String TYPE_PROPERTY
See Also:
Constant Field Values

FULLY_QUALIFIED_TYPE_NAME_PROPERTY

static final java.lang.String FULLY_QUALIFIED_TYPE_NAME_PROPERTY
See Also:
Constant Field Values
Method Detail

getName

java.lang.String getName()
Corresponds to the 'name' element of the XmlElementRef annotation. Return null if the element does not exist in Java.


setName

void setName(java.lang.String name)
Corresponds to the 'name' element of the XmlElementRef annotation. Set to null to remove the element.


getNameTextRange

TextRange getNameTextRange(org.eclipse.jdt.core.dom.CompilationUnit astRoot)
Return the TextRange for the 'name' element. If the element does not exist return the TextRange for the XmlElementRef annotation.


getNamespace

java.lang.String getNamespace()
Corresponds to the 'namespace' element of the XmlElementRef annotation. Return null if the element does not exist in Java.


setNamespace

void setNamespace(java.lang.String namespace)
Corresponds to the 'namespace' element of the XmlElementRef annotation. Set to null to remove the element.


getNamespaceTextRange

TextRange getNamespaceTextRange(org.eclipse.jdt.core.dom.CompilationUnit astRoot)
Return the TextRange for the 'namespace' element. If the element does not exist return the TextRange for the XmlElementRef annotation.


getType

java.lang.String getType()
Corresponds to the 'type' element of the XmlElementRef annotation. Return null if the element does not exist in Java. Return the portion of the value preceding ".class".
     @XmlElementRef(type=Foo.class)
 
will return "Foo"


setType

void setType(java.lang.String type)
Corresponds to the 'type' element of the XmlElementRef annotation. Set to null to remove the element.


getTypeTextRange

TextRange getTypeTextRange(org.eclipse.jdt.core.dom.CompilationUnit astRoot)
Return the TextRange for the 'type' element. If the element does not exist return the TextRange for the XmlElementRef annotation.


getFullyQualifiedTypeName

java.lang.String getFullyQualifiedTypeName()
Return the fully-qualified type name as resolved by the AST's bindings.
     @XmlElementRef(type=Foo.class)
 
will return "model.Foo" if there is an import for model.Foo.

Returns: