org.nakedobjects.metamodel.facets.object.validate
Class ValidateObjectFacetViaValidateMethod

java.lang.Object
  extended by org.nakedobjects.metamodel.facets.FacetAbstract
      extended by org.nakedobjects.metamodel.facets.object.validate.ValidateObjectFacetAbstract
          extended by org.nakedobjects.metamodel.facets.object.validate.ValidateObjectFacetViaValidateMethod
All Implemented Interfaces:
InteractionAdvisor, InteractionAdvisorFacet, Facet, ValidateObjectFacet, ValidatingInteractionAdvisor, ImperativeFacet

public class ValidateObjectFacetViaValidateMethod
extends ValidateObjectFacetAbstract
implements ImperativeFacet


Field Summary
 
Fields inherited from interface org.nakedobjects.metamodel.java5.ImperativeFacet
FILTER
 
Fields inherited from interface org.nakedobjects.metamodel.consent.InteractionAdvisorFacet
NOOP
 
Constructor Summary
ValidateObjectFacetViaValidateMethod(java.lang.reflect.Method method, FacetHolder holder)
           
 
Method Summary
 java.util.List<java.lang.reflect.Method> getMethods()
          The Methods invoked by this Facet.
 boolean impliesObjectChanged()
          Whether invoking this method requires an DomainObjectContainer.objectChanged(Object) to occur afterwards.
 boolean impliesResolve()
          Whether invoking this requires a DomainObjectContainer.resolve(Object) to occur first.
 java.lang.String invalidReason(NakedObject owningAdapter)
          The reason the object is invalid.
protected  java.lang.String toStringValues()
           
 
Methods inherited from class org.nakedobjects.metamodel.facets.object.validate.ValidateObjectFacetAbstract
invalidates, type
 
Methods inherited from class org.nakedobjects.metamodel.facets.FacetAbstract
alwaysReplace, facetType, getFacetHolder, getIdentified, getUnderlyingFacet, isDerived, isNoop, setFacetHolder, setUnderlyingFacet, toString, unwrapObject, unwrapString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.nakedobjects.metamodel.facets.Facet
alwaysReplace, facetType, getFacetHolder, getUnderlyingFacet, isDerived, isNoop, setFacetHolder, setUnderlyingFacet
 

Constructor Detail

ValidateObjectFacetViaValidateMethod

public ValidateObjectFacetViaValidateMethod(java.lang.reflect.Method method,
                                            FacetHolder holder)
Method Detail

getMethods

public java.util.List<java.lang.reflect.Method> getMethods()
Description copied from interface: ImperativeFacet
The Methods invoked by this Facet.

In the vast majority of cases there is only a single Method (eg wrapping a property's getter). However, some Facets, such as those for callbacks, could map to multiple Methods. Implementations that will return multiple Methods should implement the ImperativeFacetMulti sub-interface that provides the ability to add Methods as part of the interface API. For example:

 if (someFacet instanceof ImperativeFacetMulti) {
     ImperativeFacetMulti ifm = (ImperativeFacetMulti)someFacet;
     ifm.addMethod(...);
 }
 

Specified by:
getMethods in interface ImperativeFacet

impliesResolve

public boolean impliesResolve()
Description copied from interface: ImperativeFacet
Whether invoking this requires a DomainObjectContainer.resolve(Object) to occur first.

Specified by:
impliesResolve in interface ImperativeFacet

impliesObjectChanged

public boolean impliesObjectChanged()
Description copied from interface: ImperativeFacet
Whether invoking this method requires an DomainObjectContainer.objectChanged(Object) to occur afterwards.

Specified by:
impliesObjectChanged in interface ImperativeFacet
Returns:

invalidReason

public java.lang.String invalidReason(NakedObject owningAdapter)
Description copied from interface: ValidateObjectFacet
The reason the object is invalid.

. If the object is actually valid, should return null.

Specified by:
invalidReason in interface ValidateObjectFacet

toStringValues

protected java.lang.String toStringValues()
Overrides:
toStringValues in class FacetAbstract


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