public abstract class AbstractBuilder<AUDIT_STORE extends AuditStore<?>,HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>> extends java.lang.Object implements CoreConfigurator<HOLDER>, io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER>
| Modifier and Type | Field and Description |
|---|---|
protected AUDIT_STORE |
auditStore |
protected io.flamingock.internal.common.core.context.Context |
context |
protected CoreConfiguration |
coreConfiguration |
protected TargetSystemManager |
targetSystemManager |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractBuilder(CoreConfiguration coreConfiguration,
io.flamingock.internal.common.core.context.Context context,
AUDIT_STORE auditStore) |
| Modifier and Type | Method and Description |
|---|---|
HOLDER |
addDependency(java.lang.Class<?> type,
java.lang.Object instance) |
HOLDER |
addDependency(java.lang.Object instance) |
HOLDER |
addDependency(java.lang.String name,
java.lang.Class<?> type,
java.lang.Object instance) |
HOLDER |
addDependency(java.lang.String name,
java.lang.Object instance) |
HOLDER |
addTargetSystem(io.flamingock.api.external.TargetSystem targetSystem) |
protected void |
configureStoreAndTargetSystem(PriorityContext dependencyContext) |
protected io.flamingock.internal.util.id.RunnerId |
generateRunnerId() |
protected AuditPersistence |
getAuditPersistence(PriorityContext hierarchicalContext) |
long |
getLockAcquiredForMillis() |
java.lang.Long |
getLockQuitTryingAfterMillis() |
long |
getLockTryFrequencyMillis() |
java.util.Map<java.lang.String,java.lang.Object> |
getMetadata() |
protected abstract HOLDER |
getSelf() |
java.lang.String |
getServiceIdentifier() |
boolean |
isEnabled() |
boolean |
isThrowExceptionIfCannotObtainLock() |
HOLDER |
setEnabled(boolean enabled) |
HOLDER |
setLockAcquiredForMillis(long lockAcquiredForMillis) |
HOLDER |
setLockQuitTryingAfterMillis(java.lang.Long lockQuitTryingAfterMillis) |
HOLDER |
setLockTryFrequencyMillis(long lockTryFrequencyMillis) |
HOLDER |
setMetadata(java.util.Map<java.lang.String,java.lang.Object> metadata) |
HOLDER |
setProperty(io.flamingock.internal.util.Property property) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Boolean value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Boolean[] value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Byte[] value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Character[] value) |
HOLDER |
setProperty(java.lang.String key,
java.nio.charset.Charset value) |
HOLDER |
setProperty(java.lang.String key,
java.util.Currency value) |
HOLDER |
setProperty(java.lang.String key,
java.util.Date value) |
HOLDER |
setProperty(java.lang.String key,
java.sql.Date value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Double value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Double[] value) |
HOLDER |
setProperty(java.lang.String key,
java.time.Duration value) |
HOLDER |
setProperty(java.lang.String key,
java.io.File value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Float value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Float[] value) |
HOLDER |
setProperty(java.lang.String key,
java.net.InetAddress value) |
HOLDER |
setProperty(java.lang.String key,
java.time.Instant value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Integer value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Integer[] value) |
HOLDER |
setProperty(java.lang.String key,
java.time.LocalDate value) |
HOLDER |
setProperty(java.lang.String key,
java.time.LocalDateTime value) |
HOLDER |
setProperty(java.lang.String key,
java.util.Locale value) |
HOLDER |
setProperty(java.lang.String key,
java.time.LocalTime value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Long value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Long[] value) |
HOLDER |
setProperty(java.lang.String key,
java.time.OffsetDateTime value) |
HOLDER |
setProperty(java.lang.String key,
java.time.OffsetTime value) |
HOLDER |
setProperty(java.lang.String key,
java.nio.file.Path value) |
HOLDER |
setProperty(java.lang.String key,
java.time.Period value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.Short[] value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.String value) |
HOLDER |
setProperty(java.lang.String key,
java.lang.String[] value) |
<T extends java.lang.Enum<T>> |
setProperty(java.lang.String key,
T value) |
HOLDER |
setProperty(java.lang.String key,
java.sql.Time value) |
HOLDER |
setProperty(java.lang.String key,
java.sql.Timestamp value) |
HOLDER |
setProperty(java.lang.String key,
java.net.URI value) |
HOLDER |
setProperty(java.lang.String key,
java.net.URL value) |
HOLDER |
setProperty(java.lang.String key,
java.util.UUID value) |
HOLDER |
setProperty(java.lang.String key,
java.time.ZonedDateTime value) |
HOLDER |
setServiceIdentifier(java.lang.String serviceIdentifier) |
HOLDER |
setThrowExceptionIfCannotObtainLock(boolean throwExceptionIfCannotObtainLock) |
protected void |
validateAuditStore() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddTargetSystemsprotected final io.flamingock.internal.common.core.context.Context context
protected final TargetSystemManager targetSystemManager
protected final CoreConfiguration coreConfiguration
protected AUDIT_STORE extends AuditStore<?> auditStore
protected AbstractBuilder(CoreConfiguration coreConfiguration, io.flamingock.internal.common.core.context.Context context, AUDIT_STORE auditStore)
protected abstract HOLDER getSelf()
protected void configureStoreAndTargetSystem(PriorityContext dependencyContext)
protected AuditPersistence getAuditPersistence(PriorityContext hierarchicalContext)
protected io.flamingock.internal.util.id.RunnerId generateRunnerId()
protected void validateAuditStore()
public HOLDER addTargetSystem(io.flamingock.api.external.TargetSystem targetSystem)
addTargetSystem in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setLockAcquiredForMillis(long lockAcquiredForMillis)
setLockAcquiredForMillis in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setLockQuitTryingAfterMillis(java.lang.Long lockQuitTryingAfterMillis)
setLockQuitTryingAfterMillis in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setLockTryFrequencyMillis(long lockTryFrequencyMillis)
setLockTryFrequencyMillis in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setThrowExceptionIfCannotObtainLock(boolean throwExceptionIfCannotObtainLock)
setThrowExceptionIfCannotObtainLock in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setEnabled(boolean enabled)
setEnabled in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setServiceIdentifier(java.lang.String serviceIdentifier)
setServiceIdentifier in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setMetadata(java.util.Map<java.lang.String,java.lang.Object> metadata)
setMetadata in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public long getLockAcquiredForMillis()
getLockAcquiredForMillis in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public java.lang.Long getLockQuitTryingAfterMillis()
getLockQuitTryingAfterMillis in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public long getLockTryFrequencyMillis()
getLockTryFrequencyMillis in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public boolean isThrowExceptionIfCannotObtainLock()
isThrowExceptionIfCannotObtainLock in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public boolean isEnabled()
isEnabled in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public java.lang.String getServiceIdentifier()
getServiceIdentifier in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public java.util.Map<java.lang.String,java.lang.Object> getMetadata()
getMetadata in interface CoreConfigurator<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER addDependency(java.lang.String name, java.lang.Class<?> type, java.lang.Object instance)
addDependency in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER addDependency(java.lang.Object instance)
addDependency in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER addDependency(java.lang.String name, java.lang.Object instance)
addDependency in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER addDependency(java.lang.Class<?> type, java.lang.Object instance)
addDependency in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(io.flamingock.internal.util.Property property)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.String value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Boolean value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Integer value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Float value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Long value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Double value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.util.UUID value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.util.Currency value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.util.Locale value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.nio.charset.Charset value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.io.File value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.nio.file.Path value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.net.InetAddress value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.net.URL value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.net.URI value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.Duration value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.Period value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.Instant value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.LocalDate value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.LocalTime value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.LocalDateTime value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.ZonedDateTime value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.OffsetDateTime value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.time.OffsetTime value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.util.Date value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.sql.Date value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.sql.Time value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.sql.Timestamp value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.String[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Integer[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Long[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Double[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Float[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Boolean[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Byte[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Short[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public HOLDER setProperty(java.lang.String key, java.lang.Character[] value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>public <T extends java.lang.Enum<T>> HOLDER setProperty(java.lang.String key, T value)
setProperty in interface io.flamingock.internal.common.core.context.ContextConfigurable<HOLDER extends AbstractBuilder<AUDIT_STORE,HOLDER>>