org.nakedobjects.metamodel.spec
Interface Specification

All Superinterfaces:
FacetHolder, Identified
All Known Subinterfaces:
NakedObjectAction, NakedObjectActionParameter, NakedObjectAssociation, NakedObjectFeature, NakedObjectMember, NakedObjectSpecification, OneToManyAssociation, OneToManyFeature, OneToOneActionParameter, OneToOneAssociation, OneToOneFeature, ParseableEntryActionParameter, ParseableEntryFeature, TypedSpecification
All Known Implementing Classes:
InstanceCollectionSpecification, IntrospectableSpecificationAbstract, JavaSpecification, NakedObjectActionImpl, NakedObjectActionParameterAbstract, NakedObjectActionParameterParseable, NakedObjectActionSet, NakedObjectAssociationAbstract, NakedObjectMemberAbstract, NakedObjectSpecificationNoMember, OneToManyAssociationImpl, OneToOneActionParameterImpl, OneToOneAssociationImpl

public interface Specification
extends Identified

Base interface for elements of the metamodel.

The most significant subinterfaces of this are NakedObjectSpecification and NakedObjectFeature (which brings in NakedObjectMember and NakedObjectActionParameter.

Introduces so that viewers can deal with abstract Instances of said.


Method Summary
 Instance getInstance(NakedObject nakedObject)
          Return an Instance of this Specification with respect to the provided NakedObject.
 
Methods inherited from interface org.nakedobjects.metamodel.spec.identifier.Identified
getIdentifier
 
Methods inherited from interface org.nakedobjects.metamodel.facets.FacetHolder
addFacet, addFacet, containsFacet, getFacet, getFacets, getFacetTypes, removeFacet, removeFacet
 

Method Detail

getInstance

Instance getInstance(NakedObject nakedObject)
Return an Instance of this Specification with respect to the provided NakedObject.

For example, if the Specification is a OneToOneAssociation, then is an Instance implementation representing the { NakedObject/ OneToOneAssociation } tuple.

Implementations are expected to use a double-dispatch back to the provided NakedObject (passing themselves as a parameter), using NakedObjectMM.getInstance(Specification).

Note: this method may throw an UnsupportedOperationException; see NakedObjectMM.getInstance(Specification) for details.



Copyright © 2001-2009 Naked Objects Group Ltd.. All Rights Reserved.