Interface IInstallableUnitPatch

All Superinterfaces:
Comparable<IInstallableUnit>, IInstallableUnit, IVersionedId

public interface IInstallableUnitPatch extends IInstallableUnit
An installable unit patch is an installable unit that alters the required capabilities of another installable unit.

Instances of this class are handle objects and do not necessarily reflect entities that exist in any particular profile or repository. These handle objects can be created using MetadataFactory.

Since:
2.0
See Also:
Restriction:
This interface is not intended to be implemented by clients.
Restriction:
This interface is not intended to be extended by clients.
  • Method Details

    • getApplicabilityScope

      IRequirement[][] getApplicabilityScope()
      The applicability scope of a patch describes the installable units that this patch should be applied to. Specifically, this patch will be applied to all installable units that satisfy all of the required capabilities in one or more of the given required capability arrays.

      The returned two-dimensional array can be considered as a boolean expression, where items in the inner array are connected by AND operators, and each of the arrays are separated by OR operators. For example a scope of [[r1, r2, r3], [r4, r5]] will match any unit whose provided capabilities satisfy the expression ((r1 ^ r2 ^ r3) | (r4 ^ r5)).

      Restriction:
      This method is not intended to be referenced by clients.
    • getRequirementsChange

      List<IRequirementChange> getRequirementsChange()
      Returns the requirement changes imposed by the patch.
      Returns:
      The patch requirement changes.
    • getLifeCycle

      IRequirement getLifeCycle()
      Returns the required capability that defines the lifecycle of this patch. The patch will be installed into a profile if and only if the lifecycle capability is satisfied by some IU in the profile. If a future provisioning operation causes the requirement to no longer be satisfied, the patch will be uninstalled.