|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jasig.portal.concurrency.caching.RDBMCachedEntityInvalidationStore
public class RDBMCachedEntityInvalidationStore
RDBMS-based store for CachedEntityInvalidations
.
CachedEntityInvalidation
,
IEntityCache
Field Summary | |
---|---|
private static java.lang.String |
addSql
|
private static java.lang.String |
allTableColumns
|
private static java.lang.String |
ENTITY_CACHE_ID_COLUMN
|
private static java.lang.String |
ENTITY_INVALIDATION_TABLE
|
private static java.lang.String |
ENTITY_KEY_COLUMN
|
private static java.lang.String |
ENTITY_TYPE_COLUMN
|
private static java.lang.String |
EQ
|
private static java.lang.String |
GT
|
private static java.lang.String |
INVALIDATION_TIME_COLUMN
|
private static org.apache.commons.logging.Log |
log
|
private static java.lang.String |
LT
|
private static java.lang.String |
NE
|
private static java.lang.String |
QUOTE
|
private static RDBMCachedEntityInvalidationStore |
singleton
|
private static boolean |
timestampHasMillis
|
private static java.lang.String |
updateSql
|
Constructor Summary | |
---|---|
RDBMCachedEntityInvalidationStore()
RDBMCachedEntityInvalidationStore constructor. |
Method Summary | |
---|---|
void |
add(CachedEntityInvalidation cachedEnt)
Adds/updates the row corresponding to this invalidation in the underlying store. |
void |
add(IBasicEntity entity,
int cacheID)
Adds/updates the row corresponding to this entity in the underlying store. |
void |
deleteAll()
Delete all invalidations from the underlying store. |
void |
deleteBefore(java.util.Date expiration)
Delete invalid entities the underlying store whose invalidation time is before invalidation . |
private boolean |
existsInStore(CachedEntityInvalidation ent,
java.sql.Connection conn)
Answers if this entity is represented in the store. |
CachedEntityInvalidation[] |
find(java.lang.Class entityType,
java.lang.String entityKey)
Retrieve CachedEntityInvalidations from the underlying entity invalidation store. |
CachedEntityInvalidation[] |
findAfter(java.util.Date invalidation,
java.lang.Class entityType,
java.lang.String entityKey,
java.lang.Integer cacheID)
Retrieve CachedEntityInvalidations from the underlying store. |
private static java.lang.String |
getAddSql()
SQL for inserting a row into the invalid entities table. |
private static java.lang.String |
getAllTableColumns()
|
private static java.lang.String |
getDeleteInvalidationsSql()
SQL for deleting old invalid entity rows. |
private static java.lang.String |
getSelectInvalidationsByTypeSql()
|
private static java.lang.String |
getSelectSql()
|
private static long |
getTimestampMillis(java.sql.Timestamp ts)
|
private static java.lang.String |
getUpdateSql()
SQL for updating a row on the lock table. |
private void |
initialize()
Clear invalidations more than 1 hour old. |
private CachedEntityInvalidation |
instanceFromResultSet(java.sql.ResultSet rs)
Extract values from ResultSet and create a new CachedEntityInvalidation . |
private CachedEntityInvalidation |
newInstance(java.lang.Class type,
java.lang.String key,
java.util.Date expiration,
int cacheID)
|
private void |
primAdd(CachedEntityInvalidation ent,
java.sql.Connection conn)
Add the invalid entity to the underlying store. |
private void |
primDeleteBefore(java.util.Date expiration,
java.sql.Connection conn)
Delete invalid entities from the underlying store whose invalidation is before invalidation . |
private CachedEntityInvalidation[] |
primSelect(java.lang.String sql,
java.sql.Connection conn)
Retrieve CachedEntityInvalidations from the underlying store. |
private void |
primUpdate(CachedEntityInvalidation ent,
java.sql.Connection conn)
Updates the invalid enity's expiration in the underlying store. |
private static java.lang.String |
printTimestamp(java.sql.Timestamp ts)
|
private CachedEntityInvalidation[] |
select(java.lang.Class entityType,
java.lang.String entityKey,
java.util.Date invalidation,
java.lang.Integer cacheID,
java.sql.Connection conn)
Retrieve CachedEntityInvalidation from the underlying store. |
private CachedEntityInvalidation[] |
selectAfter(java.lang.Class entityType,
java.lang.String entityKey,
java.util.Date invalidation,
java.lang.Integer cacheID,
java.sql.Connection conn)
Retrieve CachedEntityInvalidations from the underlying store. |
static RDBMCachedEntityInvalidationStore |
singleton()
|
private static java.lang.String |
sqlQuote(java.lang.Object o)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final org.apache.commons.logging.Log log
private static RDBMCachedEntityInvalidationStore singleton
private static java.lang.String ENTITY_INVALIDATION_TABLE
private static java.lang.String ENTITY_TYPE_COLUMN
private static java.lang.String ENTITY_KEY_COLUMN
private static java.lang.String INVALIDATION_TIME_COLUMN
private static java.lang.String ENTITY_CACHE_ID_COLUMN
private static java.lang.String EQ
private static java.lang.String NE
private static java.lang.String GT
private static java.lang.String LT
private static java.lang.String QUOTE
private static java.lang.String allTableColumns
private static java.lang.String addSql
private static java.lang.String updateSql
private static boolean timestampHasMillis
Constructor Detail |
---|
public RDBMCachedEntityInvalidationStore() throws CachingException
CachingException
Method Detail |
---|
public void add(CachedEntityInvalidation cachedEnt) throws CachingException
cachedEnt
- org.jasig.portal.concurrency.caching.CachedEntityInvalidation
CachingException
public void add(IBasicEntity entity, int cacheID) throws CachingException
entity
- org.jasig.portal.IBasicEntity entity
CachingException
public void deleteAll() throws CachingException
CachingException
public void deleteBefore(java.util.Date expiration) throws CachingException
invalidation
.
expiration
- java.util.Date
CachingException
private boolean existsInStore(CachedEntityInvalidation ent, java.sql.Connection conn) throws CachingException
ent
- org.jasig.portal.concurrency.CachedEntityInvalidation
CachingException
public CachedEntityInvalidation[] find(java.lang.Class entityType, java.lang.String entityKey) throws CachingException
entityType
- ClassentityKey
- String
CachingException
- - wraps an Exception specific to the store.public CachedEntityInvalidation[] findAfter(java.util.Date invalidation, java.lang.Class entityType, java.lang.String entityKey, java.lang.Integer cacheID) throws CachingException
invalidation
- DateentityType
- ClassentityKey
- StringcacheID
- Integer - the cache ID we do NOT want to retrieve.
CachingException
- - wraps an Exception specific to the store.private static java.lang.String getAddSql()
private static java.lang.String getAllTableColumns()
private static java.lang.String getDeleteInvalidationsSql()
private static java.lang.String getSelectInvalidationsByTypeSql()
private static java.lang.String getSelectSql()
private static java.lang.String getUpdateSql()
private CachedEntityInvalidation instanceFromResultSet(java.sql.ResultSet rs) throws java.sql.SQLException, CachingException
CachedEntityInvalidation
.
rs
- java.sql.ResultSet
java.sql.SQLException
CachingException
private CachedEntityInvalidation newInstance(java.lang.Class type, java.lang.String key, java.util.Date expiration, int cacheID)
private void primAdd(CachedEntityInvalidation ent, java.sql.Connection conn) throws java.sql.SQLException, CachingException
ent
- org.jasig.portal.concurrency.caching.CachedEntityInvalidationconn
- java.sql.Connection
java.sql.SQLException
CachingException
private void primDeleteBefore(java.util.Date expiration, java.sql.Connection conn) throws CachingException, java.sql.SQLException
invalidation
.
expiration
- java.util.Dateconn
- Connection
CachingException
java.sql.SQLException
private CachedEntityInvalidation[] primSelect(java.lang.String sql, java.sql.Connection conn) throws CachingException
sql
- String - the sql string used to select the entity lock rows.conn
- Connection
CachingException
- - wraps an Exception specific to the store.private void primUpdate(CachedEntityInvalidation ent, java.sql.Connection conn) throws java.sql.SQLException, CachingException
expiration
in the underlying store.
ent
- org.jasig.portal.concurrency.caching.CachedEntityInvalidationconn
- Connection
java.sql.SQLException
CachingException
private CachedEntityInvalidation[] select(java.lang.Class entityType, java.lang.String entityKey, java.util.Date invalidation, java.lang.Integer cacheID, java.sql.Connection conn) throws CachingException
entityType
- ClassentityKey
- Stringinvalidation
- Dateconn
- Connection
CachingException
- - wraps an Exception specific to the store.private CachedEntityInvalidation[] selectAfter(java.lang.Class entityType, java.lang.String entityKey, java.util.Date invalidation, java.lang.Integer cacheID, java.sql.Connection conn) throws CachingException
entityType
- ClassentityKey
- Stringinvalidation
- DatecacheID
- Integer - the cache ID we do NOT want to retrieve.conn
- Connection
CachingException
- - wraps an Exception specific to the store.public static RDBMCachedEntityInvalidationStore singleton() throws CachingException
CachingException
private static java.lang.String sqlQuote(java.lang.Object o)
private static long getTimestampMillis(java.sql.Timestamp ts)
private void initialize() throws CachingException
CachingException
private static java.lang.String printTimestamp(java.sql.Timestamp ts)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |