public class StandardLockService extends Object implements LockService
Modifier and Type | Field and Description |
---|---|
protected Long |
changeLogLockPollRate |
protected Long |
changeLogLockRecheckTime |
protected static ResourceBundle |
coreBundle |
protected Database |
database |
protected boolean |
hasChangeLogLock |
protected Boolean |
hasDatabaseChangeLogLockTable |
protected boolean |
isDatabaseChangeLogLockTableInitialized |
protected ObjectQuotingStrategy |
quotingStrategy |
protected SecureRandom |
random |
COMPARATOR, PRIORITY_DATABASE, PRIORITY_DEFAULT
Constructor and Description |
---|
StandardLockService() |
Modifier and Type | Method and Description |
---|---|
boolean |
acquireLock() |
void |
destroy() |
void |
forceReleaseLock()
Releases whatever locks are on the database change log table
|
protected Long |
getChangeLogLockRecheckTime() |
protected Long |
getChangeLogLockWaitTime() |
int |
getPriority() |
boolean |
hasChangeLogLock() |
protected boolean |
hasDatabaseChangeLogLockTable() |
protected boolean |
hasDatabaseChangeLogLockTable(boolean forceRecheck)
Check whether the databasechangeloglock table exists in the database.
|
void |
init() |
boolean |
isDatabaseChangeLogLockTableInitialized(boolean tableJustCreated) |
protected boolean |
isDatabaseChangeLogLockTableInitialized(boolean tableJustCreated,
boolean forceRecheck)
Determine whether the databasechangeloglock table has been initialized.
|
DatabaseChangeLogLock[] |
listLocks() |
void |
releaseLock() |
void |
reset()
Clears information the lock handler knows about the tables.
|
void |
setChangeLogLockRecheckTime(long changeLogLockRecheckTime) |
void |
setChangeLogLockWaitTime(long changeLogLockWaitTime) |
void |
setDatabase(Database database) |
boolean |
supports(Database database) |
void |
waitForLock() |
protected static final ResourceBundle coreBundle
protected Database database
protected boolean hasChangeLogLock
protected Long changeLogLockPollRate
protected Long changeLogLockRecheckTime
protected Boolean hasDatabaseChangeLogLockTable
protected boolean isDatabaseChangeLogLockTableInitialized
protected ObjectQuotingStrategy quotingStrategy
protected final SecureRandom random
public int getPriority()
getPriority
in interface PrioritizedService
public boolean supports(Database database)
supports
in interface LockService
public void setDatabase(Database database)
setDatabase
in interface LockService
protected Long getChangeLogLockWaitTime()
public void setChangeLogLockWaitTime(long changeLogLockWaitTime)
setChangeLogLockWaitTime
in interface LockService
protected Long getChangeLogLockRecheckTime()
public void setChangeLogLockRecheckTime(long changeLogLockRecheckTime)
setChangeLogLockRecheckTime
in interface LockService
public void init() throws DatabaseException
init
in interface LockService
DatabaseException
public boolean isDatabaseChangeLogLockTableInitialized(boolean tableJustCreated)
protected boolean isDatabaseChangeLogLockTableInitialized(boolean tableJustCreated, boolean forceRecheck)
forceRecheck
- if true, do not use any cached information, and recheck the actual databasepublic boolean hasChangeLogLock()
hasChangeLogLock
in interface LockService
protected boolean hasDatabaseChangeLogLockTable(boolean forceRecheck)
forceRecheck
- if true, do not use any cached information and check the actual databaseprotected boolean hasDatabaseChangeLogLockTable() throws DatabaseException
DatabaseException
public void waitForLock() throws LockException
waitForLock
in interface LockService
LockException
public boolean acquireLock() throws LockException
acquireLock
in interface LockService
LockException
public void releaseLock() throws LockException
releaseLock
in interface LockService
LockException
public DatabaseChangeLogLock[] listLocks() throws LockException
listLocks
in interface LockService
LockException
public void forceReleaseLock() throws LockException, DatabaseException
LockService
forceReleaseLock
in interface LockService
LockException
DatabaseException
public void reset()
LockService
reset
in interface LockService
public void destroy() throws DatabaseException
destroy
in interface LockService
DatabaseException
Copyright © 2023 Liquibase.org. All rights reserved.