Class VersionRangePackageConstraint

java.lang.Object
weka.core.packageManagement.PackageConstraint
weka.core.packageManagement.VersionRangePackageConstraint

public class VersionRangePackageConstraint extends PackageConstraint
A concrete implementation of PackgageConstraint that encapsulates ranged version number constraints. Handles constraints of the form (u.v.w < package < x.y.z) and (package < u.v.w OR package > x.y.z)
Version:
$Revision: 44030 $
Author:
Mark Hall (mhall{[at]}pentaho{[dot]}com)
  • Constructor Details

    • VersionRangePackageConstraint

      public VersionRangePackageConstraint(Package p)
      Constructor
      Parameters:
      p - the package to base this constraint on
  • Method Details

    • setRangeConstraint

      public void setRangeConstraint(String bound1, VersionPackageConstraint.VersionComparison comp1, String bound2, VersionPackageConstraint.VersionComparison comp2) throws Exception
      Set the range bounds and constraints.
      Parameters:
      bound1 - the first bound
      comp1 - the first comparison
      bound2 - the second bound
      comp2 - the second comparison
      Throws:
      Exception - if the range constraint is malformed
    • getLowerBound

      public String getLowerBound()
      Get the lower bound of this range
      Returns:
      the lower bound
    • getUpperBound

      public String getUpperBound()
      Get the upper bound of this range
      Returns:
      the upper bound
    • getLowerComparison

      public VersionPackageConstraint.VersionComparison getLowerComparison()
      Get the lower comparison
      Returns:
      the lower comparison
    • getUpperComparison

      public VersionPackageConstraint.VersionComparison getUpperComparison()
      Get the upper comparison
      Returns:
      the upper comparison
    • isBoundOR

      public boolean isBoundOR()
      Returns true if this is a bounded OR type of constraint
      Returns:
      true if this is a bounded OR type of constraint
    • checkConstraint

      public boolean checkConstraint(Package target) throws Exception
      Check the target package against the constraint embodied in this PackageConstraint.
      Specified by:
      checkConstraint in class PackageConstraint
      Parameters:
      target - a package to check with respect to the encapsulated package and the constraint.
      Returns:
      true if the constraint is met by the target package with respect to the encapsulated package + constraint.
      Throws:
      Exception - if the constraint can't be checked for some reason.
    • checkConstraint

      public PackageConstraint checkConstraint(PackageConstraint target) throws Exception
      Description copied from class: PackageConstraint
      Check the target package constraint against the constraint embodied in this package constraint. Returns either the package constraint that covers both this and the target constraint, or null if this and the target are incompatible.
      Specified by:
      checkConstraint in class PackageConstraint
      Parameters:
      target - the package constraint to compare against
      Returns:
      a package constraint that covers this and the supplied constraint, or null if they are incompatible.
      Throws:
      Exception
    • toString

      public String toString()
      Overrides:
      toString in class Object