org.nakedobjects.metamodel.services.container
Class DomainObjectContainerDefault

java.lang.Object
  extended by org.nakedobjects.metamodel.services.container.DomainObjectContainerDefault
All Implemented Interfaces:
DomainObjectContainer, RuntimeContextAware

public class DomainObjectContainerDefault
extends java.lang.Object
implements DomainObjectContainer, RuntimeContextAware


Constructor Summary
DomainObjectContainerDefault()
           
 
Method Summary
<T> java.util.List<T>
allInstances(java.lang.Class<T> type)
           
<T> java.util.List<T>
allMatches(java.lang.Class<T> cls, Filter<T> filter)
           
<T> java.util.List<T>
allMatches(java.lang.Class<T> type, java.lang.String title)
           
<T> java.util.List<T>
allMatches(java.lang.Class<T> type, T pattern)
           
<T> java.util.List<T>
allMatches(Query<T> query)
           
 void commit()
           
protected  NakedObject doCreateTransientInstance(NakedObjectSpecification spec)
          Factored out as a potential hook method for subclasses.
<T> T
firstMatch(java.lang.Class<T> cls, Filter<T> filter)
           
<T> T
firstMatch(java.lang.Class<T> type, java.lang.String title)
           
<T> T
firstMatch(java.lang.Class<T> type, T pattern)
           
<T> T
firstMatch(Query<T> query)
           
 boolean flush()
           
 RuntimeContext getRuntimeContext()
          The RuntimeContext, as provided by the constructor.
 UserMemento getUser()
           
 void informUser(java.lang.String message)
           
 boolean isPersistent(java.lang.Object domainObject)
           
 boolean isValid(java.lang.Object domainObject)
           
<T> T
newInstance(java.lang.Class<T> ofClass, java.lang.Object object)
          Returns a new instance of the specified class that has the sane persisted state as the specified object.
<T> T
newPersistentInstance(java.lang.Class<T> ofClass)
          Returns a new instance of the specified class that will have been persisted.
<T> T
newTransientInstance(java.lang.Class<T> ofClass)
           
 void objectChanged(java.lang.Object object)
           
 void persist(java.lang.Object transientObject)
           
 void persistIfNotAlready(java.lang.Object object)
           
 void raiseError(java.lang.String message)
           
 void remove(java.lang.Object persistentObject)
           
 void resolve(java.lang.Object parent)
           
 void resolve(java.lang.Object parent, java.lang.Object field)
           
 void setRuntimeContext(RuntimeContext runtimeContext)
           
<T> T
uniqueMatch(java.lang.Class<T> type, Filter<T> filter)
           
<T> T
uniqueMatch(java.lang.Class<T> type, java.lang.String title)
           
<T> T
uniqueMatch(java.lang.Class<T> type, T pattern)
           
<T> T
uniqueMatch(Query<T> query)
           
 java.lang.String validate(java.lang.Object domainObject)
           
 void warnUser(java.lang.String message)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DomainObjectContainerDefault

public DomainObjectContainerDefault()
Method Detail

newTransientInstance

public <T> T newTransientInstance(java.lang.Class<T> ofClass)
Specified by:
newTransientInstance in interface DomainObjectContainer
See Also:
doCreateTransientInstance(NakedObjectSpecification)

newPersistentInstance

public <T> T newPersistentInstance(java.lang.Class<T> ofClass)
Returns a new instance of the specified class that will have been persisted.

Specified by:
newPersistentInstance in interface DomainObjectContainer

newInstance

public <T> T newInstance(java.lang.Class<T> ofClass,
                         java.lang.Object object)
Returns a new instance of the specified class that has the sane persisted state as the specified object.

Specified by:
newInstance in interface DomainObjectContainer

doCreateTransientInstance

protected NakedObject doCreateTransientInstance(NakedObjectSpecification spec)
Factored out as a potential hook method for subclasses.


remove

public void remove(java.lang.Object persistentObject)
Specified by:
remove in interface DomainObjectContainer

