public class TargetSystemOpsImpl extends java.lang.Object implements TargetSystemOps
| Constructor and Description |
|---|
TargetSystemOpsImpl(AbstractTargetSystem<?> targetSystem) |
| Modifier and Type | Method and Description |
|---|---|
<T> T |
applyChange(java.util.function.Function<ExecutionRuntime,T> changeApplier,
ExecutionRuntime executionRuntime)
Applies a change operation to this target system.
|
java.lang.String |
getId() |
io.flamingock.internal.common.core.targets.OperationType |
getOperationType()
Returns the type of operations supported by this target system.
|
<T> T |
rollbackChange(java.util.function.Function<ExecutionRuntime,T> changeRollbacker,
ExecutionRuntime executionRuntime)
Rolls back (reverts) a previously applied change in this target system.
|
public TargetSystemOpsImpl(AbstractTargetSystem<?> targetSystem)
public io.flamingock.internal.common.core.targets.OperationType getOperationType()
TargetSystemOpsgetOperationType in interface TargetSystemOpspublic final <T> T applyChange(java.util.function.Function<ExecutionRuntime,T> changeApplier, ExecutionRuntime executionRuntime)
TargetSystemOpsThis method coordinates the execution of a change by:
applyChange in interface TargetSystemOpsT - the return type of the change operationchangeApplier - the function that executes the actual changeexecutionRuntime - the runtime context for dependency resolutionpublic final <T> T rollbackChange(java.util.function.Function<ExecutionRuntime,T> changeRollbacker, ExecutionRuntime executionRuntime)
TargetSystemOpsThis method coordinates the execution of a rollback by:
Implementations should strive for idempotency: invoking the rollback more than once should not produce side effects beyond the first successful revert.
rollbackChange in interface TargetSystemOpsT - the return type of the rollback operationchangeRollbacker - the function that executes the actual rollbackexecutionRuntime - the runtime context for dependency resolutionpublic java.lang.String getId()
getId in interface io.flamingock.api.external.ExternalSystem