org.lexevs.dao.database.service.codingscheme
Class VersionableEventCodingSchemeService

java.lang.Object
  extended by org.lexevs.dao.database.service.event.DatabaseServiceEventSupport
      extended by org.lexevs.dao.database.service.AbstractDatabaseService
          extended by org.lexevs.dao.database.service.RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
              extended by org.lexevs.dao.database.service.codingscheme.VersionableEventCodingSchemeService
All Implemented Interfaces:
CodingSchemeService
Direct Known Subclasses:
VersionableEventCodingSchemeServiceTest.TestAnnotatedCodingSchemeService

public class VersionableEventCodingSchemeService
extends RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
implements CodingSchemeService

The Class VersionableEventCodingSchemeService.

Author:
Kevin Peterson

Nested Class Summary
 
Nested classes/interfaces inherited from class org.lexevs.dao.database.service.RevisableAbstractDatabaseService
RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId, RevisableAbstractDatabaseService.ParentUidReferencingId, RevisableAbstractDatabaseService.UpdateTemplate
 
Field Summary
 
Fields inherited from interface org.lexevs.dao.database.service.codingscheme.CodingSchemeService
INSERT_CODINGSCHEME_DEPENDENT_CHANGES_ERROR, INSERT_CODINGSCHEME_ERROR, INSERT_CODINGSCHEME_URI_ERROR, INSERT_CODINGSCHEME_VERSIONABLE_CHANGES_ERROR, REMOVE_CODINGSCHEME_ERROR, UPDATE_CODINGSCHEME_ENTRYSTATE_ERROR, UPDATE_CODINGSCHEME_ERROR, UPDATE_CODINGSCHEME_URI_ERROR
 
Constructor Summary
VersionableEventCodingSchemeService()
           
 
Method Summary
protected  CodingScheme addDependentAttributesByRevisionId(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, java.lang.String entryUid, CodingScheme entry, java.lang.String revisionId)
           
protected  void doInsertDependentChanges(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, CodingScheme revisedEntry)
          Do insert dependent changes.
protected  boolean entryStateExists(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, java.lang.String entryStateUid)
          Entry state exists.
 CodingScheme getCodingSchemeByUriAndVersion(java.lang.String uri, java.lang.String version)
          Gets the coding scheme by uri and version.
 CodingSchemeSummary getCodingSchemeSummaryByUriAndVersion(java.lang.String uri, java.lang.String version)
          Gets the coding scheme summary by uri and version.
 CodingScheme getCompleteCodingScheme(java.lang.String codingSchemeUri, java.lang.String codingSchemeVersion)
          Returns entire codingScheme.
protected  CodingScheme getCurrentEntry(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, java.lang.String entryUId)
          Gets the current entry.
protected  java.lang.String getCurrentEntryStateUid(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, java.lang.String entryUid)
          Gets the current entry state uid.
 EntityService getEntityService()
           
protected  java.lang.String getEntryUid(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, CodingScheme entry)
          Gets the entry uid.
protected  CodingScheme getHistoryEntryByRevisionId(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, java.lang.String entryUid, java.lang.String revisionId)
           
protected  java.lang.String getLatestRevisionId(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, java.lang.String entryUId)
           
 PropertyService getPropertyService()
           
 RelationService getRelationService()
           
 java.util.List<SupportedProperty> getSupportedPropertyForPropertyType(java.lang.String codingSchemeUri, java.lang.String codingSchemeVersion, PropertyTypes propertyType)
          Gets the property URI map that matches the propertyType.
 void insertCodingScheme(CodingScheme scheme, java.lang.String releaseURI)
          Insert coding scheme.
protected  void insertIntoHistory(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, CodingScheme currentEntry, java.lang.String entryUId)
          Insert into history.
 void insertURIMap(java.lang.String codingSchemeUri, java.lang.String codingSchemeVersion, URIMap uriMap)
          Insert uri map.
 void removeCodingScheme(CodingScheme codingScheme)
           
 void removeCodingScheme(java.lang.String uri, java.lang.String version)
          Destroy coding scheme.
 CodingScheme resolveCodingSchemeByRevision(java.lang.String codingSchemeURI, java.lang.String version, java.lang.String revisionId)
           
 void revise(CodingScheme revisedCodingScheme, java.lang.String releaseURI, java.lang.Boolean indexNewCodingScheme)
          revise the codingScheme.
 void setEntityService(EntityService entityService)
           
 void setPropertyService(PropertyService propertyService)
           
 void setRelationService(RelationService relationService)
           
 void updateCodingScheme(CodingScheme codingScheme)
          Update coding scheme.
protected  java.lang.String updateEntryVersionableAttributes(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id, java.lang.String entryUId, CodingScheme revisedEntity)
          Update entity versionable attributes.
 void updateURIMap(java.lang.String codingSchemeUri, java.lang.String codingSchemeVersion, URIMap uriMap)
           
<T extends URIMap>
boolean
validatedSupportedAttribute(java.lang.String codingSchemeUri, java.lang.String codingSchemeVersion, java.lang.String localId, java.lang.Class<T> attributeClass)
          Validated supported attribute.
 
