@PersistentObjectService(value=org.tentackle.security.pdo.Security.class) public class SecurityPersistenceImpl extends AbstractPersistentObject<Security,SecurityPersistenceImpl> implements SecurityPersistence
| Modifier and Type | Field and Description |
|---|---|
static PersistentObjectClassVariables<Security,SecurityPersistenceImpl> |
CLASSVARIABLES
Variables common to all instances of SecurityPersistenceImpl.
|
static String |
CN_ALLOWED
database column name for 'allowed'.
|
static String |
CN_DOMAINCONTEXTCLASSID
database column name for 'domainContextClassId'.
|
static String |
CN_DOMAINCONTEXTID
database column name for 'domainContextId'.
|
static String |
CN_GRANTEECLASSID
database column name for 'granteeClassId'.
|
static String |
CN_GRANTEEID
database column name for 'granteeId'.
|
static String |
CN_MESSAGE
database column name for 'message'.
|
static String |
CN_OBJECTCLASSID
database column name for 'objectClassId'.
|
static String |
CN_OBJECTCLASSNAME
database column name for 'objectClassName'.
|
static String |
CN_OBJECTID
database column name for 'objectId'.
|
static String |
CN_PERMISSIONS
database column name for 'permissions'.
|
static String |
CN_PRIORITY
database column name for 'priority'.
|
AN_EDITEDBY, AN_EDITEDEXPIRY, AN_EDITEDSINCE, AN_NORMTEXT, AN_ROOTCLASSID, AN_ROOTID, CN_EDITEDBY, CN_EDITEDEXPIRY, CN_EDITEDSINCE, CN_NORMTEXT, CN_ROOTCLASSID, CN_ROOTID, objectIsSnapshot, TX_DELETE_ALL_IN_CONTEXT, TX_SAVE_COPY_IN_CONTEXT, TX_TRANSFER_TOKENLOCKAN_CLASSID, AN_ID, AN_SERIAL, AN_TABLESERIAL, CN_CLASSID, CN_ID, CN_SERIAL, CN_TABLESERIAL, idComparator, nameComparator, nameIdComparator, TX_DELETE_LIST, TX_DELETE_MISSING_IN_LIST, TX_DELETE_OBJECT, TX_DUMMY_UPDATE, TX_INSERT_OBJECT, TX_INSERT_PLAIN, TX_SAVE, TX_SAVE_LIST, TX_SYNC, TX_UPDATE_OBJECT, TX_UPDATE_PLAIN, TX_UPDATE_SERIAL, TX_UPDATE_SERIAL_AND_TABLESERIAL, TX_UPDATE_TABLESERIALAN_ALLOWED, AN_DOMAINCONTEXTCLASSID, AN_DOMAINCONTEXTID, AN_GRANTEECLASSID, AN_GRANTEEID, AN_MESSAGE, AN_OBJECTCLASSID, AN_OBJECTCLASSNAME, AN_OBJECTID, AN_PERMISSIONS, AN_PRIORITY, CL_OBJECTCLASSNAME, CL_PERMISSIONS| Constructor and Description |
|---|
SecurityPersistenceImpl()
Creates a security rule without domain context or session.
|
SecurityPersistenceImpl(Security pdo)
Creates a security rule without domain context or session.
|
SecurityPersistenceImpl(Security pdo,
DomainContext context)
Creates a security rule.
|
SecurityPersistenceImpl(Security pdo,
org.tentackle.session.Session session)
Creates a security rule with a session only.
|
| Modifier and Type | Method and Description |
|---|---|
void |
assertRemoteSecurityManagerInitialized() |
void |
assertRootContextIsAccepted()
Checks the root context agains the security rules.
|
String |
createInsertSql() |
String |
createUpdateSql() |
int |
deleteByDomainContext(int domainContextClassId,
long domainContextId) |
int |
deleteByGrantee(int granteeClassId,
long granteeId) |
int |
deleteByObject(int objectClassId,
long objectId) |
int |
deleteByObjectClass(String objectClassName) |
boolean |
expireCache(long maxSerial)
Expires the cache according to the serial numbers.
If objects of this class are cached, the cache must be expired on updates, etc... |
PdoCache<Security> |
getCache()
Gets the cache.
|
PersistentObjectClassVariables<Security,SecurityPersistenceImpl> |
getClassVariables()
Gets the application oriented class variables for this object.
Class variables for classes derived from AbstractPersistentObject are kept in an instance of PersistentObjectClassVariables. |
int |
getDomainContextClassId() |
long |
getDomainContextId() |
PersistentDomainObject<?> |
getDomainContextObject()
Gets the application context's object.
The object will be loaded in its valid context. |
void |
getFields(ResultSetWrapper rs) |
PersistentDomainObject<?> |
getGrantee()
Gets the grantee.
|
int |
getGranteeClassId() |
long |
getGranteeId() |
String |
getMessage() |
PersistentDomainObject<?> |
getObject()
Gets the object this rule applies to.
The object is retrieved in its valid context. |
Class<?> |
getObjectClass() |
int |
getObjectClassId() |
String |
getObjectClassName() |
long |
getObjectId() |
String |
getPermissions() |
int |
getPriority() |
org.tentackle.persist.security.rmi.SecurityRemoteDelegate |
getRemoteDelegate() |
boolean |
isAllowed() |
boolean |
isCountingModification(char modType) |
boolean |
isReadAllowed()
Determines whether the application is allowed to read this PDO.
Makes no sense to publish in PersistentObject because PDOs without read permissions are not read from the database at all. |
boolean |
isRootEntity() |
boolean |
isTracked() |
String |
orderBy()
Gets the natural ordering to be added in WHERE-clauses following "ORDER BY ".
|
protected void |
revertAttributesToSnapshot(SecurityPersistenceImpl snapshot)
Copies all attributes from a snapshot back to this object.
|
List<Security> |
selectAllCached()
Gets all objects in context via cache.
|
org.tentackle.misc.TrackedList<Security> |
selectByDomainContext(int domainContextClassId,
long domainContextId) |
List<Security> |
selectByGrantee(int granteeClassId,
long granteeId) |
org.tentackle.misc.TrackedList<Security> |
selectByObject(int objectClassId,
long objectId) |
org.tentackle.misc.TrackedList<Security> |
selectByObjectClass(String objectClassName) |
Security |
selectCached(long id)
Gets the object via cache.
If there is no cache (i.e. |
Security |
selectCachedOnly(long id)
Gets the object via cache only.
If there is no cache (i.e. |
void |
setAllowed(boolean allowed) |
void |
setDomainContextClassId(int domainContextClassId) |
void |
setDomainContextId(long domainContextId) |
void |
setDomainContextObject(PersistentDomainObject<?> contextObject)
Sets the application context's object.
|
int |
setFields(PreparedStatementWrapper st) |
void |
setGrantee(PersistentDomainObject<?> grantee)
Sets the grantee.
|
void |
setGranteeClassId(int granteeClassId) |
void |
setGranteeId(long granteeId) |
void |
setMessage(String message) |
void |
setObject(PersistentDomainObject<?> object)
Sets the object this rule applies to.
Setting the null object also clears the objectClass making the rule invalid. |
void |
setObjectClassId(int objectClassId) |
void |
setObjectClassName(String objectClassName) |
void |
setObjectId(long objectId) |
void |
setPermissions(String permissions) |
void |
setPriority(int priority) |
String |
toString()
for debugging only
|
addComponents, addComponents, addReferencingClass, addSnapshot, assertDomainContextMutable, assertMutable, assertNormTextProvided, assertNotAbstract, assertNotCached, assertPersistable, assertReadPermission, assertRootContext, assertRootEntity, assertTokenLockProvided, assertValidSnapshot, assertWritePermission, clearTokenLock, clone, clonePersistentObject, configureRemoteObject, configureRemoteObjects, containsPattern, copy, countModification, createAttributesInSnapshot, createComponentsInSnapshot, createCopyInContext, createDummyUpdateSql, createPropertySupport, createSelectAllByIdInnerSql, createSelectAllIdSerialInnerSql, createSelectAllInnerSql, createSelectAllSql, createSelectAllWithExpiredTableSerialsSql, createSelectByNormTextSql, createSelectExpiredTableSerials1Sql, createSelectExpiredTableSerials2Sql, createSelectIdInnerSql, createSelectIdInnerSql, createSelectIdInnerSql, createSelectMaxIdSql, createSelectMaxTableSerialSql, createSelectSerialSql, createSelectTokenLockSql, createSnapshot, createTransferTokenLockSql, createTransferTokenLockWithTableSerialSql, createUpdateSerialAndTableSerialSql, createUpdateSerialSql, createUpdateTokenLockOnlySql, createUpdateTokenLockSql, createUpdateTokenLockWithCountSql, createValidContext, delete, delete, delete, deleteImpl, deleteMissingInCollection, deletePlainWithComponents, deletePlainWithComponents, derivePdoFromPo, determineContextId, executeFirstPdoQuery, executeFirstPdoQuery, executeListQuery, executeListQuery, executeQueryToList, executeQueryToList, executeTrackedListQuery, executeTrackedListQuery, findDuplicate, findSnapshotMethod, finishModification, finishNotUpdated, freeze, getBaseContext, getCacheAccessCount, getCacheAccessTime, getColumnName, getContextId, getContextUserId, getCopiedObject, getDefaultScopes, getDomainContext, getDomainDelegate, getEagerJoinedSelect, getEagerJoins, getEditedBy, getEditedExpiry, getEditedSince, getEffectiveClass, getEffectiveSuperClasses, getNormText, getPdo, getPdoClass, getPersistenceClass, getRootClassId, getRootId, getSecurityResult, getSnapshots, getSqlClassIdCondition, getSqlContextCondition, getTableAlias, getTableName, getTokenLockObject, getTokenLockTimeout, getTopSuperTableAlias, getTopSuperTableName, getTransientData, getValidClassId, initModification, insertPlainWithComponents, insertPlainWithComponents, isAbstract, isCacheable, isCached, isClassIdRequiredInWhereClause, isComposite, isCountingModificationForTokenLock, isDomainContextImmutable, isEditAllowed, isExpired, isExplicitIdAliasRequiredInJoins, isModified, isNormTextProvided, isPermissionAccepted, isPersistable, isReferenced, isRenewTokenLockRequested, isRootClassIdProvided, isRootEntityOf, isRootIdProvided, isSnapshot, isTokenLockableByMe, isTokenLocked, isTokenLockedBy, isTokenLockedByMe, isTokenLockProvided, isUpdateNecessary, isUpdatingSerialEvenIfNotModified, isValidated, isViewAllowed, isWriteAllowed, loadComponents, markCacheAccess, markDeleted, markDeleted, me, newId, pdo, persist, persistImpl, persistTokenLocked, readFromResultSetWrapper, readJoinedRow, releaseTokenLock, reload, reloadForUpdate, reloadLocked, removeReferencingClass, requestTokenLock, resultAll, resultAllCursor, resultAllWithExpiredTableSerials, resultByNormText, resultByNormTextCursor, revertAttributesToSnapshot, revertComponentsToSnapshot, revertToSnapshot, save, save, save, saveCopyInContext, saveImpl, select, select, selectAll, selectAllAsCursor, selectAllForCache, selectAllWithExpiredTableSerials, selectByNormText, selectByNormTextAsCursor, selectByTemplate, selectForCache, selectForUpdate, selectLocked, setClassIdsInStatement, setDomainContext, setDomainContextImmutable, setEditedBy, setEditedExpiry, setEditedSince, setExpired, setModified, setNormText, setPdo, setPersistable, setRenewTokenLockRequested, setRootClassId, setRootId, setTokenLockObject, setTransientData, transferTokenLock, updateRootContext, updateTokenLock, updateTokenLock, updateTokenLockOnly, validate, validateacceptPersistenceVisitor, addPropertyChangeListener, addPropertyListener, alignComponents, assertNotNew, assertNotOverloaded, assertNotRemote, assertNumberOfRowsAffected, assertRemote, assertThisRowAffected, attributesModified, beginTx, clearOnRemoteSave, compareTo, copyToDb, createAttributesInSnapshot, createDeleteAllSql, createDeleteSql, createPreparedStatement, createPreparedStatement, createSelectObjectsWithExpiredTableSerialsSql, createSelectSql, createSqlUpdate, createUpdateAndSetSerialSql, deleteImpl, deleteObject, deletePlain, deleteReferencedRelations, deleteReferencingRelations, differsPersisted, dummyUpdate, equals, firePropertyChange, getBackend, getClassBaseName, getClassId, getColumnCount, getExpirationBacklog, getExpiredTableSerials, getId, getIdSource, getImmutableLoggingLevel, getModificationCount, getModificationLog, getPreparedStatement, getPreparedStatement, getSerial, getSession, getSessionHolder, getTableSerial, hashCode, insertImpl, insertObject, insertPlain, isDeleted, isEntity, isFromThisJVM, isIdValid, isImmutable, isLoggingModification, isModified, isNew, isOverloadable, isRemovable, isSessionImmutable, isStatementAlwaysPrepared, isTableSerialProvided, isVirgin, loadLazyReferences, logModification, markDeleted, newInstance, newInstance, newInstance, persistObject, prepareDelete, prepareSave, prepareSetFields, reloadLockedObject, reloadObject, removeAllPropertyChangeListeners, removePropertyChangeListener, removePropertyListener, reserveId, resultAllIdSerial, resultAllObjects, resultObjectsWithExpiredTableSerials, revertAttributesToSnapshot, saveObject, saveReferencedRelations, saveReferencingRelations, selectAllIdSerial, selectAllObjects, selectExpiredTableSerials, selectExpiredTableSerials, selectMaxId, selectMaxTableSerial, selectNextObject, selectObject, selectObjectForUpdate, selectObjectsWithExpiredTableSerials, selectSerial, setClassId, setId, setImmutable, setImmutableLoggingLevel, setModificationLog, setOverloadable, setSerial, setSession, setSessionHolder, setSessionImmutable, setStatementAlwaysPrepared, setTableSerial, toGenericString, toIdString, unmarkDeleted, updateImpl, updateObject, updatePlain, updateSerial, updateSerial, updateSerialAndTableSerialfinalize, getClass, notify, notifyAll, wait, wait, waitattributesModified, clonePersistentObject, containsPattern, createCopyInContext, delete, differsPersisted, findDuplicate, getCacheAccessCount, getCacheAccessTime, getClassBaseName, getClassId, getCopiedObject, getEditedBy, getEditedExpiry, getEditedSince, getExpiredTableSerials, getId, getModificationCount, getNormText, getRootClassId, getRootId, getSecurityResult, getSerial, getTableName, getTableSerial, getTokenLockObject, getTokenLockTimeout, getTransientData, isAbstract, isCacheable, isCached, isComposite, isDeleted, isEditAllowed, isExpired, isImmutable, isNew, isNormTextProvided, isPermissionAccepted, isPersistable, isReferenced, isRemovable, isRootClassIdProvided, isRootEntityOf, isRootIdProvided, isTableSerialProvided, isTokenLockableByMe, isTokenLocked, isTokenLockedBy, isTokenLockedByMe, isTokenLockProvided, isValidated, isViewAllowed, isWriteAllowed, markCacheAccess, pdo, persist, persistTokenLocked, prepareDelete, releaseTokenLock, reload, reloadForUpdate, reloadLocked, requestTokenLock, reserveId, save, select, selectAll, selectAllAsCursor, selectAllForCache, selectAllIdSerial, selectAllWithExpiredTableSerials, selectByNormText, selectByNormTextAsCursor, selectExpiredTableSerials, selectExpiredTableSerials, selectForCache, selectForUpdate, selectLocked, selectMaxId, selectMaxTableSerial, selectSerial, setEditedBy, setEditedExpiry, setEditedSince, setExpired, setId, setImmutable, setModified, setNormText, setRootClassId, setRootId, setSerial, setTableSerial, setTokenLockObject, setTransientData, toIdString, transferTokenLock, validategetDomainDelegatemecreateSnapshot, getSnapshots, isSnapshot, revertToSnapshotcreateValidContext, determineContextId, getBaseContext, getContextId, isDomainContextImmutable, setDomainContext, setDomainContextImmutablegetDomainContext, on, opisSessionImmutable, setSession, setSessionImmutablecreateModificationLogpublic static final PersistentObjectClassVariables<Security,SecurityPersistenceImpl> CLASSVARIABLES
public static final String CN_OBJECTCLASSNAME
public static final String CN_OBJECTCLASSID
public static final String CN_OBJECTID
public static final String CN_DOMAINCONTEXTCLASSID
public static final String CN_DOMAINCONTEXTID
public static final String CN_GRANTEECLASSID
public static final String CN_GRANTEEID
public static final String CN_PRIORITY
public static final String CN_PERMISSIONS
public static final String CN_ALLOWED
public static final String CN_MESSAGE
public SecurityPersistenceImpl(Security pdo, DomainContext context)
pdo - the security PDOcontext - the domain contextpublic SecurityPersistenceImpl(Security pdo, org.tentackle.session.Session session)
pdo - the security PDOsession - the sessionpublic SecurityPersistenceImpl(Security pdo)
pdo - the security PDOpublic SecurityPersistenceImpl()
public PersistentObjectClassVariables<Security,SecurityPersistenceImpl> getClassVariables()
AbstractPersistentObjectPersistentObjectClassVariables.getClassVariables in class AbstractPersistentObject<Security,SecurityPersistenceImpl>AbstractDbObject.getClassVariables()public PersistentDomainObject<?> getObject()
getObject in interface SecurityPersistencepublic void assertRootContextIsAccepted()
AbstractPersistentObjectassertRootContextIsAccepted in class AbstractPersistentObject<Security,SecurityPersistenceImpl>public void setObject(PersistentDomainObject<?> object)
setObject in interface SecurityPersistenceobject - the object, null to clearpublic PersistentDomainObject<?> getGrantee()
getGrantee in interface SecurityPersistencepublic void setGrantee(PersistentDomainObject<?> grantee)
setGrantee in interface SecurityPersistencegrantee - the grantee, null to clear (all)public PersistentDomainObject<?> getDomainContextObject()
getDomainContextObject in interface SecurityPersistencepublic void setDomainContextObject(PersistentDomainObject<?> contextObject)
setDomainContextObject in interface SecurityPersistencecontextObject - the context object, null to clear (all)public String toString()
toString in class AbstractDbObject<SecurityPersistenceImpl>public void assertRemoteSecurityManagerInitialized()
assertRemoteSecurityManagerInitialized in interface SecurityPersistencepublic Class<?> getObjectClass()
getObjectClass in interface SecurityPersistencepublic PdoCache<Security> getCache()
AbstractPersistentObjectgetCache in interface PersistentObject<Security>getCache in class AbstractPersistentObject<Security,SecurityPersistenceImpl>public boolean isCountingModification(char modType)
isCountingModification in class AbstractDbObject<SecurityPersistenceImpl>public boolean isReadAllowed()
AbstractPersistentObjectisReadAllowed in class AbstractPersistentObject<Security,SecurityPersistenceImpl>public boolean expireCache(long maxSerial)
AbstractPersistentObject
cache.expire(maxSerial);
while "cache" has been declared by the wurblet PdoCache.expireCache in class AbstractPersistentObject<Security,SecurityPersistenceImpl>maxSerial - is the new tableSerial this object will getPdoCachepublic Security selectCachedOnly(long id)
AbstractPersistentObjectselectCachedOnly in interface PersistentObject<Security>selectCachedOnly in class AbstractPersistentObject<Security,SecurityPersistenceImpl>id - the uniue object IDAbstractDbObject.selectObject(long)public Security selectCached(long id)
AbstractPersistentObjectselectCached in interface PersistentObject<Security>selectCached in class AbstractPersistentObject<Security,SecurityPersistenceImpl>id - the uniue object IDAbstractDbObject.selectObject(long)public List<Security> selectAllCached()
AbstractPersistentObjectselectAllCached in interface PersistentObject<Security>selectAllCached in class AbstractPersistentObject<Security,SecurityPersistenceImpl>AbstractPersistentObject.selectAll()public List<Security> selectByGrantee(int granteeClassId, long granteeId)
selectByGrantee in interface SecurityPersistencepublic org.tentackle.misc.TrackedList<Security> selectByObject(int objectClassId, long objectId)
selectByObject in interface SecurityPersistencepublic org.tentackle.misc.TrackedList<Security> selectByObjectClass(String objectClassName)
selectByObjectClass in interface SecurityPersistencepublic org.tentackle.misc.TrackedList<Security> selectByDomainContext(int domainContextClassId, long domainContextId)
selectByDomainContext in interface SecurityPersistencepublic int deleteByGrantee(int granteeClassId,
long granteeId)
deleteByGrantee in interface SecurityPersistencepublic int deleteByObject(int objectClassId,
long objectId)
deleteByObject in interface SecurityPersistencepublic int deleteByObjectClass(String objectClassName)
deleteByObjectClass in interface SecurityPersistencepublic int deleteByDomainContext(int domainContextClassId,
long domainContextId)
deleteByDomainContext in interface SecurityPersistencepublic org.tentackle.persist.security.rmi.SecurityRemoteDelegate getRemoteDelegate()
AbstractPersistentObjectOverridden due to covariance.
getRemoteDelegate in class AbstractPersistentObject<Security,SecurityPersistenceImpl>public boolean isRootEntity()
AbstractPersistentObjectThe default is false. Override if this is a root-entity.
isRootEntity in interface PersistentObject<Security>isRootEntity in class AbstractPersistentObject<Security,SecurityPersistenceImpl>public boolean isTracked()
isTracked in interface PersistentObject<Security>isTracked in class AbstractDbObject<SecurityPersistenceImpl>public String orderBy()
AbstractPersistentObjectreturn CN_ID + "," + CN_PRINTED + " DESC";For a single field with sort ascending returning the fieldname is sufficient. The default is null, i.e. no order-by-clause will be added.
orderBy in class AbstractPersistentObject<Security,SecurityPersistenceImpl>public void getFields(ResultSetWrapper rs)
getFields in class AbstractDbObject<SecurityPersistenceImpl>public int setFields(PreparedStatementWrapper st)
setFields in class AbstractDbObject<SecurityPersistenceImpl>public String createInsertSql()
createInsertSql in class AbstractDbObject<SecurityPersistenceImpl>public String createUpdateSql()
createUpdateSql in class AbstractDbObject<SecurityPersistenceImpl>public String getObjectClassName()
getObjectClassName in interface SecurityPersistencepublic void setObjectClassName(String objectClassName)
setObjectClassName in interface SecurityPersistencepublic int getObjectClassId()
getObjectClassId in interface SecurityPersistencepublic void setObjectClassId(int objectClassId)
setObjectClassId in interface SecurityPersistencepublic long getObjectId()
getObjectId in interface SecurityPersistencepublic void setObjectId(long objectId)
setObjectId in interface SecurityPersistencepublic int getDomainContextClassId()
getDomainContextClassId in interface SecurityPersistencepublic void setDomainContextClassId(int domainContextClassId)
setDomainContextClassId in interface SecurityPersistencepublic long getDomainContextId()
getDomainContextId in interface SecurityPersistencepublic void setDomainContextId(long domainContextId)
setDomainContextId in interface SecurityPersistencepublic int getGranteeClassId()
getGranteeClassId in interface SecurityPersistencepublic void setGranteeClassId(int granteeClassId)
setGranteeClassId in interface SecurityPersistencepublic long getGranteeId()
getGranteeId in interface SecurityPersistencepublic void setGranteeId(long granteeId)
setGranteeId in interface SecurityPersistencepublic int getPriority()
getPriority in interface SecurityPersistencepublic void setPriority(int priority)
setPriority in interface SecurityPersistencepublic String getPermissions()
getPermissions in interface SecurityPersistencepublic void setPermissions(String permissions)
setPermissions in interface SecurityPersistencepublic boolean isAllowed()
isAllowed in interface SecurityPersistencepublic void setAllowed(boolean allowed)
setAllowed in interface SecurityPersistencepublic String getMessage()
getMessage in interface SecurityPersistencepublic void setMessage(String message)
setMessage in interface SecurityPersistenceprotected void revertAttributesToSnapshot(SecurityPersistenceImpl snapshot)
snapshot - the snapshot objectTentackle - distributed, domain- and model-driven