public class ReplicationTarget extends AbstractReplicationEntity implements FabricRequestListener, SchemaObject, com.streamscape.ds.utils.SourceEventFlowData
Title: Dataspace Framework
Description: Replication target implementation
Copyright: Copyright (c) 2012
Company: StreamScape Technologies
Modifier and Type | Class and Description |
---|---|
static class |
ReplicationTarget.ExceptionMessage |
SchemaObject.ConstraintTypes, SchemaObject.Deferable, SchemaObject.Nullability, SchemaObject.ParameterModes, SchemaObject.ReferentialAction, SchemaObject.ViewCheckModes
Modifier and Type | Field and Description |
---|---|
static long |
MESSAGE_EXPIRATION_CLEANUP_TIMEOUT |
static long |
MESSAGE_EXPIRATION_TIMEOUT |
static long |
SOURCE_CHECK_TIMEOUT_MS |
ACTOR, ASPECTS, ASSERTION, CATALOG, CHARSET, COLLATION, COLLECTION, COLUMN, CONNECTION_FACTORY, CONSTRAINT, CURSOR, DOMAIN, emptyArray, EVENT_PROTOTYPE, FACETS, FILE_DESCRIPTOR, FULL_TEXT_INDEX, FUNCTION, GRANTEE, INDEX, JOB, LABEL, PARAMETER, PROCEDURE, REFERENCE_LINK, REPLICA, REPLICATION_SOURCE, ROUTINE, SCHEMA, SEMANTIC_TYPE, SEQUENCE, SERVER, SPECIFIC_ROUTINE, SUBQUERY, TABLE, TIMER, TRANSIENT_VAR, TRANSITION, TRIGGER, TYPE, VARIABLE, VIEW, WRAPPER
Constructor and Description |
---|
ReplicationTarget(DataspaceStore store,
NameManager.ObjectName name,
ReplicationEntityName sourceEntityName,
java.lang.String targetCollection,
boolean withMaterialization,
boolean newCollection,
boolean stopped,
boolean isSuspended,
int retryCount,
boolean upsert,
boolean ignoreOnFailDelete,
boolean ignoreOnFailUpdate,
boolean ignoreOnFailInsert,
long publishTimeWindow,
java.util.concurrent.TimeUnit publishTimeWindowUnit,
long publishBatchWindow,
java.util.List primaryReplicationKey) |
Modifier and Type | Method and Description |
---|---|
void |
addValidationTrigger(com.streamscape.ds.trigger.ReplicationValidateTrigger trigger) |
void |
alterIgnoreOnFailDelete(boolean ignoreOnFailDelete) |
void |
alterIgnoreOnFailInsert(boolean ignoreOnFailInsert) |
void |
alterIgnoreOnFailUpdate(boolean ignoreOnFailUpdate) |
void |
alterPrimaryReplicationKey(java.util.List primaryReplicationKey) |
void |
alterPublishParameters(java.lang.Long publishTimeWindow,
java.util.concurrent.TimeUnit publishTimeWindowUnit,
java.lang.Long publishBatchWindow) |
void |
alterRetryCount(int retryCount) |
void |
alterUpsert(boolean upsert) |
void |
attachToSource(com.streamscape.ds.session.Session parentSession) |
void |
attachToSourceMonitor() |
void |
attachToSourceMonitor(com.streamscape.ds.session.Session session) |
void |
checkReplicaIsPairedWithSourceMonitor(com.streamscape.ds.session.Session session) |
void |
compile(com.streamscape.ds.session.Session session,
SchemaObject parentObject) |
void |
destroy(com.streamscape.ds.session.Session session) |
void |
detachFromSource(com.streamscape.ds.session.Session session,
boolean withStateChange) |
void |
detachFromSourceAndDestroy(com.streamscape.ds.session.Session session) |
void |
doMaterialize(com.streamscape.ds.session.Session session,
int fetchSize,
long timeout,
boolean append) |
void |
enqueueReattachAction() |
java.lang.Object |
executeInRequestOrTargetSession(com.streamscape.ds.session.Session requestSession,
java.util.function.Function function) |
java.lang.Object |
executeInRequestSessionOrSession(com.streamscape.ds.session.Session requestSession,
com.streamscape.ds.session.Session session,
java.util.function.Function function) |
NameManager.ObjectName |
getCatalogName() |
long |
getChangeTimestamp() |
Collection |
getCollection() |
FabricAddress |
getComponentAddress() |
com.streamscape.ds.lib.OrderedHashSet |
getComponents() |
EventFlowEntity |
getEntity() |
java.lang.String |
getEntityName() |
java.util.HashMap |
getEntityParameters() |
EventScope |
getEntityScope() |
EventScope |
getEventScope() |
long |
getIdentity() |
java.lang.String |
getLastError() |
ReplicationDataTransaction |
getLastReplicationUnit() |
ReplicationMetaSchema |
getMetaSchema() |
java.lang.String |
getName() |
NameManager.ObjectName |
getObjectName() |
int |
getObjectType() |
com.streamscape.ds.rights.Grantee |
getOwner() |
ReplicationTargetReference |
getReference() |
com.streamscape.ds.lib.OrderedHashSet |
getReferences() |
ReplicaInfo |
getReplicaInfo(boolean withMetrics) |
ReplicationDeliveryMetrics.ReplicaMetricsReport |
getReplicaMetricsReport() |
long |
getReplicationId() |
com.streamscape.ds.trigger.ReplicationModifyTrigger |
getReplicationModifyTrigger() |
ReplicationSourceInfo |
getReplicationSourceInfo() |
NameManager.ObjectName |
getSchemaName() |
ReplicationEntityName |
getSourceEntityName() |
java.lang.String |
getSQL() |
java.lang.String |
getSQL(java.lang.String name) |
ReplicaState |
getState() |
java.lang.String |
getTargetCollectionName() |
ReplicationEntityName |
getTargetEntityName() |
com.streamscape.ds.trigger.ReplicationValidateTrigger |
getValidationTrigger(java.lang.String name) |
int |
getVersion() |
boolean |
isAttachedToSource() |
boolean |
isNew() |
boolean |
isRollbackOnFailure() |
boolean |
isSourceEnabled() |
boolean |
isSuspended() |
boolean |
isSync() |
boolean |
isSyncSet() |
boolean |
isWithMaterialization() |
java.util.List |
listValidationTriggerNames() |
void |
materialize(com.streamscape.ds.session.Session session,
boolean append) |
ImmutableEventDatagram |
onRequest(ImmutableEventDatagram event)
Processes the specified event and returns a reply.
|
void |
open(com.streamscape.ds.session.Session session) |
static java.lang.StringBuilder |
printPreparedStatement(com.streamscape.ds.session.Session session,
java.lang.StringBuilder builder,
java.lang.String statement,
java.lang.Object[] parameters) |
static java.lang.String |
printPreparedStatement(com.streamscape.ds.session.Session session,
java.lang.String statement,
java.lang.Object[] parameters) |
boolean |
raiseReplicationException(java.lang.Throwable exception,
boolean withExpiration) |
void |
removeReplicationModifyTrigger() |
void |
removeValidationTrigger(com.streamscape.ds.trigger.ReplicationValidateTrigger trigger) |
void |
reset(com.streamscape.ds.session.Session session) |
void |
resetMetrics() |
void |
resume(com.streamscape.ds.session.Session session) |
void |
sendReplicaDetachedMonitor(com.streamscape.ds.session.Session session) |
void |
sendReplicaStateChangedRequestMonitor(com.streamscape.ds.session.Session session,
boolean withReplicationId) |
void |
setIdentity(long identity) |
void |
setInitVersion(int version) |
void |
setReplicationId(com.streamscape.ds.session.Session session,
long replicationId) |
void |
setReplicationModifyTrigger(com.streamscape.ds.trigger.ReplicationModifyTrigger trigger) |
void |
setSourceEntityName(ReplicationEntityName sourceEntityName) |
void |
setWithMaterialization(boolean withMaterialization) |
void |
skipCurrentUnitOnReplica(com.streamscape.ds.session.Session session) |
void |
sourceDisconnected(ReplicationResponse response) |
void |
sourceDisconnected(java.lang.String message) |
void |
start(com.streamscape.ds.session.Session session) |
void |
stop(com.streamscape.ds.session.Session session) |
void |
suspend(com.streamscape.ds.session.Session session) |
void |
updateSyncAndRollbackOnFailure(boolean sync,
boolean rollbackOnFailure) |
addTrigger, enqueueMonitorAction, getDataspace, getTrigger, listFailTriggerNames, listRollbackTriggerNames, listSuccessTriggerNames, onReplicationFail, onReplicationFail, onReplicationRollback, onReplicationSuccess, removeTrigger
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
aggregateObjectStateHolder, getSQLInSchema, recompileObject
public static final long SOURCE_CHECK_TIMEOUT_MS
public static final long MESSAGE_EXPIRATION_TIMEOUT
public static final long MESSAGE_EXPIRATION_CLEANUP_TIMEOUT
public ReplicationTarget(DataspaceStore store, NameManager.ObjectName name, ReplicationEntityName sourceEntityName, java.lang.String targetCollection, boolean withMaterialization, boolean newCollection, boolean stopped, boolean isSuspended, int retryCount, boolean upsert, boolean ignoreOnFailDelete, boolean ignoreOnFailUpdate, boolean ignoreOnFailInsert, long publishTimeWindow, java.util.concurrent.TimeUnit publishTimeWindowUnit, long publishBatchWindow, java.util.List primaryReplicationKey)
public long getIdentity()
public void setIdentity(long identity)
public ReplicaState getState()
public boolean isSuspended()
public java.lang.String getLastError()
public Collection getCollection()
getCollection
in class AbstractReplicationEntity
public void open(com.streamscape.ds.session.Session session)
public void stop(com.streamscape.ds.session.Session session)
public void start(com.streamscape.ds.session.Session session)
public void suspend(com.streamscape.ds.session.Session session)
public void resetMetrics()
public void alterPublishParameters(java.lang.Long publishTimeWindow, java.util.concurrent.TimeUnit publishTimeWindowUnit, java.lang.Long publishBatchWindow)
public void resume(com.streamscape.ds.session.Session session)
public void attachToSourceMonitor()
public void attachToSourceMonitor(com.streamscape.ds.session.Session session)
public void checkReplicaIsPairedWithSourceMonitor(com.streamscape.ds.session.Session session)
public void sendReplicaStateChangedRequestMonitor(com.streamscape.ds.session.Session session, boolean withReplicationId)
public void sendReplicaDetachedMonitor(com.streamscape.ds.session.Session session)
public void attachToSource(com.streamscape.ds.session.Session parentSession)
public void sourceDisconnected(java.lang.String message)
public void sourceDisconnected(ReplicationResponse response)
public void detachFromSource(com.streamscape.ds.session.Session session, boolean withStateChange)
public void destroy(com.streamscape.ds.session.Session session)
public void detachFromSourceAndDestroy(com.streamscape.ds.session.Session session)
public void reset(com.streamscape.ds.session.Session session)
public void setReplicationId(com.streamscape.ds.session.Session session, long replicationId)
public void skipCurrentUnitOnReplica(com.streamscape.ds.session.Session session)
public void materialize(com.streamscape.ds.session.Session session, boolean append)
public void doMaterialize(com.streamscape.ds.session.Session session, int fetchSize, long timeout, boolean append)
public ImmutableEventDatagram onRequest(ImmutableEventDatagram event) throws FabricRequestException
FabricRequestListener
onRequest
in interface FabricRequestListener
event
- the event to be processed.FabricRequestException
- if some error occurs during processing.public void updateSyncAndRollbackOnFailure(boolean sync, boolean rollbackOnFailure)
public boolean isNew()
public boolean isWithMaterialization()
public void setWithMaterialization(boolean withMaterialization)
public ReplicationEntityName getSourceEntityName()
public ReplicationEntityName getTargetEntityName()
public void setSourceEntityName(ReplicationEntityName sourceEntityName)
public void compile(com.streamscape.ds.session.Session session, SchemaObject parentObject)
compile
in interface SchemaObject
public int getObjectType()
getObjectType
in interface SchemaObject
public NameManager.ObjectName getObjectName()
getObjectName
in interface SchemaObject
getObjectName
in class AbstractReplicationEntity
public java.lang.String getTargetCollectionName()
public NameManager.ObjectName getSchemaName()
getSchemaName
in interface SchemaObject
public NameManager.ObjectName getCatalogName()
getCatalogName
in interface SchemaObject
public com.streamscape.ds.rights.Grantee getOwner()
getOwner
in interface SchemaObject
public com.streamscape.ds.lib.OrderedHashSet getReferences()
getReferences
in interface SchemaObject
public com.streamscape.ds.lib.OrderedHashSet getComponents()
getComponents
in interface SchemaObject
public long getChangeTimestamp()
getChangeTimestamp
in interface SchemaObject
public java.lang.String getSQL()
getSQL
in interface SchemaObject
public java.lang.String getSQL(java.lang.String name)
getSQL
in interface SchemaObject
public FabricAddress getComponentAddress()
public EventScope getEventScope()
public long getReplicationId()
public void setInitVersion(int version)
public int getVersion()
public ReplicationTargetReference getReference()
public java.lang.String getName()
getName
in class AbstractReplicationEntity
public ReplicationMetaSchema getMetaSchema()
public boolean isAttachedToSource()
public boolean raiseReplicationException(java.lang.Throwable exception, boolean withExpiration)
raiseReplicationException
in class AbstractReplicationEntity
public java.lang.Object executeInRequestOrTargetSession(com.streamscape.ds.session.Session requestSession, java.util.function.Function function)
public java.lang.Object executeInRequestSessionOrSession(com.streamscape.ds.session.Session requestSession, com.streamscape.ds.session.Session session, java.util.function.Function function)
public boolean isSyncSet()
public ReplicaInfo getReplicaInfo(boolean withMetrics)
public boolean isSourceEnabled()
public boolean isRollbackOnFailure()
public boolean isSync()
public void alterRetryCount(int retryCount)
public ReplicationDeliveryMetrics.ReplicaMetricsReport getReplicaMetricsReport()
public void alterUpsert(boolean upsert)
public void alterIgnoreOnFailDelete(boolean ignoreOnFailDelete)
public void alterIgnoreOnFailUpdate(boolean ignoreOnFailUpdate)
public void alterIgnoreOnFailInsert(boolean ignoreOnFailInsert)
public void alterPrimaryReplicationKey(java.util.List primaryReplicationKey)
public static java.lang.String printPreparedStatement(com.streamscape.ds.session.Session session, java.lang.String statement, java.lang.Object[] parameters)
public static java.lang.StringBuilder printPreparedStatement(com.streamscape.ds.session.Session session, java.lang.StringBuilder builder, java.lang.String statement, java.lang.Object[] parameters)
public void addValidationTrigger(com.streamscape.ds.trigger.ReplicationValidateTrigger trigger)
public com.streamscape.ds.trigger.ReplicationValidateTrigger getValidationTrigger(java.lang.String name)
public void removeValidationTrigger(com.streamscape.ds.trigger.ReplicationValidateTrigger trigger)
public java.util.List listValidationTriggerNames()
public ReplicationDataTransaction getLastReplicationUnit()
public void setReplicationModifyTrigger(com.streamscape.ds.trigger.ReplicationModifyTrigger trigger)
public com.streamscape.ds.trigger.ReplicationModifyTrigger getReplicationModifyTrigger()
public void removeReplicationModifyTrigger()
public EventFlowEntity getEntity()
getEntity
in interface com.streamscape.ds.utils.SourceEventFlowData
public java.lang.String getEntityName()
getEntityName
in interface com.streamscape.ds.utils.SourceEventFlowData
public EventScope getEntityScope()
getEntityScope
in interface com.streamscape.ds.utils.SourceEventFlowData
public java.util.HashMap getEntityParameters()
getEntityParameters
in interface com.streamscape.ds.utils.SourceEventFlowData
public ReplicationSourceInfo getReplicationSourceInfo()
public void enqueueReattachAction()
Copyright © 2015-2024 StreamScape Technologies. All rights reserved.