resolve

public void resolve(java.lang.Object parent)
Specified by:
resolve in interface DomainObjectContainer

resolve

public void resolve(java.lang.Object parent,
                    java.lang.Object field)
Specified by:
resolve in interface DomainObjectContainer

objectChanged

public void objectChanged(java.lang.Object object)
Specified by:
objectChanged in interface DomainObjectContainer

flush

public boolean flush()
Specified by:
flush in interface DomainObjectContainer

commit

public void commit()
Specified by:
commit in interface DomainObjectContainer

isValid

public boolean isValid(java.lang.Object domainObject)
Specified by:
isValid in interface DomainObjectContainer

validate

public java.lang.String validate(java.lang.Object domainObject)
Specified by:
validate in interface DomainObjectContainer

isPersistent

public boolean isPersistent(java.lang.Object domainObject)
Specified by:
isPersistent in interface DomainObjectContainer

persist

public void persist(java.lang.Object transientObject)
Specified by:
persist in interface DomainObjectContainer

persistIfNotAlready

public void persistIfNotAlready(java.lang.Object object)
Specified by:
persistIfNotAlready in interface DomainObjectContainer

getUser

public UserMemento getUser()
Specified by:
getUser in interface DomainObjectContainer

informUser

public void informUser(java.lang.String message)
Specified by:
informUser in interface DomainObjectContainer

raiseError

public void raiseError(java.lang.String message)
Specified by:
raiseError in interface DomainObjectContainer

warnUser

public void warnUser(java.lang.String message)
Specified by:
warnUser in interface DomainObjectContainer

allInstances

public <T> java.util.List<T> allInstances(java.lang.Class<T> type)
Specified by:
allInstances in interface DomainObjectContainer

allMatches

public <T> java.util.List<T> allMatches(java.lang.Class<T> cls,
                                        Filter<T> filter)
Specified by:
allMatches in interface DomainObjectContainer

allMatches

public <T> java.util.List<T> allMatches(java.lang.Class<T> type,
                                        T pattern)
Specified by:
allMatches in interface DomainObjectContainer

allMatches

public <T> java.util.List<T> allMatches(java.lang.Class<T> type,
                                        java.lang.String title)
Specified by:
allMatches in interface DomainObjectContainer

allMatches

public <T> java.util.List<T> allMatches(Query<T> query)
Specified by:
allMatches in interface DomainObjectContainer

firstMatch

public <T> T firstMatch(java.lang.Class<T> cls,
                        Filter<T> filter)
Specified by:
firstMatch in interface DomainObjectContainer

firstMatch

public <T> T firstMatch(java.lang.Class<T> type,
                        T pattern)
Specified by:
firstMatch in interface DomainObjectContainer

firstMatch

public <T> T firstMatch(java.lang.Class<T> type,
                        java.lang.String title)
Specified by:
firstMatch in interface DomainObjectContainer

firstMatch

public <T> T firstMatch(Query<T> query)
Specified by:
firstMatch in interface DomainObjectContainer

uniqueMatch

public <T> T uniqueMatch(java.lang.Class<T> type,
                         Filter<T> filter)
Specified by:
uniqueMatch in interface DomainObjectContainer

uniqueMatch

public <T> T uniqueMatch(java.lang.Class<T> type,
                         T pattern)
Specified by:
uniqueMatch in interface DomainObjectContainer

uniqueMatch

public <T> T uniqueMatch(java.lang.Class<T> type,
                         java.lang.String title)
Specified by:
uniqueMatch in interface DomainObjectContainer

uniqueMatch

public <T> T uniqueMatch(Query<T> query)
Specified by:
uniqueMatch in interface DomainObjectContainer

getRuntimeContext

public RuntimeContext getRuntimeContext()
The RuntimeContext, as provided by the constructor.

Not API.


setRuntimeContext

public void setRuntimeContext(RuntimeContext runtimeContext)
Specified by:
setRuntimeContext in interface RuntimeContextAware


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