Class RightsPartialModelController
java.lang.Object
com._1c.g5.v8.dt.compare.ui.partialmodel.AbstractEmfBasedPartialModelController
com._1c.g5.v8.dt.md.compare.ui.AbstractMdAwarePartialModelController
com._1c.g5.v8.dt.rights.compare.ui.RightsPartialModelController
- All Implemented Interfaces:
IPartialModelControllerDelegate
Partial model controller for role's rights.
-
Field Summary
Fields inherited from class com._1c.g5.v8.dt.compare.ui.partialmodel.AbstractEmfBasedPartialModelController
scopeProvider, symbolicLinkLocalizer -
Constructor Summary
ConstructorsConstructorDescriptionRightsPartialModelController(ISymbolicLinkLocalizer symbolicLinkLocalizer, IBmRightsIndexManager bmRightsIndexManager, org.eclipse.xtext.naming.IQualifiedNameProvider qualifiedNameProvider, IResourceLookup resourceLookup, IModelObjectTreeSearchEngine searchEngine, IBmModelManager bmModelManager, IBmEmfIndexManager bmEmfIndexManager, IIndexSlicePredicateService slicePredicateService, IFilterBySubsystemsManager filterBySubsystemsManager, IDtProjectManager dtProjectManager) -
Method Summary
Modifier and TypeMethodDescriptionbooleancompareUsingExternalTool(IPartialModelNode node, org.eclipse.swt.widgets.Shell shell, String mainComparisonSideName, String otherComparisonSideName) Compares the specified node using external tool if the node is supported.protected IPartialFeatureNodecreateFeatureNode(IPartialModelNode parent, AbstractComparedEmfObjects<?> comparedParentObjects, ComparisonNode comparisonNode, org.eclipse.emf.ecore.EStructuralFeature feature, String mainLabel, String otherLabel, IComparisonSession session, ComparisonContext comparisonContext) Creates the node for feature.booleaneditMergeSettings(IPartialModel partialModel, IPartialModelNode node, IComparisonSession comparisonSession, org.eclipse.swt.widgets.Shell shell, boolean readOnly, org.eclipse.swt.graphics.Color colorHasDiffs, org.eclipse.swt.graphics.Color colorOnlyMain, org.eclipse.swt.graphics.Color colorOnlyOther, String mainComparisonSideName, String otherComparisonSideName, DtComparisonView parentComparisonView, ISelectionProviderDelegate selectionProviderDelegate, org.eclipse.jface.resource.ResourceManager resourceManager) If the node is supported, handles the editing of the specified node's merge settings.fillNodeProperties(IPartialModel partialModel, IDirectPartialModelNode directNode, IComparisonSession session, ILinkRepresentationSupport linkRepresentationSupport, ComparisonContext comparisonContext) Fills properties of the specified direct partial model node according to the comparison model node.protected List<IPartialFeatureNode>getChildrenFeatureNodes(IPartialModel partialModel, AbstractPartialModelNode node, IComparisonSession session, ILinkRepresentationSupport linkRepresentationSupport, Collection<IPartialModelNode> output, ComparisonContext comparisonContext) protected StringgetSingleRepresentation(IComparisonDataSource dataSource, org.eclipse.emf.ecore.EObject context, Object value, org.eclipse.emf.ecore.EStructuralFeature feature) getTopNodes(IPartialModel partialModel) Returns a sorted array of top nodes of the specified partial model.protected booleanisSupported(ComparisonNode node) booleanmergeUsingExternalTool(IPartialModel partialModel, IPartialModelNode node, org.eclipse.swt.widgets.Shell shell, String mainComparisonSideName, String otherComparisonSideName) Merges the specified node using external tool if the node is supported.positionChildNode(IPartialModel partialModel, IPartialModelNode parentNode, ComparisonNode modelNode, IComparisonSession comparisonSession) If supported by this controller, positions the specified comparison model node in a subtree of the specified partial model node.booleanrefreshNode(IPartialModel partialModel, IPartialModelNode node, IComparisonSession comparisonSession) Refreshes the partial model node properties according to the supported logic.protected voidGets the collection of registered inner elements suppliers used to form the customized nodes of the partial model.booleansetMergeRule(IPartialModel partialModel, IComparisonSession comparisonSession, IMergeRulePartialModelNode originalNode, MergeRule rule, ComparisonContext comparisonContext) Handles the merge rule change.booleanTells whether the delegate supports comparison using external tool of the specified node.booleanTells whether the delegate supports merging using external tool of the specified node.Methods inherited from class com._1c.g5.v8.dt.md.compare.ui.AbstractMdAwarePartialModelController
forEObject, getLocalizedStringMapRepresentation, getSingleValueRepresentation, getTypeRepresentation, getValueRepresentation, localizeSymbolicLinkMethods inherited from class com._1c.g5.v8.dt.compare.ui.partialmodel.AbstractEmfBasedPartialModelController
addFeatures, createEqualFeatureNode, createEqualNodesObjectsCollector, createInnerElements, createInnerElements, getBooleanRepresentation, getChildrenListNodes, getEObjectValue, getImageProvider, getListElementImageProvider, getRepresentation, getSymlink, isExpandableEqualNodeRequired, isExpandableFeatureNodeRequired, isExpandableNodeRequired, isTerminalNodeFeature
-
Constructor Details
-
RightsPartialModelController
@Inject public RightsPartialModelController(ISymbolicLinkLocalizer symbolicLinkLocalizer, IBmRightsIndexManager bmRightsIndexManager, org.eclipse.xtext.naming.IQualifiedNameProvider qualifiedNameProvider, IResourceLookup resourceLookup, IModelObjectTreeSearchEngine searchEngine, IBmModelManager bmModelManager, IBmEmfIndexManager bmEmfIndexManager, IIndexSlicePredicateService slicePredicateService, IFilterBySubsystemsManager filterBySubsystemsManager, IDtProjectManager dtProjectManager)
-
-
Method Details
-
editMergeSettings
public boolean editMergeSettings(IPartialModel partialModel, IPartialModelNode node, IComparisonSession comparisonSession, org.eclipse.swt.widgets.Shell shell, boolean readOnly, org.eclipse.swt.graphics.Color colorHasDiffs, org.eclipse.swt.graphics.Color colorOnlyMain, org.eclipse.swt.graphics.Color colorOnlyOther, String mainComparisonSideName, String otherComparisonSideName, DtComparisonView parentComparisonView, ISelectionProviderDelegate selectionProviderDelegate, org.eclipse.jface.resource.ResourceManager resourceManager) Description copied from interface:IPartialModelControllerDelegateIf the node is supported, handles the editing of the specified node's merge settings.- Parameters:
partialModel- the partial modelnode- the node to edit merge settings ofcomparisonSession- the comparison sessionshell- the parent shell, can not benullreadOnly-trueif it is possible to set merge settings andfalseif it is only possible to view the difference in nodecolorHasDiffs- the color for 'node has diffs' case, cannot benull.colorOnlyMain- the color for 'node has only main object' case, cannot benull.colorOnlyOther- the color for 'node has only other object' case, cannot benull.mainComparisonSideName- the main comparison side name, cannot benull.otherComparisonSideName- the other comparison side name, cannot benull.parentComparisonView- the parent comparison view this dialog was called from, cannot benullselectionProviderDelegate- the selection provider delegate, cannot benull.resourceManager- the resource manager, cannot benull- Returns:
trueif the node's merge settings have been successfully edited
-
fillNodeProperties
public Collection<IPartialModelNode> fillNodeProperties(IPartialModel partialModel, IDirectPartialModelNode directNode, IComparisonSession session, ILinkRepresentationSupport linkRepresentationSupport, ComparisonContext comparisonContext) Description copied from interface:IPartialModelControllerDelegateFills properties of the specified direct partial model node according to the comparison model node.- Parameters:
partialModel- the partial model hosting the direct nodedirectNode- the direct node to fill properties forsession- the comparison sessioncomparisonContext- the comparison context, notnull- Returns:
nullif this controller does not support the input partial model node, or a collection of output nodes whose properties must be filled by the caller (may be empty)
-
getTopNodes
Description copied from interface:IPartialModelControllerDelegateReturns a sorted array of top nodes of the specified partial model.- Parameters:
partialModel- the partial model- Returns:
- a sorted array of top nodes
-
positionChildNode
public IPartialModelNode positionChildNode(IPartialModel partialModel, IPartialModelNode parentNode, ComparisonNode modelNode, IComparisonSession comparisonSession) Description copied from interface:IPartialModelControllerDelegateIf supported by this controller, positions the specified comparison model node in a subtree of the specified partial model node. This may involve creation of additional (intermediate) subparents for hosting the positioned node.- Parameters:
partialModel- the partial modelparentNode- the parent direct partial model nodemodelNode- the comparison model node to be positionedcomparisonSession- the comparison session- Returns:
- the positioned partial model node or
nullif this controller does not support the specified model node
-
refreshNode
public boolean refreshNode(IPartialModel partialModel, IPartialModelNode node, IComparisonSession comparisonSession) Description copied from interface:IPartialModelControllerDelegateRefreshes the partial model node properties according to the supported logic.- Parameters:
partialModel- the partial modelnode- the partial model node to refreshcomparisonSession- the comparison session- Returns:
trueif the controller supports this node
-
setMergeRule
public boolean setMergeRule(IPartialModel partialModel, IComparisonSession comparisonSession, IMergeRulePartialModelNode originalNode, MergeRule rule, ComparisonContext comparisonContext) Description copied from interface:IPartialModelControllerDelegateHandles the merge rule change.- Parameters:
partialModel- the partial modelcomparisonSession- the comparison sessionoriginalNode- the node in which the rule has been setrule- the rule value that has been setcomparisonContext- the comparison context, notnull- Returns:
trueif this controller supported the operation for the provided arguments
-
supportsComparisonUsingExternalTool
Description copied from interface:IPartialModelControllerDelegateTells whether the delegate supports comparison using external tool of the specified node.- Parameters:
node- the partial mode node, cannot benull- Returns:
trueif the delegate supports comparison using external tool,falseotherwise
-
compareUsingExternalTool
public boolean compareUsingExternalTool(IPartialModelNode node, org.eclipse.swt.widgets.Shell shell, String mainComparisonSideName, String otherComparisonSideName) Description copied from interface:IPartialModelControllerDelegateCompares the specified node using external tool if the node is supported.- Parameters:
node- the partial node to compare using external tool, cannot benullshell- the parent shell, cannot benullmainComparisonSideName- the main comparison side name, cannot benullotherComparisonSideName- the other comparison side name, cannot benull- Returns:
trueif the node is supported to be compared using external tool,falseotherwise
-
supportsMergingUsingExternalTool
Description copied from interface:IPartialModelControllerDelegateTells whether the delegate supports merging using external tool of the specified node.- Parameters:
node- the partial mode node, cannot benull- Returns:
trueif the delegate supports merging using external tool,falseotherwise
-
mergeUsingExternalTool
public boolean mergeUsingExternalTool(IPartialModel partialModel, IPartialModelNode node, org.eclipse.swt.widgets.Shell shell, String mainComparisonSideName, String otherComparisonSideName) Description copied from interface:IPartialModelControllerDelegateMerges the specified node using external tool if the node is supported.- Parameters:
partialModel- the partial model, cannot benullnode- the partial node to merge using external tool, cannot benullshell- the parent shell, cannot benullmainComparisonSideName- the main comparison side name, cannot benullotherComparisonSideName- the other comparison side name, cannot benull- Returns:
trueif the node is supported to be merged using external tool,falseotherwise
-
createFeatureNode
protected IPartialFeatureNode createFeatureNode(IPartialModelNode parent, AbstractComparedEmfObjects<?> comparedParentObjects, ComparisonNode comparisonNode, org.eclipse.emf.ecore.EStructuralFeature feature, String mainLabel, String otherLabel, IComparisonSession session, ComparisonContext comparisonContext) Description copied from class:AbstractEmfBasedPartialModelControllerCreates the node for feature.- Overrides:
createFeatureNodein classAbstractEmfBasedPartialModelController- Parameters:
parent- the parent node.comparedParentObjects- the parent node compared objects.comparisonNode- the related comparison node.feature- the feature.mainLabel- the main label.otherLabel- the other label.session- the comparison session.comparisonContext- the comparison context, notnull- Returns:
- the created node, never
null.
-
getChildrenFeatureNodes
protected List<IPartialFeatureNode> getChildrenFeatureNodes(IPartialModel partialModel, AbstractPartialModelNode node, IComparisonSession session, ILinkRepresentationSupport linkRepresentationSupport, Collection<IPartialModelNode> output, ComparisonContext comparisonContext) - Overrides:
getChildrenFeatureNodesin classAbstractEmfBasedPartialModelController
-
getSingleRepresentation
protected String getSingleRepresentation(IComparisonDataSource dataSource, org.eclipse.emf.ecore.EObject context, Object value, org.eclipse.emf.ecore.EStructuralFeature feature) - Overrides:
getSingleRepresentationin classAbstractMdAwarePartialModelController
-
isSupported
- Specified by:
isSupportedin classAbstractEmfBasedPartialModelController
-
registerInnerElementSuppliers
Description copied from class:AbstractEmfBasedPartialModelControllerGets the collection of registered inner elements suppliers used to form the customized nodes of the partial model.- Overrides:
registerInnerElementSuppliersin classAbstractMdAwarePartialModelController- Parameters:
collector- Supplier collector.
-