org.deduced.framework
Class DeducedModelLayerExtensionImplementation

java.lang.Object
  extended by org.deduced.AbstractPropertyCollection<K,V>
      extended by org.deduced.FixedPropertyInstanceCollection<java.lang.Object,java.lang.Object>
          extended by org.deduced.implementation.DeducedModelLayerImplementation
              extended by org.deduced.framework.DeducedModelLayerExtensionImplementation
All Implemented Interfaces:
java.lang.Cloneable, DeducedApplicationLayer, DeducedModelLayer, DeducedModelLayerExtension, DocumentedCollection, NamedPropertyCollection, PropertyCollection<java.lang.Object,java.lang.Object>, SchemaBasedApplicationLayer

public class DeducedModelLayerExtensionImplementation
extends DeducedModelLayerImplementation
implements DeducedModelLayerExtension

Default implementation of a deduced model layer with the extension required to bind a factory to the model. This model layer implementation has a hard coded schema analyzer tied to it.

Author:
Steve McDuff

Nested Class Summary
 
Nested classes/interfaces inherited from class org.deduced.AbstractPropertyCollection
AbstractPropertyCollection.CollectionToDeleteMonitor
 
Field Summary
private  SchemaAnalyzerBuilder analyzer
          schema analyzer used in this model layer.
private  ModelFactory modelFactory
          model factory used by this model layer
private static long serialVersionUID
          serial UID
 
Fields inherited from class org.deduced.implementation.DeducedModelLayerImplementation
KEY_SET
 
Fields inherited from class org.deduced.AbstractPropertyCollection
CHECK_DELETE_MODE_AUTOMATIC, CHECK_DELETE_MODE_MANUAL, COLLECTION_TO_DELETE
 
Fields inherited from interface org.deduced.DeducedModelLayer
COLLECTION_LIST_INSTANCE, DEDUCED_MODEL_LAYER_TYPE, DEPENDENT_MODEL_LIST_INSTANCE
 
Fields inherited from interface org.deduced.SchemaBasedApplicationLayer
SCHEMA_BASED_APPLICATION_LAYER_TYPE, SCHEMA_INFORMATION_INSTANCE, SCHEMA_LIST_INSTANCE
 
Fields inherited from interface org.deduced.DeducedApplicationLayer
DEDUCED_APPLICATION_LAYER_TYPE
 
Fields inherited from interface org.deduced.NamedPropertyCollection
NAME_INSTANCE, NAMED_PROPERTY_COLLECTION_TYPE
 
Fields inherited from interface org.deduced.DocumentedCollection
DOCUMENTATION_INSTANCE, DOCUMENTED_COLLECTION_TYPE
 
Fields inherited from interface org.deduced.PropertyCollection
PROPERTY_COLLECTION_TYPE
 
Constructor Summary
DeducedModelLayerExtensionImplementation()
          default constructor
DeducedModelLayerExtensionImplementation(boolean analyzeSchema)
          default constructor
 
Method Summary
 SchemaAnalyzerBuilder getAnalyzer()
          get the schema analyzer
 ModelFactory getModelFactory()
          get the model factory
 void setModelFactory(ModelFactory setModelFactory)
          Set the model factory to be used in this model.
 
Methods inherited from class org.deduced.implementation.DeducedModelLayerImplementation
asKeySet, clone, createInstancesAndTypes, createKeyList, equals, fillInstancesAndTypes, fillInstancesAndTypesFromSchema, fillTypeLists, getCollectionList, getCollectionList, getDependentModelList, getDependentModelList, getDocumentation, getDocumentation, getName, getName, getPropertyValue, getSchemaInformation, getSchemaInformation, getSchemaList, getSchemaList, resetListFixedInstances, setCollectionList, setCollectionList, setDependentModelList, setDependentModelList, setDocumentation, setDocumentation, setName, setName, setProperty, setSchemaInformation, setSchemaInformation, setSchemaList, setSchemaList, type
 
