@Component public class EntityManagerImpl extends com.marklogic.client.ext.helper.LoggingObject implements EntityManager
Constructor and Description |
---|
EntityManagerImpl() |
EntityManagerImpl(HubConfig hubConfig)
For use outside of a Spring container.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addSubProperties(HubEntity entity,
java.util.List<HubEntity> entityDefinitions,
java.lang.String version)
Adds "sub" properties - i.e.
|
protected java.util.List<HubEntity> |
convertModelFilesToEntityDefinitions(java.util.List<HubEntity> modelFilesInProject)
An entity model file can contain one to many entity definitions.
|
void |
deleteEntity(java.lang.String entity) |
boolean |
deployFinalQueryOptions() |
java.util.HashMap<java.lang.Enum,java.lang.Boolean> |
deployQueryOptions()
Deploys the query option
|
boolean |
deployStagingQueryOptions() |
void |
generateExplorerQueryOptions()
Updates the explorer query options to the file system
|
java.util.List<HubEntity> |
getEntities() |
java.util.List<HubEntity> |
getEntities(java.lang.Boolean extendSubEntities) |
protected HubEntity |
getEntityFromEntityDefinitions(java.lang.String entityName,
java.util.List<HubEntity> entityDefinitions,
java.lang.String version,
java.lang.Boolean extendSubEntities) |
HubEntity |
getEntityFromProject(java.lang.String entityName) |
HubEntity |
getEntityFromProject(java.lang.String entityName,
java.lang.Boolean extendSubEntities) |
protected HubEntity |
getEntityFromProject(java.lang.String entityName,
java.util.List<HubEntity> modelFilesInProject,
java.lang.String version,
java.lang.Boolean extendSubEntities)
Extracted for unit testing so that it doesn't depend on entity model files existing within a project directory structure.
|
HubEntity |
getEntityFromProject(java.lang.String entityName,
java.lang.String version) |
HubEntity |
getEntityFromProject(java.lang.String entityName,
java.lang.String version,
java.lang.Boolean extendSubEntities) |
protected void |
removeCollationFromEntityReferenceProperties(com.fasterxml.jackson.databind.JsonNode node)
Per DHFPROD-3472, when a property in QS is changed to an entity reference, a collation is still defined for it.
|
boolean |
saveDbIndexes()
Updates the indexes for the entity on the filesystem
|
HubEntity |
saveEntity(HubEntity entity,
java.lang.Boolean rename) |
boolean |
savePii()
Scans the entities in the project for pii properties, and saves the
required ELS configurations to support those properties.
|
boolean |
saveQueryOptions()
Updates the query options to the file system
|
public EntityManagerImpl()
public EntityManagerImpl(HubConfig hubConfig)
hubConfig
- public boolean saveQueryOptions()
EntityManager
saveQueryOptions
in interface EntityManager
public void generateExplorerQueryOptions()
EntityManager
generateExplorerQueryOptions
in interface EntityManager
public java.util.HashMap<java.lang.Enum,java.lang.Boolean> deployQueryOptions()
EntityManager
deployQueryOptions
in interface EntityManager
public boolean deployFinalQueryOptions()
deployFinalQueryOptions
in interface EntityManager
public boolean deployStagingQueryOptions()
deployStagingQueryOptions
in interface EntityManager
public boolean saveDbIndexes()
EntityManager
saveDbIndexes
in interface EntityManager
public HubEntity getEntityFromProject(java.lang.String entityName)
getEntityFromProject
in interface EntityManager
public HubEntity getEntityFromProject(java.lang.String entityName, java.lang.String version)
getEntityFromProject
in interface EntityManager
public HubEntity getEntityFromProject(java.lang.String entityName, java.lang.Boolean extendSubEntities)
getEntityFromProject
in interface EntityManager
public HubEntity getEntityFromProject(java.lang.String entityName, java.lang.String version, java.lang.Boolean extendSubEntities)
getEntityFromProject
in interface EntityManager
protected HubEntity getEntityFromProject(java.lang.String entityName, java.util.List<HubEntity> modelFilesInProject, java.lang.String version, java.lang.Boolean extendSubEntities)
entityName
- modelFilesInProject
- version
- extendSubEntities
- protected HubEntity getEntityFromEntityDefinitions(java.lang.String entityName, java.util.List<HubEntity> entityDefinitions, java.lang.String version, java.lang.Boolean extendSubEntities)
entityName
- entityDefinitions
- each HubEntity in this list is expected to have a single definition in it. In addition, the
order of these definitions matters in case the version parameter is null.version
- extendSubEntities
- protected java.util.List<HubEntity> convertModelFilesToEntityDefinitions(java.util.List<HubEntity> modelFilesInProject)
modelFilesInProject
- protected void addSubProperties(HubEntity entity, java.util.List<HubEntity> entityDefinitions, java.lang.String version)
entity
- entityDefinitions
- version
- public java.util.List<HubEntity> getEntities()
getEntities
in interface EntityManager
public java.util.List<HubEntity> getEntities(java.lang.Boolean extendSubEntities)
getEntities
in interface EntityManager
public HubEntity saveEntity(HubEntity entity, java.lang.Boolean rename) throws java.io.IOException
saveEntity
in interface EntityManager
java.io.IOException
protected void removeCollationFromEntityReferenceProperties(com.fasterxml.jackson.databind.JsonNode node)
node
- public void deleteEntity(java.lang.String entity)
deleteEntity
in interface EntityManager
public boolean savePii()
EntityManager
savePii
in interface EntityManager