de.deepamehta.core
Interface Type
- All Superinterfaces:
- DeepaMehtaObject, Identifiable, JSONEnabled, Topic
- All Known Subinterfaces:
- AssociationType, TopicType
- All Known Implementing Classes:
- AttachedAssociationType, AttachedTopicType, AttachedType
public interface Type
- extends Topic
Methods inherited from interface de.deepamehta.core.DeepaMehtaObject |
delete, getAssociation, getAssociations, getChildTopics, getDatabaseVendorObject, getId, getProperty, getRelatedAssociation, getRelatedAssociations, getRelatedTopic, getRelatedTopics, getRelatedTopics, getRelatedTopics, getSimpleValue, getTypeUri, getUri, hasProperty, removeProperty, setChildTopics, setProperty, setSimpleValue, setSimpleValue, setSimpleValue, setSimpleValue, setSimpleValue, setTypeUri, setUri, update, updateChildTopic, updateChildTopics |
getDataTypeUri
String getDataTypeUri()
setDataTypeUri
void setDataTypeUri(String dataTypeUri)
getIndexModes
List<IndexMode> getIndexModes()
addIndexMode
void addIndexMode(IndexMode indexMode)
getAssocDefs
Collection<AssociationDefinition> getAssocDefs()
getAssocDef
AssociationDefinition getAssocDef(String childTypeUri)
hasAssocDef
boolean hasAssocDef(String childTypeUri)
addAssocDef
void addAssocDef(AssociationDefinitionModel assocDef)
updateAssocDef
void updateAssocDef(AssociationDefinitionModel assocDef)
- Note: in contrast to the other "update" methods this one updates the memory only, not the DB!
If you want to update memory and DB use
AssociationDefinition.update(de.deepamehta.core.model.AssociationDefinitionModel)
.
This method is here to support a special case: the user retypes an association which results in
a changed type definition. In this case the DB is already up-to-date and only the type's memory
representation must be updated. So, here the DB update is the *cause* for a necessary memory-update.
Normally the situation is vice-versa: the DB update is the necessary *effect* of a memory-update.
### TODO: get rid of this peculiar situation and remove this method. This might be achieved by using
the PRE_UPDATE_ASSOCIATION hook instead the POST_UPDATE_ASSOCIATION hook in the Type Editor module.
On pre-update we would perform a regular AssociationDefinition.update(de.deepamehta.core.model.AssociationDefinitionModel)
and suppress further
processing by returning false.
- Parameters:
assocDef
- the new association definition.
Note: in contrast to the other "update" methods this one does not support partial updates.
That is all association definition fields must be initialized.
removeAssocDef
void removeAssocDef(String childTypeUri)
getLabelConfig
List<String> getLabelConfig()
setLabelConfig
void setLabelConfig(List<String> labelConfig)
getViewConfig
ViewConfiguration getViewConfig()
getViewConfig
Object getViewConfig(String typeUri,
String settingUri)
getModel
TypeModel getModel()
- Specified by:
getModel
in interface DeepaMehtaObject
- Specified by:
getModel
in interface Topic
update
void update(TypeModel model)
Copyright © 2015. All Rights Reserved.