Methods inherited from class org.deduced.FixedPropertyInstanceCollection
addProperty, areKeysAssignedAutomatically, containsKey, getProperty, iterator, iteratorByValue, removeProperty, removePropertyInstance, removePropertyValue, size
 
Methods inherited from class org.deduced.AbstractPropertyCollection
activate, addListener, asPropertyList, asPropertyMap, asValueList, asValueMap, callObjectClone, classLogger, cleanNewlyClonedValue, clear, clearCollectionMonitoredForDelete, cloneCollection, containsInstance, containsValue, createUniqueID, delete, deleteClearAllProperties, deleteClearListenerList, deleteFireDeleteEvent, deleteProcessCompletedValidation, deleteRemoveLocalObjectFromParent, deleteValidateEmptyListenerList, deleteValidateNoPendingReferences, firePropertyChangeEvent, flushCollectionsWithNewParent, flushCollectionsWithNewParent, getActionInvoker, getCheckDeleteMode, getCheckDeleteRunner, getFixedInstance, getInstanceIdentityKey, hashCode, id, instanceKey, internalFirePropertyChangeEvent, invokeAction, isActivated, isDeleteCheckedOnClearParent, isEmpty, isListenerRegistered, isParentOrKeyNull, keyOnParent, parent, removeListener, requiresChangeEvent, setActionInvoker, setCheckDeleteMode, setCheckDeleteRunner, setDeleteCheckedOnClearParent, setFixedInstance, setParent, toString, updateReference, updateReferenceWithReferenceFlag, validateAllPropertyInstances, validateNoListener, validateNoParentRecursion, validateParentIsNull, validateParentIsNull, valueKey
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.deduced.DeducedModelLayer
getCollectionList, getDependentModelList, setCollectionList, setDependentModelList
 
Methods inherited from interface org.deduced.SchemaBasedApplicationLayer
getSchemaInformation, getSchemaList, setSchemaInformation, setSchemaList
 
Methods inherited from interface org.deduced.NamedPropertyCollection
getName, setName
 
Methods inherited from interface org.deduced.DocumentedCollection
getDocumentation, setDocumentation
 
Methods inherited from interface org.deduced.PropertyCollection
activate, addListener, addProperty, areKeysAssignedAutomatically, asKeySet, asPropertyList, asPropertyMap, asValueList, asValueMap, clear, clone, containsInstance, containsKey, containsValue, delete, getFixedInstance, getProperty, getPropertyValue, id, instanceKey, invokeAction, isActivated, isEmpty, isListenerRegistered, iterator, iteratorByValue, keyOnParent, parent, removeListener, removeProperty, removePropertyInstance, removePropertyValue, setFixedInstance, setParent, setProperty, size, type, valueKey
 

Field Detail

serialVersionUID

private static final long serialVersionUID
serial UID

See Also:
Constant Field Values

modelFactory

private ModelFactory modelFactory
model factory used by this model layer


analyzer

private SchemaAnalyzerBuilder analyzer
schema analyzer used in this model layer. The schema analyzer listens to the schema list tied to the model layer and breaks down a flat list of all the available types, their inheritance tree and their inherited types.

Constructor Detail

DeducedModelLayerExtensionImplementation

public DeducedModelLayerExtensionImplementation()
default constructor


DeducedModelLayerExtensionImplementation

public DeducedModelLayerExtensionImplementation(boolean analyzeSchema)
default constructor

Parameters:
analyzeSchema - if set to true, the schema will be analyzed
Method Detail

getAnalyzer

public SchemaAnalyzerBuilder getAnalyzer()
get the schema analyzer

Returns:
the schema analyzer

getModelFactory

public ModelFactory getModelFactory()
get the model factory

Specified by:
getModelFactory in interface DeducedModelLayerExtension
Returns:
the model factory used by this model layer.

setModelFactory

public void setModelFactory(ModelFactory setModelFactory)
Set the model factory to be used in this model. It is suggested to set the model factory once and never change it again. Resetting the factory will not change the objects that were already created in the model layer.

Parameters:
setModelFactory - the new model factory.