Methods inherited from class org.lexevs.dao.database.service.RevisableAbstractDatabaseService
getCodingSchemeUid, insertDependentChanges, insertVersionableChanges, makeChange, resolveCurrentEntryStateUid, resolveEntryByRevision, updateEntry, validRevision
 
Methods inherited from class org.lexevs.dao.database.service.AbstractDatabaseService
getCodingSchemeUId, getDaoManager, getLogger, isChangeTypeDependent, isChangeTypeRemove, setDaoManager, setLogger
 
Methods inherited from class org.lexevs.dao.database.service.event.DatabaseServiceEventSupport
fireCodingSchemeInsertErrorEvent, fireCodingSchemeUpdateEvent, fireEntityReviseEvent, fireEntityUpdateEvent, firePostBatchEntityInsertEvent, firePostCodingSchemeInsertEvent, firePostEntityInsertEvent, firePostEntityRemoveEvent, firePostPropertyInsertEvent, firePostPropertyRemoveEvent, firePreBatchAssociationInsertEvent, firePreBatchEntityInsertEvent, firePreCodingSchemeInsertEvent, firePreEntityInsertEvent, firePreEntityRemoveEvent, firePropertyUpdateEvent, getListenerRegistry, setListenerRegistry
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VersionableEventCodingSchemeService

public VersionableEventCodingSchemeService()
Method Detail

getCurrentEntryStateUid

protected java.lang.String getCurrentEntryStateUid(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                                   java.lang.String entryUid)
Description copied from class: RevisableAbstractDatabaseService
Gets the current entry state uid.

Specified by:
getCurrentEntryStateUid in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
Parameters:
id - the id
entryUid - the entry uid
Returns:
the current entry state uid

addDependentAttributesByRevisionId

protected CodingScheme addDependentAttributesByRevisionId(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                                          java.lang.String entryUid,
                                                          CodingScheme entry,
                                                          java.lang.String revisionId)
Specified by:
addDependentAttributesByRevisionId in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>

getHistoryEntryByRevisionId

protected CodingScheme getHistoryEntryByRevisionId(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                                   java.lang.String entryUid,
                                                   java.lang.String revisionId)
Specified by:
getHistoryEntryByRevisionId in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>

getLatestRevisionId

protected java.lang.String getLatestRevisionId(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                               java.lang.String entryUId)
Specified by:
getLatestRevisionId in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>

entryStateExists

protected boolean entryStateExists(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                   java.lang.String entryStateUid)
Description copied from class: RevisableAbstractDatabaseService
Entry state exists.

Specified by:
entryStateExists in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
Parameters:
id - the id
entryStateUid - the entry state uid
Returns:
true, if successful

resolveCodingSchemeByRevision

public CodingScheme resolveCodingSchemeByRevision(java.lang.String codingSchemeURI,
                                                  java.lang.String version,
                                                  java.lang.String revisionId)
                                           throws LBRevisionException
Specified by:
resolveCodingSchemeByRevision in interface CodingSchemeService
Throws:
LBRevisionException

getCodingSchemeByUriAndVersion

@Transactional
public CodingScheme getCodingSchemeByUriAndVersion(java.lang.String uri,
                                                                 java.lang.String version)
Description copied from interface: CodingSchemeService
Gets the coding scheme by uri and version.

Specified by:
getCodingSchemeByUriAndVersion in interface CodingSchemeService
Parameters:
uri - the coding scheme uri
version - the coding scheme version
Returns:
the coding scheme by uri and version

getCompleteCodingScheme

@Transactional
public CodingScheme getCompleteCodingScheme(java.lang.String codingSchemeUri,
                                                          java.lang.String codingSchemeVersion)
Description copied from interface: CodingSchemeService
Returns entire codingScheme.

Specified by:
getCompleteCodingScheme in interface CodingSchemeService
Returns:

getCodingSchemeSummaryByUriAndVersion

@Transactional
public CodingSchemeSummary getCodingSchemeSummaryByUriAndVersion(java.lang.String uri,
                                                                               java.lang.String version)
Description copied from interface: CodingSchemeService
Gets the coding scheme summary by uri and version.

Specified by:
getCodingSchemeSummaryByUriAndVersion in interface CodingSchemeService
Parameters:
uri - the coding scheme uri
version - the coding scheme version
Returns:
the coding scheme summary by uri and version

removeCodingScheme

@Transactional
public void removeCodingScheme(java.lang.String uri,
                                             java.lang.String version)
Description copied from interface: CodingSchemeService
Destroy coding scheme.

Specified by:
removeCodingScheme in interface CodingSchemeService
Parameters:
uri - the coding scheme uri
version - the coding scheme version

insertCodingScheme

@Transactional
public void insertCodingScheme(CodingScheme scheme,
                                             java.lang.String releaseURI)
                        throws CodingSchemeAlreadyLoadedException
Description copied from interface: CodingSchemeService
Insert coding scheme.

Specified by:
insertCodingScheme in interface CodingSchemeService
Parameters:
scheme - the scheme
Throws:
CodingSchemeAlreadyLoadedException - the coding scheme already loaded exception

insertURIMap

