Class Subsettings

java.lang.Object
com.dassault_systemes.modeler.kerml.model.Subsettings

@OpenApiAll public class Subsettings extends Object
Utility class to work with Subsetting
  • Constructor Details

    • Subsettings

      public Subsettings()
  • Method Details

    • setAnyKindSubsetted

      public static void setAnyKindSubsetted(Feature subsetting, @CheckForNull Feature subsetted)
      Sets the subsetted feature for the given subsetting feature.
      Parameters:
      subsetting - the feature that subsets another
      subsetted - the feature being subsetted (maybe null)
    • setAnyKindSubsetted

      public static void setAnyKindSubsetted(Feature subsetting, List<Feature> subsetted)
      Sets the subsetted features for the given subsetting feature.
      Parameters:
      subsetting - the feature that subsets others
      subsetted - list of features being subsetted
    • addSubsetted

      public static void addSubsetted(Feature subsettingFeature, Feature subsetted)
      Adds a subsetted feature to the given subsetting feature.
      Parameters:
      subsettingFeature - the feature that subsets another
      subsetted - the feature being added as subsetted
    • getAnyKindSubsetting

      public static List<Feature> getAnyKindSubsetting(Feature subsetted, Type type)
      Returns all features that subset the given feature within the context of a type.
      Parameters:
      subsetted - the feature being subsetted
      type - the type whose features are checked
      Returns:
      list of subsetting features
    • getAnyKindSubsetting

      public static List<Feature> getAnyKindSubsetting(Feature subsetted, List<Feature> features)
      Returns all features that subset the given feature from the provided feature list.
      Parameters:
      subsetted - the feature being subsetted
      features - list of features to inspect
      Returns:
      list of subsetting features
    • isAnyKindSubsetting

      public static boolean isAnyKindSubsetting(Feature subsetting, Feature subsetted)
      Checks whether the given feature subsets another feature.
      Parameters:
      subsetting - the feature that may be subsetting
      subsetted - the feature being checked
      Returns:
      true if subsetting subsets subsetted
    • getOwnedNotImpliedAnyKindSubsettings

      public static List<Subsetting> getOwnedNotImpliedAnyKindSubsettings(Feature subsettingFeature)
      Returns all owned subsettings that are not implied.
      Parameters:
      subsettingFeature - the feature to inspect
      Returns:
      list of non-implied subsettings
    • getAllSubsettedAsChains

      public static List<List<Feature>> getAllSubsettedAsChains(Feature subsetting)
      Returns all subsetted features as chains for the given subsetting feature.
      Parameters:
      subsetting - the feature that subsets others
      Returns:
      list of feature chains
    • getAllSubsettedAsChains

      public static List<List<Feature>> getAllSubsettedAsChains(Feature subsetting, Predicate<Subsetting> subsettingFilter)
      Returns all subsetted features as chains using a filter.
      Parameters:
      subsetting - the feature that subsets others
      subsettingFilter - filter for selecting subsettings
      Returns:
      list of feature chains
    • setFirstSubsetted

      public static void setFirstSubsetted(Feature subsettingFeature, List<? extends Feature> subsettedAsChain, boolean set)
      Sets subsetted feature of given subsetting feature.
      Parameters:
      subsettingFeature - subsetting feature
      subsettedAsChain - subsetted feature as a chain
      set - if set to true, find first Subsetting and update it, if false - create new Subsetting
    • setAllSubsetted

      public static void setAllSubsetted(Feature subsettingFeature, List<List<Feature>> subsetted, boolean set)
      Sets subsetted feature of given subsetting feature.
      Parameters:
      subsettingFeature - subsetting feature
      subsetted - subsetted feature chain
      set - if set to true, find the first Subsetting and update it, if false - create new Subsetting
    • setAllSubsetted

      public static void setAllSubsetted(Feature subsettingFeature, List<List<Feature>> subsetted, Predicate<Subsetting> subsettingFilter, Class<? extends Subsetting> subsettingType, boolean allowImplied, boolean set)
      Sets subsetted features of given subsetting feature.
      Parameters:
      subsettingFeature - the feature that subsets others
      subsetted - list of feature chains
      subsettingFilter - filter for selecting relationships
      subsettingType - type of subsetting relationship
      allowImplied - whether implied relationships are allowed
      set - if set to true, replace all existing subsetted with given one, if false, append given ones