com.ptc.windchill.esi.esipart
Class ESIWTPartRenderer

java.lang.Object
  extended by com.ptc.windchill.esi.rnd.BasicESIRenderer
      extended by com.ptc.windchill.esi.esipart.ESIWTPartRenderer
All Implemented Interfaces:
ESIRenderer, Serializable

public class ESIWTPartRenderer
extends BasicESIRenderer
implements Serializable

This class renders a single part in DataResponse (ie. ) .

Supported API: true

Extendable: false

See Also:
Serialized Form

Method Summary
protected  com.infoengine.object.factory.Element adjustAlternateElement(com.infoengine.object.factory.Element element, String group, WTPart part, Collection targets)
          Allow subclasses to fix the contents of an element.
protected  com.infoengine.object.factory.Element adjustPartElement(com.infoengine.object.factory.Element element, String group, WTPart part, Eff[] effs, Collection targets)
          Allows subclasses to fix the contents of an I*E element.
protected  com.infoengine.object.factory.Element adjustPartElement(com.infoengine.object.factory.Element element, String group, WTPart part, Eff eff, Collection targets)
          Allow subclasses to fix the contents of an element.
protected  void buildGroups()
          Output generator for the class.
protected  String getAuth()
          Gets the value of the attribute: auth; Authentication information to pass to Windchill Adapter when executing query webjects.
 com.infoengine.object.IeCollection getPart(String objectID, boolean alternates, boolean documents, String auth, String wcAdapter, String transactionID)
          GetPart RPC processor.
 void getPart(WTPart root, Collection children, boolean alternates, boolean documents, String auth, String wcAdapter, VdbBuilder builder)
          GetPart RPC processor when called from GetBOM or getECN RPC.
 void getPart(WTPart root, Collection children, boolean alternates, boolean documents, String auth, String wcAdapter, VdbBuilder builder, ESIBOMRenderer bomRenderer)
          Specifically included for fixing the SPR #1094958 Another overloaded GetPart RPC processor when called from GetBOM or getECN RPC.
protected  Collection getParts()
          Gets the value of the attribute: parts; The list of parts that are to be rendered.
protected  WTPart getRoot()
          Gets the value of the attribute: root; The base part of a tree of product structures.
protected  String getTransactionID()
          Gets the value of the attribute: transactionID; The idNumber attribute value of an ESITransaction that is to be associated with this renderer.
protected  String getWcAdapter()
          Gets the value of the attribute: wcAdapter; The name of the Windchill Adapter where query object webjects are to execute.
protected  boolean isAlternatesRequired()
          Gets the value of the attribute: alternatesRequired; Should the renderer obtain the alternates to the parts that are to be rendered?

Supported API: true
protected  boolean isDocumentsRequired()
          Gets the value of the attribute: documentsRequired; Should the renderer call the document renderer?

Supported API: true
protected  void validate()
          Make sure the object is ready to process.
 
Methods inherited from class com.ptc.windchill.esi.rnd.BasicESIRenderer
adjustDateEffectivities, adjustEffectivities, adjustEffectivities, adjustLotNumberEffCxt, adjustLotNumberEffectivities, adjustObjectID, adjustSerialNumberEffCxt, adjustSerialNumberEffectivities, adjustTargets, buildUfidString, getBuilder, invokeQueryTask, invokeQueryTask, invokeQueryTask, mapElement, mapObject, mapObject, render, setBuilder
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getParts

protected Collection getParts()
Gets the value of the attribute: parts; The list of parts that are to be rendered.

Supported API: true

Returns:
Collection

getRoot

protected WTPart getRoot()
Gets the value of the attribute: root; The base part of a tree of product structures.

Supported API: true

Returns:
WTPart

isAlternatesRequired

protected boolean isAlternatesRequired()
Gets the value of the attribute: alternatesRequired; Should the renderer obtain the alternates to the parts that are to be rendered?

Supported API: true

Returns:
boolean

isDocumentsRequired

protected boolean isDocumentsRequired()
Gets the value of the attribute: documentsRequired; Should the renderer call the document renderer?

Supported API: true

Returns:
boolean

getAuth

protected String getAuth()
Gets the value of the attribute: auth; Authentication information to pass to Windchill Adapter when executing query webjects.

Supported API: true

Returns:
String

getWcAdapter

protected String getWcAdapter()
Gets the value of the attribute: wcAdapter; The name of the Windchill Adapter where query object webjects are to execute.

Supported API: true

Returns:
String

getTransactionID

protected String getTransactionID()
Gets the value of the attribute: transactionID; The idNumber attribute value of an ESITransaction that is to be associated with this renderer.

Supported API: true

Returns:
String

validate

protected void validate()
                 throws com.ptc.windchill.esi.rnd.ESIRendererException
Make sure the object is ready to process. If root, auth, or wcAdapter are null, throws an exception.

Supported API: true

Throws:
com.ptc.windchill.esi.rnd.ESIRendererException

buildGroups

protected void buildGroups()
                    throws com.ptc.windchill.esi.rnd.ESIRendererException
