org.eclipse.emf.ecore
Interface EStructuralFeature

All Superinterfaces:
EModelElement, ENamedElement, EObject, ETypedElement, Notifier
All Known Subinterfaces:
EAttribute, EReference, EStructuralFeature.Internal
All Known Implementing Classes:
EAttributeImpl, EReferenceImpl, EStructuralFeatureImpl

public interface EStructuralFeature
extends ETypedElement

A representation of the model object 'EStructural Feature'.

The following features are supported:

See Also:
EcorePackage.getEStructuralFeature()

Nested Class Summary
static interface EStructuralFeature.Internal
          Internal API implemented by all features.
static interface EStructuralFeature.Setting
          A representation of a value held by a feature of an object.
 
Field Summary
 
Fields inherited from interface org.eclipse.emf.ecore.ETypedElement
UNBOUNDED_MULTIPLICITY, UNSPECIFIED_MULTIPLICITY
 
Method Summary
 java.lang.Class<?> getContainerClass()
          Returns the instance class of the containing class.
 java.lang.Object getDefaultValue()
          Returns the value of the 'Default Value' attribute
 java.lang.String getDefaultValueLiteral()
          Returns the value of the 'Default Value Literal' attribute
 EClass getEContainingClass()
          Returns the value of the 'EContaining Class' container reference.
 int getFeatureID()
          Returns the ID relative to the containing class.
 boolean isChangeable()
          Returns the value of the 'Changeable' attribute.
 boolean isDerived()
          Returns the value of the 'Derived' attribute
 boolean isTransient()
          Returns the value of the 'Transient' attribute
 boolean isUnsettable()
          Returns the value of the 'Unsettable' attribute
 boolean isVolatile()
          Returns the value of the 'Volatile' attribute
 void setChangeable(boolean value)
          Sets the value of the 'Changeable' attribute
 void setDefaultValue(java.lang.Object value)
          A convenience method for setting the 'Default Value Literal' attribute.
 void setDefaultValueLiteral(java.lang.String value)
          Sets the value of the 'Default Value Literal' attribute
 void setDerived(boolean value)
          Sets the value of the 'Derived' attribute
 void setTransient(boolean value)
          Sets the value of the 'Transient' attribute
 void setUnsettable(boolean value)
          Sets the value of the 'Unsettable' attribute
 void setVolatile(boolean value)
          Sets the value of the 'Volatile' attribute
 
Methods inherited from interface org.eclipse.emf.ecore.ETypedElement
getEGenericType, getEType, getLowerBound, getUpperBound, isMany, isOrdered, isRequired, isUnique, setEGenericType, setEType, setLowerBound, setOrdered, setUnique, setUpperBound
 
Methods inherited from interface org.eclipse.emf.ecore.ENamedElement
getName, setName
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 

Method Detail

isTransient

boolean isTransient()
Returns the value of the 'Transient' attribute.

Returns:
the value of the 'Transient' attribute.
See Also:
setTransient(boolean), EcorePackage.getEStructuralFeature_Transient()

setTransient

void setTransient(boolean value)
Sets the value of the 'Transient' attribute.

Parameters:
value - the new value of the 'Transient' attribute.
See Also:
isTransient()

isVolatile

boolean isVolatile()
Returns the value of the 'Volatile' attribute.

Returns:
the value of the 'Volatile' attribute.
See Also:
setVolatile(boolean), EcorePackage.getEStructuralFeature_Volatile()

setVolatile

void setVolatile(boolean value)
Sets the value of the 'Volatile' attribute.

Parameters:
value - the new value of the 'Volatile' attribute.
See Also:
isVolatile()

isChangeable

boolean isChangeable()
Returns the value of the 'Changeable' attribute. The default value is "true".

Returns:
the value of the 'Changeable' attribute.
See Also:
setChangeable(boolean), EcorePackage.getEStructuralFeature_Changeable()

setChangeable

void setChangeable(boolean value)
Sets the value of the 'Changeable' attribute.

Parameters:
value - the new value of the 'Changeable' attribute.
See Also:
isChangeable()

getDefaultValueLiteral

java.lang.String getDefaultValueLiteral()
Returns the value of the 'Default Value Literal' attribute.

It represents the serialized form of the default value.

Returns:
the value of the 'Default Value Literal' attribute.
See Also:
setDefaultValueLiteral(String), EcorePackage.getEStructuralFeature_DefaultValueLiteral()

setDefaultValueLiteral

void setDefaultValueLiteral(java.lang.String value)
Sets the value of the 'Default Value Literal' attribute.

Parameters:
value - the new value of the 'Default Value Literal' attribute.
See Also:
getDefaultValueLiteral()

getDefaultValue

java.lang.Object getDefaultValue()
Returns the value of the 'Default Value' attribute.

It represents the default value that feature must take on when an explicit value has not been set. Specifically, it may be non-null if the feature has an eType. If the defaultValueLiteral is null, it is simply the eType's intrinsic default value. Otherwise, if the eType is an EDataType and the defaultValueLiteral is non-null, it is the object created by the factory's EFactory.createFromString(org.eclipse.emf.ecore.EDataType, java.lang.String) method when invoked with those two objects as parameters.

Returns:
the value of the 'Default Value' attribute.
See Also:
EcorePackage.getEStructuralFeature_DefaultValue()

setDefaultValue

void setDefaultValue(java.lang.Object value)
A convenience method for setting the 'Default Value Literal' attribute.

If the feature has an eType that is an EDataType, the specified value is converted to a string using the factory's EFactory.convertToString(org.eclipse.emf.ecore.EDataType, java.lang.Object) method, and the defaultValueLiteral is set to the result.

See Also:
setDefaultValueLiteral(java.lang.String)

isUnsettable

boolean isUnsettable()
Returns the value of the 'Unsettable' attribute.

An unsettable feature explicitly models the state of being set verses being unset and so provides a direct implementation for the reflective eIsSet. It is only applicable single-valued features. One effect of this setting is that, in addition to generating the methods getXyz and setXyz (if the feature is changeable), a reflective generator will generate the methods isSetXyz and unsetXyz.

Returns:
the value of the 'Unsettable' attribute.
See Also:
setUnsettable(boolean), EcorePackage.getEStructuralFeature_Unsettable()

setUnsettable

void setUnsettable(boolean value)
Sets the value of the 'Unsettable' attribute.

Parameters:
value - the new value of the 'Unsettable' attribute.
See Also:
isUnsettable()

isDerived

boolean isDerived()
Returns the value of the 'Derived' attribute.

A derived feature typically computes its value from those of other features. It will typically be transient and will often be volatile and not changeable. The default copier won't copy it.

Returns:
the value of the 'Derived' attribute.
See Also:
setDerived(boolean), EcorePackage.getEStructuralFeature_Derived()

setDerived

void setDerived(boolean value)
Sets the value of the 'Derived' attribute.

Parameters:
value - the new value of the 'Derived' attribute.
See Also:
isDerived()

getEContainingClass

EClass getEContainingClass()
Returns the value of the 'EContaining Class' container reference. It is bidirectional and its opposite is 'EStructural Features'.

It represents the containing class of this feature.

Returns:
the value of the 'EContaining Class' container reference.
See Also:
EcorePackage.getEStructuralFeature_EContainingClass(), EClass.getEStructuralFeatures()

getFeatureID

int getFeatureID()
Returns the ID relative to the containing class.

Returns:
the relative ID.

getContainerClass

java.lang.Class<?> getContainerClass()
Returns the instance class of the containing class.

Returns:
the instance class of the containing class.

Copyright 2001-2006 IBM Corporation and others.
All Rights Reserved.