Interface ESIEffectivityHandler

All Known Implementing Classes:
ESIEffectivityHandlerImpl

public interface ESIEffectivityHandler
Interface for obtaining information about the relationships between effectivities and EffManagedVersion objects.

Supported API: true

Extendable: true
  • Method Details

    • getLatestEffectivity

      Eff getLatestEffectivity(EffManagedVersion part) throws WTException
      Returns the latest non-product-specific Date Effectivity that is associated with an object.

      Supported API: true
      Parameters:
      part - The part whose effectivity is to be obtained
      Returns:
      Eff
      Throws:
      WTException
    • getLatestEffectivity

      Eff getLatestEffectivity(EffManagedVersion emv, int type) throws WTException
      Returns the latest effectivity of a given type that is associated with a given object (of type EffManagedVersion).

      Supported API: true
      Parameters:
      emv - EffManagedVersion instance whose latest effectivity of the given type is to be fetched.
      type - This is either DATE_EFFECTIVITY_TYPE, SERIAL_NUMBER_EFFECTIVITY_TYPE or LOT_NUMBER_EFFECTIVITY_TYPE, according as the latest Date, Serial Number or Lot Number effectivity associated with the given object is to be fetched respectively.
      Returns:
      Eff
      Throws:
      WTException
    • getLatestEffectivities

      Eff[] getLatestEffectivities(EffManagedVersion emv) throws ESIRendererException
      Fetches the latest date, serial number and lot number effectivities associated with a given object (of type EffManagedVersion), stores them in an array of Effs and returns the array to the caller.

      Supported API: true
      Parameters:
      emv - EffManagedVersion instance for which to fetch the latest date, serial number and lot number effectivities.
      Returns:
      Eff[]
      Throws:
      ESIRendererException
    • isReleased

      boolean isReleased(ESITargetAssociation assn)
      Given an ESITargetAssociation containing an Eff and an ESITarget, returns true if the Eff has been released to the ESITarget.

      Supported API: true
      Parameters:
      assn -
      Returns:
      boolean
    • isReleased

      boolean isReleased(EffManagedVersion emv, ESITarget target, int type)
      Returns true if the latest effectivity of a given type associated with a given object (of type EffManagedVersion), is also the effectivity (of the same type) that was last exported to a given distribution target.

      Supported API: true
      Parameters:
      emv - EffManagedVersion instance for which to determine whether the effectivity has been released or not.
      target - ESITarget instance representing the given distribution target.
      type - Specifies the type of effectivity in question - it takes any of the named constants defined in this interface for its value.
      Returns:
      boolean
    • getClassForEffectivityType

      Class getClassForEffectivityType(int type)
      Returns the Class instance corresponding to the type of effectivity that is passed to it.

      Supported API: true
      Parameters:
      type - Specifies the type of effectivity - this could take any of the named constants (such as DATE_EFFECTIVITY_TYPE, SERIAL_NUMBER_EFFECTIVITY_TYPE or LOT_NUMBER_EFFECTIVITY_TYPE) defined in this interface for its value
      Returns:
      Class
    • isCompEffReleased

      boolean isCompEffReleased(WTPart part, Collection<WTPart> componentParts, ESITargetAssociation assn, WTPart root, NavigationCriteria navCriteria) throws ESIRendererException
      Lets the caller know if the latest serial or lot effectivity associated with any of the components in the passed BOM is already published. Besides, it validates the serial/lot effectivity assigned to each component in the BOM. If the effectivity on any of the components is found to be invalid, an exception is thrown.

      Supported API: true
      Parameters:
      part - WTPart instance representing the given BOM header
      componentParts - WTPart that are components/children of the part.
      assn - ESITargetAssociation object that represents the association between the part and the distribution target (that the part is exported to).
      root - WTPart instance representing the top-level assembly part.
      navCriteria - NavigationCriteria object to use for performing the check.
      Returns:
      false, if the serial/lot effectivity assigned to any of the components in the BOM is not published yet; true, otherwise.
      Throws:
      ESIRendererException - If the serial/lot effectivity associated with any of the components in the BOM is found to be invalid.
    • validateUnitEffOnChangeable

      int validateUnitEffOnChangeable(WTPart part, Map<Releasable,String> changeables, Map<WTPart,String> contextIterations, NavigationCriteria navCriteria) throws WTException
      Lets the caller know if the latest unit effectivity associated with the passed part is valid.

      Supported API: true
      Parameters:
      part - WTPart instance whose unit effectivity is to be validated.
      changeables - Map of Releasables and multilevel flag values; the keys are typically resulting objects associated with an ECN.
      contextIterations - If the preference "Include Effectivity Context" has a value "Yes" and the relevant effectivity context iteration does not already figure in changeables, the iteration is added to this Hashtable.
      navCriteria - NavigationCriteria object to use for performing the validation.
      Returns:
      An integer indicating whether the unit effectivity associated with part is valid or otherwise.
      Throws:
      WTException - If an error occurred while performing the required validation.
    • initialize

      void initialize()
      Method to initialize some variables.

      Supported API: true
    • setBuilder

      void setBuilder(VdbBuilder builder)
      Sets the attribute that holds a reference to the VdbBuilder instance.

      Supported API: true
      Parameters:
      builder - Reference to the VdbBuilder instance that the attribute is to be set to.
    • getLatestEffectivities

      List<Eff>[] getLatestEffectivities(EffManagedVersion emv, String type) throws ESIRendererException
      Fetches the latest date, serial number and lot number effectivities associated with a given object (of type EffManagedVersion), stores them in an array of Eff instances and returns the array to the caller. Some of the elements in the output array could be null, depending on whether or not the given object has the given type of effectivity associated with it.

      Supported API: true
      Parameters:
      emv - EffManagedVersion instance Object iteration (of type EffManagedVersion) whose effectivity needs to be returned.
      type -
      Returns:
      Throws:
      ESIRendererException
    • getLatestEffectivity

      List<Eff> getLatestEffectivity(EffManagedVersion emv, int type, String effType) throws WTException
      Returns the latest Effectivity of a given type that is associated with a given object.

      Supported API: true
      Parameters:
      emv - Object iteration (of type EffManagedVersion) whose effectivity needs to be returned.
      type - This is either ESIEffectivityHandler.DATE_EFFECTIVITY_TYPE, ESIEffectivityHandler.SERIAL_NUMBER_EFFECTIVITY_TYPE or ESIEffectivityHandler.LOT_NUMBER_EFFECTIVITY_TYPE, according as the latest Date, Serial Number or Lot Number effectivity associated with the given object is to be fetched respectively.
      effType - This is currently not used. The parameter merely serves to distinguish this method from the other overloaded versions.
      Returns:
      List of Eff objects of the input type associated with the input object
      Throws:
      WTException