@Transactional
public void insertURIMap(java.lang.String codingSchemeUri,
                                       java.lang.String codingSchemeVersion,
                                       URIMap uriMap)
Description copied from interface: CodingSchemeService
Insert uri map.

Specified by:
insertURIMap in interface CodingSchemeService
Parameters:
codingSchemeUri - the coding scheme uri
codingSchemeVersion - the coding scheme version
uriMap - the uri map

updateURIMap

@Transactional
public void updateURIMap(java.lang.String codingSchemeUri,
                                       java.lang.String codingSchemeVersion,
                                       URIMap uriMap)
Specified by:
updateURIMap in interface CodingSchemeService

updateCodingScheme

@Transactional(rollbackFor=java.lang.Exception.class)
public void updateCodingScheme(CodingScheme codingScheme)
                        throws LBException
Description copied from interface: CodingSchemeService
Update coding scheme.

Specified by:
updateCodingScheme in interface CodingSchemeService
Parameters:
codingScheme - the coding scheme
Throws:
LBException

validatedSupportedAttribute

@Transactional
public <T extends URIMap> boolean validatedSupportedAttribute(java.lang.String codingSchemeUri,
                                                                            java.lang.String codingSchemeVersion,
                                                                            java.lang.String localId,
                                                                            java.lang.Class<T> attributeClass)
Description copied from interface: CodingSchemeService
Validated supported attribute.

Specified by:
validatedSupportedAttribute in interface CodingSchemeService
Parameters:
codingSchemeUri - the coding scheme uri
codingSchemeVersion - the coding scheme version
localId - the local id
attributeClass - the attribute class
Returns:
true, if successful

revise

@Transactional(rollbackFor=java.lang.Exception.class)
public void revise(CodingScheme revisedCodingScheme,
                                                          java.lang.String releaseURI,
                                                          java.lang.Boolean indexNewCodingScheme)
            throws LBException
Description copied from interface: CodingSchemeService
revise the codingScheme.

Specified by:
revise in interface CodingSchemeService
Throws:
LBException

removeCodingScheme

@Transactional
public void removeCodingScheme(CodingScheme codingScheme)
Specified by:
removeCodingScheme in interface CodingSchemeService

getSupportedPropertyForPropertyType

public java.util.List<SupportedProperty> getSupportedPropertyForPropertyType(java.lang.String codingSchemeUri,
                                                                             java.lang.String codingSchemeVersion,
                                                                             PropertyTypes propertyType)
Description copied from interface: CodingSchemeService
Gets the property URI map that matches the propertyType.

Specified by:
getSupportedPropertyForPropertyType in interface CodingSchemeService
Parameters:
codingSchemeUri - the coding scheme uri
codingSchemeVersion - the coding scheme version
propertyType - type of property
Returns:
the uri map

doInsertDependentChanges

protected void doInsertDependentChanges(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                        CodingScheme revisedEntry)
                                 throws LBException
Description copied from class: RevisableAbstractDatabaseService
Do insert dependent changes.

Specified by:
doInsertDependentChanges in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
Parameters:
id - the id
revisedEntry - the revised entry
Throws:
LBException - the LB exception

getCurrentEntry

protected CodingScheme getCurrentEntry(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                       java.lang.String entryUId)
Description copied from class: RevisableAbstractDatabaseService
Gets the current entry.

Specified by:
getCurrentEntry in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
Parameters:
id - the id
entryUId - the entry u id
Returns:
the current entry

getEntryUid

protected java.lang.String getEntryUid(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                       CodingScheme entry)
Description copied from class: RevisableAbstractDatabaseService
Gets the entry uid.

Specified by:
getEntryUid in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
Parameters:
id - the id
entry - the entry
Returns:
the entry uid

insertIntoHistory

protected void insertIntoHistory(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                 CodingScheme currentEntry,
                                 java.lang.String entryUId)
Description copied from class: RevisableAbstractDatabaseService
Insert into history.

Specified by:
insertIntoHistory in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
Parameters:
id - the id
currentEntry - the current entry
entryUId - the entry u id

updateEntryVersionableAttributes

protected java.lang.String updateEntryVersionableAttributes(RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId id,
                                                            java.lang.String entryUId,
                                                            CodingScheme revisedEntity)
Description copied from class: RevisableAbstractDatabaseService
Update entity versionable attributes.

Specified by:
updateEntryVersionableAttributes in class RevisableAbstractDatabaseService<CodingScheme,RevisableAbstractDatabaseService.CodingSchemeUriVersionBasedEntryId>
Parameters:
id - the id
entryUId - the entry u id
revisedEntity - the revised entity
Returns:
the string

getEntityService

public EntityService getEntityService()

setEntityService

public void setEntityService(EntityService entityService)

getPropertyService

public PropertyService getPropertyService()

setPropertyService

public void setPropertyService(PropertyService propertyService)

getRelationService

public RelationService getRelationService()

setRelationService

public void setRelationService(RelationService relationService)

Copyright: (c) 2004-2006 Mayo Foundation for Medical Education and Research (MFMER). All rights reserved. MAYO, MAYO CLINIC, and the triple-shield Mayo logo are trademarks and service marks of MFMER.