Package weka.core.packageManagement

# 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 Summary

  Constructors
  Constructor
  Description
  `VersionRangePackageConstraint(Package p)`
  Constructor

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `checkConstraint(Package target)`
  Check the target package against the constraint embodied in this PackageConstraint.
  `PackageConstraint`
  `checkConstraint(PackageConstraint target)`
  Check the target package constraint against the constraint embodied in this package constraint.
  `String`
  `getLowerBound()`
  Get the lower bound of this range
  `VersionPackageConstraint.VersionComparison`
  `getLowerComparison()`
  Get the lower comparison
  `String`
  `getUpperBound()`
  Get the upper bound of this range
  `VersionPackageConstraint.VersionComparison`
  `getUpperComparison()`
  Get the upper comparison
  `boolean`
  `isBoundOR()`
  Returns true if this is a bounded OR type of constraint
  `void`
  `setRangeConstraint(String bound1, VersionPackageConstraint.VersionComparison comp1, String bound2, VersionPackageConstraint.VersionComparison comp2)`
  Set the range bounds and constraints.
  `String`
  `toString()`

  ### Methods inherited from class weka.core.packageManagement.PackageConstraint

  `getPackage, setPackage`

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## 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`