Class PermuteFeature<S, T extends FeatureInput>

Object
AnchorBean<FeatureListProvider<T>>
InitializableBean<FeatureListProvider<T>, FeatureRelatedInitialization>
FeatureRelatedBean<FeatureListProvider<T>>
FeatureProviderBean<FeatureListProvider<T>, FeatureList<T>>
FeatureListProvider<T>
PermuteFeatureBase<T>
PermuteFeature<S,T>
Type Parameters:
S - permutation type
T - feature-input
All Implemented Interfaces:
Provider<FeatureList<T>>

public class PermuteFeature<S, T extends FeatureInput> extends PermuteFeatureBase<T>
Permutes one or more properties of a Feature, so as to create a set of Features

As a convenience, a single permutation can be defined using the permutation property, whereas multiple permutations can be defined using permutations list of properties.

Author:
Owen Feehan
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    checkMisconfigured(BeanInstanceMap defaultInstances)
     
    protected FeatureList<T>
    createPermutedFeaturesFor(Feature<T> feature)
    Creates permuted features for the given feature.
    PermuteProperty<S>
    A permutation to apply.
    List<PermuteProperty<S>>
    A list of permutations to apply.
    StringSet
    Makes sure a particular feature list creator is evaluated
    void
    onInitialization(FeatureRelatedInitialization so)
     
    void
    setPermutation(PermuteProperty<S> permutation)
    A permutation to apply.
    void
    setPermutations(List<PermuteProperty<S>> permutations)
    A list of permutations to apply.
    void
    setReferencesFeatureListCreator(StringSet referencesFeatureListCreator)
    Makes sure a particular feature list creator is evaluated

    Methods inherited from class org.anchoranalysis.plugin.image.feature.bean.list.permute.PermuteFeatureBase

    get, getFeature, setFeature

    Methods inherited from class org.anchoranalysis.bean.initializable.InitializableBean

    getInitialization, getLogger, getPropertyInitializer, initialize, initializeRecursive, initRecursiveWithInitializer, isInitialized

    Methods inherited from class org.anchoranalysis.bean.AnchorBean

    describeBean, describeChildren, duplicateBean, fields, findFieldsOfClass, getBeanName, getLocalPath, localise, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • PermuteFeature

      public PermuteFeature()
  • Method Details

    • checkMisconfigured

      public void checkMisconfigured(BeanInstanceMap defaultInstances) throws BeanMisconfiguredException
      Overrides:
      checkMisconfigured in class AnchorBean<FeatureListProvider<T extends FeatureInput>>
      Throws:
      BeanMisconfiguredException
    • createPermutedFeaturesFor

      protected FeatureList<T> createPermutedFeaturesFor(Feature<T> feature) throws ProvisionFailedException
      Description copied from class: PermuteFeatureBase
      Creates permuted features for the given feature.
      Specified by:
      createPermutedFeaturesFor in class PermuteFeatureBase<T extends FeatureInput>
      Parameters:
      feature - the feature to permute
      Returns:
      a FeatureList containing the permuted features
      Throws:
      ProvisionFailedException - if the permuted features cannot be created
    • onInitialization

      public void onInitialization(FeatureRelatedInitialization so) throws InitializeException
      Overrides:
      onInitialization in class InitializableBean<FeatureListProvider<T extends FeatureInput>, FeatureRelatedInitialization>
      Throws:
      InitializeException
    • getReferencesFeatureListCreator

      public StringSet getReferencesFeatureListCreator()
      Makes sure a particular feature list creator is evaluated
    • setReferencesFeatureListCreator

      public void setReferencesFeatureListCreator(StringSet referencesFeatureListCreator)
      Makes sure a particular feature list creator is evaluated
    • getPermutation

      public PermuteProperty<S> getPermutation()
      A permutation to apply. Either this must be present or permutations must be non-empty, but not both.
    • setPermutation

      public void setPermutation(PermuteProperty<S> permutation)
      A permutation to apply. Either this must be present or permutations must be non-empty, but not both.
    • getPermutations

      public List<PermuteProperty<S>> getPermutations()
      A list of permutations to apply. Either this must be non-empty or permutation must be present, but not both.
    • setPermutations

      public void setPermutations(List<PermuteProperty<S>> permutations)
      A list of permutations to apply. Either this must be non-empty or permutation must be present, but not both.