org.nakedobjects.metamodel.facets.object.dirty
Class MarkDirtyObjectFacetViaMethod

java.lang.Object
  extended by org.nakedobjects.metamodel.facets.FacetAbstract
      extended by org.nakedobjects.metamodel.facets.object.dirty.DirtyObjectFacetAbstract
          extended by org.nakedobjects.metamodel.facets.object.dirty.MarkDirtyObjectFacetAbstract
              extended by org.nakedobjects.metamodel.facets.object.dirty.MarkDirtyObjectFacetViaMethod
All Implemented Interfaces:
Facet, DirtyObjectFacet, MarkDirtyObjectFacet, ImperativeFacet

public class MarkDirtyObjectFacetViaMethod
extends MarkDirtyObjectFacetAbstract
implements ImperativeFacet


Field Summary
 
Fields inherited from interface org.nakedobjects.metamodel.java5.ImperativeFacet
FILTER
 
Constructor Summary
MarkDirtyObjectFacetViaMethod(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.
 void invoke(NakedObject object)
           
 
Methods inherited from class org.nakedobjects.metamodel.facets.object.dirty.MarkDirtyObjectFacetAbstract
type
 
Methods inherited from class org.nakedobjects.metamodel.facets.FacetAbstract
alwaysReplace, facetType, getFacetHolder, getIdentified, getUnderlyingFacet, isDerived, isNoop, setFacetHolder, setUnderlyingFacet, toString, toStringValues, 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

MarkDirtyObjectFacetViaMethod

public MarkDirtyObjectFacetViaMethod(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:

invoke

public void invoke(NakedObject object)
Specified by:
invoke in interface MarkDirtyObjectFacet


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