Output generator for the class. Does the following:
  1. Obtains the contents of the parts collection.
  2. Finds the ESI targets associated with the parts.
  3. Finds the most current released version of the part for each target.
  4. Compares the current version to the most current version. If they are the same and the effectivity has not changed, the part is ignored.
  5. If the part is not ignored, calls the Windchill Adapter to obtain all the attributes of the part.
  6. Maps the result of the Windchill Adapter call.
  7. Calls adjustPartElement()
  8. If documents are required, calls the document renderer.


Supported API: true

Specified by:
buildGroups in class BasicESIRenderer
Throws:
com.ptc.windchill.esi.rnd.ESIRendererException

adjustPartElement

protected com.infoengine.object.factory.Element adjustPartElement(com.infoengine.object.factory.Element element,
                                                                  String group,
                                                                  WTPart part,
                                                                  Eff eff,
                                                                  Collection targets)
                                                           throws com.ptc.windchill.esi.rnd.ESIRendererException
Allow subclasses to fix the contents of an element.

Supported API: true

Parameters:
element -
group -
part -
eff - May be null.
targets - Collection of ESITarget objects.
Returns:
Element
Throws:
com.ptc.windchill.esi.rnd.ESIRendererException

adjustPartElement

protected com.infoengine.object.factory.Element adjustPartElement(com.infoengine.object.factory.Element element,
                                                                  String group,
                                                                  WTPart part,
                                                                  Eff[] effs,
                                                                  Collection targets)
                                                           throws com.ptc.windchill.esi.rnd.ESIRendererException
Allows subclasses to fix the contents of an I*E element. This overloaded version differs from the other version in that it takes an array of Eff instances rather than a single Eff object.

Supported API: true

Parameters:
element - I*E Element whose contents need to be fixed.
group - Name of the group in ESI response for which to adjust the I*E element.
part - WTPart instance that is relevant to the operation.
effs - Array of Effs containing the latest date, serial number and lot number effectivity values associated with the passed part.
targets - Collection of ESITarget objects.
Returns:
Element
Throws:
com.ptc.windchill.esi.rnd.ESIRendererException

adjustAlternateElement

protected com.infoengine.object.factory.Element adjustAlternateElement(com.infoengine.object.factory.Element element,
                                                                       String group,
                                                                       WTPart part,
                                                                       Collection targets)
                                                                throws com.ptc.windchill.esi.rnd.ESIRendererException
Allow subclasses to fix the contents of an element.

Supported API: true

Parameters:
element -
group -
part -
targets - Collection of ESITarget objects.
Returns:
Element
Throws:
com.ptc.windchill.esi.rnd.ESIRendererException

getPart

public com.infoengine.object.IeCollection getPart(String objectID,
                                                  boolean alternates,
                                                  boolean documents,
                                                  String auth,
                                                  String wcAdapter,
                                                  String transactionID)
                                           throws WTException
GetPart RPC processor.

Supported API: true

Parameters:
objectID - The UFID of the part that is desired.
alternates - true or false. If true, will return alternates parts for the part in question.
documents - true or false. If true, will return the documents for the part in question. If alternates is true, will return the documents for the alternate parts.
auth - This parameter contains authentication information from I*E.
wcAdapter - This parameter contains the name of the Windchill adapter.
transactionID - The TransactionID for this ObjectID.
Returns:
IeCollection
Throws:
WTException

getPart

public void getPart(WTPart root,
                    Collection children,
                    boolean alternates,
                    boolean documents,
                    String auth,
                    String wcAdapter,
                    VdbBuilder builder)
             throws WTException
GetPart RPC processor when called from GetBOM or getECN RPC. Validates arguments then creates a VDBBuilder if one hasn't already been provided. Creates a PartRenderer. Passes control to the renderer. Does not call asVDB() on the renderer because the caller of this method is responsible to do that.

Supported API: true

Parameters:
root - The primary part for the BOM. Needed if target assignments are implicit.
children - A collection of WTParts that are to be released. These parts are presumed to not be the root.
alternates - true or false. If true, will return alternates parts for the part in question.
documents - true or false. If true, will return the documents for the part in question. If alternates is true, will return the documents for the alternate parts.
auth - This parameter contains authentication information from I*E
wcAdapter - This parameter contains the name of the Windchill adapter.
builder -
Throws:
WTException

getPart

public void getPart(WTPart root,
                    Collection children,
                    boolean alternates,
                    boolean documents,
                    String auth,
                    String wcAdapter,
                    VdbBuilder builder,
                    ESIBOMRenderer bomRenderer)
             throws WTException
Specifically included for fixing the SPR #1094958 Another overloaded GetPart RPC processor when called from GetBOM or getECN RPC. Validates arguments then creates a VDBBuilder if one hasn't already been provided. Creates a PartRenderer. Passes control to the renderer. Does not call asVDB() on the renderer because the caller of this method is responsible to do that. it is to used to render alternate assembly if part contains

Supported API: true

Parameters:
root - The primary part for the BOM. Needed if target assignments are implicit.
children - A collection of WTParts that are to be released. These parts are presumed to not be the root.
alternates - true or false. If true, will return alternates parts for the part in question.
documents - true or false. If true, will return the documents for the part in question. If alternates is true, will return the documents for the alternate parts.
auth - This parameter contains authentication information from I*E
wcAdapter - This parameter contains the name of the Windchill adapter.
builder -
bomRenderer - ESIBOMRenderer
Throws:
WTException