Class CollectionConstraint.Contains

java.lang.Object
org.biojava.bio.CollectionConstraint.Contains
All Implemented Interfaces:
CollectionConstraint
Enclosing interface:
CollectionConstraint

public static class CollectionConstraint.Contains extends Object implements CollectionConstraint
CollectionConstraint which validates a portion of a Collection. Accepts only collections where the number of members matching the PropertyConstraint is in the supplied cardinality.

A typical application for this would be with Annotations where one property can contain a number of synonyms. CollectionConstraint.Contains could be used as a query to select instances based on one of these synonyms.

Author:
Thomas Down
  • Constructor Details

    • Contains

      Create a Contains based upon a PropertyConstraint and a cardinality.
      Parameters:
      pc - the PropertyConstraint to apply to each property value
      card - the cardinality constraint restricting the number of values
  • Method Details

    • getPropertyConstraint

      Get the PropertyConstraint used to validate each property value.
      Returns:
      the PropertyConstraint used
    • getCardinalityConstraint

      Get the cardinality constraint used to validate the number of property values.
      Returns:
      the cardinality constraint as a Location
    • accept

      public boolean accept(Object o)
      Description copied from interface: CollectionConstraint
      accept returns true if the value fulfills the constraint.
      Specified by:
      accept in interface CollectionConstraint
      Parameters:
      o - a Collection to check.
      Returns:
      true if the values are acceptable powerUser Manually compare items with the CollectionConstraint. Node: this will ususaly be done for you in an AnnotationType instance
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • validateAddValue

      public boolean validateAddValue(Collection oldCol, Object newValue)
      Description copied from interface: CollectionConstraint
      Return true iff the Collection formed by adding newValue to current would be accepted by this constraint. Implementations may not assume that current is valid.
      Specified by:
      validateAddValue in interface CollectionConstraint
      Parameters:
      oldCol - a Collection containing the current values
      newValue - the new value to add
      Returns:
      true if adding the new value will result in an acceptable property
    • validateRemoveValue

      public boolean validateRemoveValue(Collection oldCol, Object newValue)
      Description copied from interface: CollectionConstraint
      Return true iff the Collection formed by removing newValue from current would be accepted by this constraint. Implementations may not assume that current is valid. However, current will already have been checked to ensure that it contains victim.
      Specified by:
      validateRemoveValue in interface CollectionConstraint
      Parameters:
      oldCol - a Collection containing the current values
      newValue - the value to remove
      Returns:
      true if removing the victim will result in an acceptable property value set
    • subConstraintOf

      Description copied from interface: CollectionConstraint

      subConstraintOf returns true if the constraint is a sub-constraint.

      A pair of constraints super and sub are in a superConstraint/subConstraint relationship if every object accepted by sub is also accepted by super. To put it another way, if instanceOf was used as a set-membership indicator function over some set of objects, then the set produced by super would be a superset of that produced by sub.

      It is not expected that constraints will neccesarily maintain references to super/sub types. It will be more usual to infer this relationship by introspecting the constraints themselves. For example, CollectionConstraint.ByClass will infer subConstraintOf by looking at the possible class of all items matching subConstraint.

      Specified by:
      subConstraintOf in interface CollectionConstraint
      Parameters:
      cc - a CollectionConstraint to check.
      Returns:
      a boolean. Usefull when attempting to compare two constraints to see if it is necisary to retain both. You may want to check the more general or the more specific constraint only.
    • toString

      public String toString()
      Overrides:
      toString in class Object