Class ManyStructuralFeatureAccessorImpl

All Implemented Interfaces:
ICompareAccessor, IStructuralFeatureAccessor, ITypedElement

public class ManyStructuralFeatureAccessorImpl extends AbstractStructuralFeatureAccessor
A specific AbstractStructuralFeatureAccessor for multi-valued structural feature objects.
Since:
4.0
  • Constructor Details

    • ManyStructuralFeatureAccessorImpl

      public ManyStructuralFeatureAccessorImpl(AdapterFactory adapterFactory, Diff diff, IMergeViewer.MergeViewerSide side)
      Default constructor.
      Parameters:
      adapterFactory - the adapater factory used to create the accessor.
      diff - the diff associated with this accessor.
      side - the side of the accessor.
  • Method Details

    • getItems

      public com.google.common.collect.ImmutableList<? extends IMergeViewerItem> getItems()
      Returns the list of items known by this accessor.
      Returns:
      the list of items known by this accessor.
      See Also:
    • findInsertionIndex

      protected int findInsertionIndex(Diff diff, boolean rightToLeft)
      Find the insertion index for the given diff.
      Parameters:
      diff - the given diff.
      rightToLeft - the way of merge.
      Returns:
      the insertion index.
    • getValueFromDiff

      protected Object getValueFromDiff(Diff diff, IMergeViewer.MergeViewerSide side)
      Get the value of the given side associated to the given Diff.
      Parameters:
      diff - the given Diff.
      side - the side of the Diff.
      Returns:
      the value associated to the given Diff.
    • getFeatureValues

      protected List<?> getFeatureValues(IMergeViewer.MergeViewerSide side)
      Returns the values of the current feature on the given side.
      Parameters:
      side - the given side.
      Returns:
      the values of the current feature on the given side.
    • getDiffValue

      protected Object getDiffValue(Diff diff)
      Returns either ReferenceChange.getValue(), AttributeChange.getValue() or a FeatureMapChange.getValue() depending on the runtime type of the give, diff or null otherwise.
      Parameters:
      diff - the given Diff.
      Returns:
      the value of the given Diff.