org.granite.client.tide.data.spi
Interface DataManager

All Known Implementing Classes:
AbstractDataManager, JavaBeanDataManager, JavaFXDataManager

public interface DataManager

Author:
William DRAI

Nested Class Summary
static class DataManager.ChangeKind
           
static interface DataManager.TrackingHandler
           
static class DataManager.TrackingType
           
 
Method Summary
 void clear()
          Reset all currently tracked objects
 EntityDescriptor getEntityDescriptor(Object entity)
           
 Object getProperty(Object object, String propertyName)
           
 Map<String,Object> getPropertyValues(Object object, boolean includeReadOnly, boolean includeTransient)
           
 Map<String,Object> getPropertyValues(Object object, List<String> excludedProperties, boolean includeReadOnly, boolean includeTransient)
           
 TraversableResolver getTraversableResolver()
           
 boolean isDirty()
           
 ManagedPersistentCollection<Object> newPersistentCollection(Identifiable parent, String propertyName, LazyableCollection nextList)
           
 ManagedPersistentMap<Object,Object> newPersistentMap(Identifiable parent, String propertyName, LazyableCollection nextMap)
           
 void notifyConstraintViolations(Object entity, Set<ConstraintViolation<?>> violation)
           
 void notifyDirtyChange(boolean oldDirty, boolean dirty)
           
 void notifyEntityDirtyChange(Object entity, boolean oldDirtyEntity, boolean newDirtyEntity)
           
 void setInternalProperty(Object object, String propertyName, Object value)
           
 void setProperty(Object object, String propertyName, Object oldValue, Object newValue)
           
 void setTrackingHandler(DataManager.TrackingHandler trackingHandler)
           
 void startTracking(Object previous, Object parent)
          Start tracking for specific object / parent
 void stopTracking(Object previous, Object parent)
          Stop tracking for specific object / parent
 

Method Detail

setTrackingHandler

void setTrackingHandler(DataManager.TrackingHandler trackingHandler)

isDirty

boolean isDirty()

getEntityDescriptor

EntityDescriptor getEntityDescriptor(Object entity)

getProperty

Object getProperty(Object object,
                   String propertyName)

setProperty

void setProperty(Object object,
                 String propertyName,
                 Object oldValue,
                 Object newValue)

setInternalProperty

void setInternalProperty(Object object,
                         String propertyName,
                         Object value)

getPropertyValues

Map<String,Object> getPropertyValues(Object object,
                                     boolean includeReadOnly,
                                     boolean includeTransient)

getPropertyValues

Map<String,Object> getPropertyValues(Object object,
                                     List<String> excludedProperties,
                                     boolean includeReadOnly,
                                     boolean includeTransient)

newPersistentCollection

ManagedPersistentCollection<Object> newPersistentCollection(Identifiable parent,
                                                            String propertyName,
                                                            LazyableCollection nextList)

newPersistentMap

ManagedPersistentMap<Object,Object> newPersistentMap(Identifiable parent,
                                                     String propertyName,
                                                     LazyableCollection nextMap)

startTracking

void startTracking(Object previous,
                   Object parent)
Start tracking for specific object / parent

Parameters:
previous - previously existing object in the entity manager cache (null if no existing object)
parent - parent object for collections

stopTracking

void stopTracking(Object previous,
                  Object parent)
Stop tracking for specific object / parent

Parameters:
previous - previously existing object in the entity manager cache (null if no existing object)
parent - parent object for collections

notifyDirtyChange

void notifyDirtyChange(boolean oldDirty,
                       boolean dirty)

notifyEntityDirtyChange

void notifyEntityDirtyChange(Object entity,
                             boolean oldDirtyEntity,
                             boolean newDirtyEntity)

getTraversableResolver

TraversableResolver getTraversableResolver()

notifyConstraintViolations

void notifyConstraintViolations(Object entity,
                                Set<ConstraintViolation<?>> violation)

clear

void clear()
Reset all currently tracked objects