Package com._1c.g5.v8.derived.operations
Class OperationContext
- java.lang.Object
-
- com._1c.g5.v8.derived.operations.OperationContext
-
- All Implemented Interfaces:
IObjectDerivedDataContext
public final class OperationContext extends Object implements IObjectDerivedDataContext
Managed operation context
-
-
Constructor Summary
Constructors Constructor Description OperationContext(String segmentId, OperationType operationType, boolean important, Consumer<org.eclipse.core.runtime.IProgressMonitor> operation)
Constructs an instance of the operationOperationContext(String segmentId, OperationType operationType, boolean important, Consumer<org.eclipse.core.runtime.IProgressMonitor> operation, IModalOperationController modalOperationController)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
Clears the context.long
getBaseVersion()
Gets the base version of the context.long
getBmObjectId()
Gets the identifier of the object the context belongs to.Object
getComputationCause()
Gets the identifier of the session the context is being collected for.org.eclipse.emf.ecore.EClass
getEClass()
Gets the EClass of the target object.IModalOperationController
getModalOperationController()
Gets the modal operation controller for the modal operation (if any)Object
getObjectId()
Gets the the object the context belongs to.Consumer<org.eclipse.core.runtime.IProgressMonitor>
getOperation()
Gets the operation executableOperationType
getOperationType()
Gets the associated operation typeString
getSegmentId()
Gets the derived data segment identifier this context is collected for.IObjectDerivedDataContext
getSnapshot()
Gets the snapshot of the context.Object
getTransactionHandle()
Gets the associated transaction handle (if any).long
getVersion()
Gets the current version of the context.boolean
isFullRebuild()
Checks if the full rebuild mode is set for the object.boolean
isImportant()
Checks if the operation is important one.boolean
isModal()
Checks if this operation is modal one.boolean
isRemoval()
Checks if the current context represents removed object.boolean
mergeUpdates(IObjectDerivedDataContext context)
Merges updates into the context.void
setBaseVersion(long version)
Sets the base version of the context.void
setFullRebuild(boolean fullRebuild)
Sets/resets the full rebuild designator for the context object DD.void
setTransactionHandle(Object transactionHandle)
Sets the transaction handle for this context.
-
-
-
Constructor Detail
-
OperationContext
public OperationContext(String segmentId, OperationType operationType, boolean important, Consumer<org.eclipse.core.runtime.IProgressMonitor> operation)
Constructs an instance of the operation- Parameters:
segmentId
- The target pipeline segment identifier. May not benull
operationType
- The operation type. May not benull
operation
- The executable part of the operation. May not benull
-
OperationContext
public OperationContext(String segmentId, OperationType operationType, boolean important, Consumer<org.eclipse.core.runtime.IProgressMonitor> operation, IModalOperationController modalOperationController)
-
-
Method Detail
-
clear
public void clear()
Description copied from interface:IObjectDerivedDataContext
Clears the context. Implemenentations aren't required to be safe, the thread safety during the snapshot creation is supported by the DD context management facilities (due to complexity and performance reasons).- Specified by:
clear
in interfaceIObjectDerivedDataContext
-
getBaseVersion
public long getBaseVersion()
Description copied from interface:IObjectDerivedDataContext
Gets the base version of the context. The base version is used during the conflict resolution phase. In case if context computation task is started for the particular version, any updates of the context wiil result in cancelling of the computed results.- Specified by:
getBaseVersion
in interfaceIObjectDerivedDataContext
- Returns:
- The base version of the context.
-
getBmObjectId
public long getBmObjectId()
Description copied from interface:IObjectDerivedDataContext
Gets the identifier of the object the context belongs to.- Specified by:
getBmObjectId
in interfaceIObjectDerivedDataContext
- Returns:
- The identifier of the object.
-
getComputationCause
public Object getComputationCause()
Description copied from interface:IObjectDerivedDataContext
Gets the identifier of the session the context is being collected for. Used only for sync contexts.- Specified by:
getComputationCause
in interfaceIObjectDerivedDataContext
- Returns:
- The identifier of the session.
-
getEClass
public org.eclipse.emf.ecore.EClass getEClass()
Description copied from interface:IObjectDerivedDataContext
Gets the EClass of the target object.- Specified by:
getEClass
in interfaceIObjectDerivedDataContext
- Returns:
- The target object EClass.
-
getObjectId
public Object getObjectId()
Description copied from interface:IObjectDerivedDataContext
Gets the the object the context belongs to.- Specified by:
getObjectId
in interfaceIObjectDerivedDataContext
- Returns:
- The object, never
null
-
getOperation
public Consumer<org.eclipse.core.runtime.IProgressMonitor> getOperation()
Gets the operation executable- Returns:
- The operation executable. May not be
null
-
getOperationType
public OperationType getOperationType()
Gets the associated operation type- Returns:
- The type of the operation. May not be
null
-
getSegmentId
public String getSegmentId()
Description copied from interface:IObjectDerivedDataContext
Gets the derived data segment identifier this context is collected for.- Specified by:
getSegmentId
in interfaceIObjectDerivedDataContext
- Returns:
- The unique identifier of the DD segment.
-
getSnapshot
public IObjectDerivedDataContext getSnapshot()
Description copied from interface:IObjectDerivedDataContext
Gets the snapshot of the context. Implemenentations aren't required to be safe, the thread safety during the snapshot creation is supported by the DD context management facilities (due to complexity and performance reasons).- Specified by:
getSnapshot
in interfaceIObjectDerivedDataContext
- Returns:
- The current snapshot of the context state.
-
getTransactionHandle
public Object getTransactionHandle()
Description copied from interface:IObjectDerivedDataContext
Gets the associated transaction handle (if any).- Specified by:
getTransactionHandle
in interfaceIObjectDerivedDataContext
- Returns:
- The associated transaction handle (if any).
null
otherwise.
-
getVersion
public long getVersion()
Description copied from interface:IObjectDerivedDataContext
Gets the current version of the context. The version is defined during the snapshotting of the context. The verison is used during the context merge process to update the base version.- Specified by:
getVersion
in interfaceIObjectDerivedDataContext
- Returns:
- The version of the context.
-
isFullRebuild
public boolean isFullRebuild()
Description copied from interface:IObjectDerivedDataContext
Checks if the full rebuild mode is set for the object.- Specified by:
isFullRebuild
in interfaceIObjectDerivedDataContext
- Returns:
- True if the full rebuild is required for the given top object.
-
isRemoval
public boolean isRemoval()
Description copied from interface:IObjectDerivedDataContext
Checks if the current context represents removed object.- Specified by:
isRemoval
in interfaceIObjectDerivedDataContext
- Returns:
- True if the context was collected for the removed object; false otherwise.
-
mergeUpdates
public boolean mergeUpdates(IObjectDerivedDataContext context)
Description copied from interface:IObjectDerivedDataContext
Merges updates into the context. The base version of this context is being updated according to the verison of the provided context- Specified by:
mergeUpdates
in interfaceIObjectDerivedDataContext
- Parameters:
context
- The source of updates. Cannot benull
.
-
setBaseVersion
public void setBaseVersion(long version)
Description copied from interface:IObjectDerivedDataContext
Sets the base version of the context. Used during the merge operation.- Specified by:
setBaseVersion
in interfaceIObjectDerivedDataContext
- Parameters:
version
- The version to set.
-
setFullRebuild
public void setFullRebuild(boolean fullRebuild)
Description copied from interface:IObjectDerivedDataContext
Sets/resets the full rebuild designator for the context object DD.- Specified by:
setFullRebuild
in interfaceIObjectDerivedDataContext
- Parameters:
fullRebuild
- Full rebuild flag.
-
setTransactionHandle
public void setTransactionHandle(Object transactionHandle)
Description copied from interface:IObjectDerivedDataContext
Sets the transaction handle for this context.- Specified by:
setTransactionHandle
in interfaceIObjectDerivedDataContext
-
isModal
public boolean isModal()
Checks if this operation is modal one.- Returns:
- True if the operation is modal. False otherwise
-
getModalOperationController
public IModalOperationController getModalOperationController()
Gets the modal operation controller for the modal operation (if any)- Returns:
- The modal operation controller. May be
null
-
isImportant
public boolean isImportant()
Checks if the operation is important one. The system waits all important tasks to finish before the closure of the project context- Returns:
- True if the operation is important
-
-