|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.ibm.as400.access.PTF
public class PTF extends Object
Represents a Program Temporary Fix (PTF) for a licensed program
product. Call refresh() to reload all of the values from the system.
Individual getters will only refresh their own necessary information.
Product.getPTFs(boolean)| Modifier and Type | Field and Description |
|---|---|
static String |
ACTION_NOT_REQUIRED
Constant indicating that no action is required. |
static String |
ACTION_REQUIRED_CANNOT_VERIFY
Constant indicating that the PTF contains activation instructions in the cover letter, but no exit program exists to verify the activation instructions were performed. |
static String |
ACTION_REQUIRED_EXIT_PROGRAM
Constant indicating that the PTF contains activation instructions in the cover letter. |
static int |
IPL_ACTION_APPLY_PERMANENT
Constant indicating the PTF will be permanently applied at the next IPL. |
static int |
IPL_ACTION_APPLY_TEMPORARY
Constant indicating the PTF will be temporarily applied at the next IPL. |
static int |
IPL_ACTION_NONE
Constant indicating no action will occur at the next IPL. |
static int |
IPL_ACTION_REMOVE_PERMANENT
Constant indicating the PTF will be permanently removed at the next IPL. |
static int |
IPL_ACTION_REMOVE_TEMPORARY
Constant indicating the PTF will be temporarily removed at the next IPL. |
static String |
IPL_SOURCE_A
Constant indicating the system is currently operating on the A IPL source. |
static String |
IPL_SOURCE_B
Constant indicating the system is currently operating on the B IPL source. |
static String |
IPL_SOURCE_UNKNOWN
Constant indicating the current IPL source could not be determined. |
static String |
PRODUCT_ID_ONLY
Constant representing a product ID of *ONLY. |
static String |
PRODUCT_RELEASE_ONLY
Constant representing a release level of *ONLY. |
static String |
PTF_TYPE_DELAYED
Constant indicating that the PTF is delayed and must be applied at IPL time. |
static String |
PTF_TYPE_IMMEDIATE
Constant indicating that the PTF is immediate and can be applied immediately. |
static String |
PTF_TYPE_UNKNOWN
Constant indicating that the PTF type is not known. |
static String |
RELATIONSHIP_COREQ
Constant indicating that there is a co-requisite relationship between two PTFs. |
static String |
RELATIONSHIP_DEPEND
Constant indicating that there is a dependent (pre-requisite) relationship between two PTFs. |
static String |
RELATIONSHIP_NONE
Constant indicating that there is no known relationship between two PTFs. |
static String |
RELATIONSHIP_PREREQ
Constant indicating that there is a pre-requisite relationship between two PTFs. |
static String |
RELATIONSHIP_SAME
Constant indicating that two PTFs are identical. |
static String |
STATUS_APPLIED
Constant indicating that a PTF is applied. |
static String |
STATUS_APPLIED_PERMANENT
Constant indicating that a PTF is permanently applied. |
static String |
STATUS_DAMAGED
Constant indicating that a PTF is damaged. |
static String |
STATUS_LOADED
Constant indicating that a PTF is loaded. |
static String |
STATUS_NOT_LOADED
Constant indicating that a PTF is not loaded. |
static String |
STATUS_REMOVED_PERMANENT
Constant indicating that a PTF is permanently removed. |
static String |
STATUS_SUPERSEDED
Constant indicating that a PTF is superseded. |
| Constructor and Description |
|---|
PTF(AS400 system,
String ptfID)
Constructs a PTF object. |
PTF(AS400 system,
String ptfID,
String productID,
String releaseLevel)
Constructs a PTF object. |
| Modifier and Type | Method and Description |
|---|---|
String |
getActionRequired()
Returns the action required to make this PTF active when it is applied. |
String[] |
getAPARNumbers()
Retrieves the list of APAR numbers that were fixed by this PTF. |
PTFCoverLetter |
getCoverLetter()
Retrieves the cover letter for this PTF from the system. |
PTFCoverLetter |
getCoverLetter(Locale locale)
Retrieves the cover letter for this PTF from the system based on the given locale. |
PTFCoverLetter[] |
getCoverLetters()
Retrieves the cover letters for this PTF from the system, if they exist. |
Date |
getCreationDate()
Returns the date and time that the PTF was created. |
String |
getCurrentIPLSource()
Returns the copy of Licensed Internal Code that the system is currently operating from. |
PTF[] |
getDependentPTFs()
Retrieves the list of PTFs that are dependent upon this PTF. |
PTFExitProgram[] |
getExitPrograms()
Retrieves the list of exit programs for this PTF. |
String |
getID()
Returns the ID number for this PTF. |
int |
getIPLAction()
Returns the action to be taken on this PTF during the next IPL. |
String |
getIPLRequired()
Returns the type of PTF (delayed or immediate). |
String |
getLICGroup()
Returns the name of the Licensed Internal Code Group for this PTF. |
String |
getLoadedStatus()
Returns the current loaded status of this PTF. |
String |
getLoadedStatusMessage(String loadedStatus)
Returns the translated description text for the specified status. |
String |
getMaximumLevel()
Returns the highest release level of the product on which this PTF can be installed. |
String |
getMinimumLevel()
Returns the lowest release level of the product on which this PTF can be installed. |
String |
getProductFeature()
Returns the product feature to which this PTF applies. |
String |
getProductID()
Returns the product ID of this PTF. |
String |
getProductOption()
Returns the product option to which this PTF applies. |
String |
getRelationship(PTF ptf)
Returns the relationship between this PTF and another PTF. |
String |
getReleaseLevel()
Returns the release level of this PTF. |
PTF[] |
getRequisitePTFs()
Retrieves the list of pre- and co-requisite PTFs for this PTF. |
String |
getSaveFile()
Returns the full pathname of the save file for this PTF, if one exists. |
int |
getServerIPLRequired()
Indicates whether a server IPL must be performed in order to activate the changes for the PTF. |
Date |
getStatusDate()
Returns the date and time the PTF status last changed. |
String |
getSupersedingPTF()
Returns the PTF ID of the PTF that supersedes this PTF. |
String[] |
getSymptomStrings()
Returns the list of symptom strings for the problems fixed by this PTF. |
String |
getTargetRelease()
Returns the earliest release of the operating system on which you can load and apply this PTF. |
boolean |
isActionPending()
Indicates if a required action has yet to be performed to make this PTF active. |
boolean |
isConditional()
Indicates if this PTF has a conditional relationship with any of its dependents or requisites. |
boolean |
isCoRequisite()
Indicates if this PTF has a co-requisite relationship with another PTF. |
boolean |
isDependent()
Indicates if this PTF has a dependent relationship with another PTF. |
boolean |
isOnOrder()
Indicates if this PTF has been ordered. |
boolean |
isPreRequisite()
Indicates if this PTF has a pre-requisite relationship with another PTF. |
boolean |
isReleased()
Indicates if the PTF save file is available for distribution to other systems. |
boolean |
isRequired()
Indicates if this PTF is required on the system because it is a pre-requisite for another PTF. |
void |
refresh()
Refreshes all the values for this PTF by retrieving them from the system. |
String |
toString()
Returns a String representation of this PTF in the format "PTF ID/release level/product ID". |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final String ACTION_NOT_REQUIRED
public static final String ACTION_REQUIRED_EXIT_PROGRAM
public static final String ACTION_REQUIRED_CANNOT_VERIFY
public static final int IPL_ACTION_NONE
public static final int IPL_ACTION_APPLY_TEMPORARY
public static final int IPL_ACTION_REMOVE_TEMPORARY
public static final int IPL_ACTION_APPLY_PERMANENT
public static final int IPL_ACTION_REMOVE_PERMANENT
public static final String IPL_SOURCE_A
public static final String IPL_SOURCE_B
public static final String IPL_SOURCE_UNKNOWN
public static final String PRODUCT_ID_ONLY
public static final String PRODUCT_RELEASE_ONLY
public static final String PTF_TYPE_DELAYED
public static final String PTF_TYPE_IMMEDIATE
public static final String PTF_TYPE_UNKNOWN
public static final String RELATIONSHIP_COREQ
getRelationship(com.ibm.as400.access.PTF),
Constant Field Valuespublic static final String RELATIONSHIP_DEPEND
getRelationship(com.ibm.as400.access.PTF),
Constant Field Valuespublic static final String RELATIONSHIP_NONE
getRelationship(com.ibm.as400.access.PTF),
Constant Field Valuespublic static final String RELATIONSHIP_PREREQ
getRelationship(com.ibm.as400.access.PTF),
Constant Field Valuespublic static final String RELATIONSHIP_SAME
getRelationship(com.ibm.as400.access.PTF),
Constant Field Valuespublic static final String STATUS_NOT_LOADED
public static final String STATUS_LOADED
public static final String STATUS_APPLIED
public static final String STATUS_APPLIED_PERMANENT
public static final String STATUS_REMOVED_PERMANENT
public static final String STATUS_DAMAGED
public static final String STATUS_SUPERSEDED
| Constructor Detail |
|---|
public PTF(AS400 system,
String ptfID)
system - The system.ptfID - The PTF ID. Example: "SF64578"
public PTF(AS400 system,
String ptfID,
String productID,
String releaseLevel)
system - The system.ptfID - The PTF ID. Example: "SF64578"productID - The product ID (for example: "5722JC1"). This value must
either be PRODUCT_ID_ONLY or a valid product ID.releaseLevel - The PTF release level (for example: "V5R1M0"). This value
must either be PRODUCT_RELEASE_ONLY or a valid release level.| Method Detail |
|---|
public String getActionRequired()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String[] getAPARNumbers()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetSymptomStrings()
public PTFCoverLetter getCoverLetter()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public PTFCoverLetter getCoverLetter(Locale locale)
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
locale - The locale.AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public PTFCoverLetter[] getCoverLetters()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getCurrentIPLSource()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public PTF[] getDependentPTFs()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetRequisitePTFs(),
getSupersedingPTF()
public PTFExitProgram[] getExitPrograms()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptionpublic String getID()
public int getIPLAction()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
IPL_ACTION_NONE
IPL_ACTION_APPLY_TEMPORARY
IPL_ACTION_REMOVE_TEMPORARY
IPL_ACTION_APPLY_PERMANENT
IPL_ACTION_REMOVE_PERMANENT
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getIPLRequired()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getLICGroup()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getLoadedStatus()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
getLoadedStatusMessage() method
for the translated description text of the loaded status.
Possible values are:
STATUS_NOT_LOADED
STATUS_LOADED
STATUS_APPLIED
STATUS_APPLED_PERMANENT
STATUS_REMOVED_PERMANENT
STATUS_DAMAGED
STATUS_SUPERSEDED
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetLoadedStatusMessage(java.lang.String)
public String getLoadedStatusMessage(String loadedStatus)
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
loadedStatus - The loaded status. See getLoadedStatus()
for the list of valid values.AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getMaximumLevel()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetMinimumLevel()
public String getMinimumLevel()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetMaximumLevel()
public String getProductFeature()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getProductID()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getProductOption()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getRelationship(PTF ptf)
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
ptf - The PTF to compare.RELATIONSHIP_PREREQ - If this PTF is a pre-requisite of the specified PTF.
RELATIONSHIP_COREQ - If this PTF is a co-requisite of the specified PTF.
RELATIONSHIP_DEPEND - If the specified PTF is a pre-requisite of this PTF.
RELATIONSHIP_SAME - If this PTF is identical to the specified PTF.
RELATIONSHIP_NONE - If there is no known relationship.
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getReleaseLevel()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public PTF[] getRequisitePTFs()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
isCoRequisite() and isPreRequisite()
methods.
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getSaveFile()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public Date getStatusDate()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public String getSupersedingPTF()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetDependentPTFs(),
getRequisitePTFs()
public String[] getSymptomStrings()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetAPARNumbers()
public String getTargetRelease()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public Date getCreationDate()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
NOTE: This method is not supported when running to OS/400 V5R2 or earlier releases.
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public int getServerIPLRequired()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
NOTE: This method is not supported when running to OS/400 V5R2 or earlier releases.
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public boolean isActionPending()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetActionRequired(),
getCoverLetters()
public boolean isConditional()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public boolean isCoRequisite()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
If this PTF object was returned by a call to getRequisitePTFs() or
getDependentPTFs(),
then this method indicates if this PTF has a co-requisite relationship with the
PTF of which it is a requisite or dependent.
If this PTF object was constructed otherwise, then this method indicates if this PTF has a known co-requisite relationship with at least one other PTF on the system. This is accomplished by checking the list of known dependent and requisite PTFs for this PTF.
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetDependentPTFs(),
getRequisitePTFs(),
isDependent(),
isPreRequisite()
public boolean isDependent()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
If this PTF object was returned by a call to getDependentPTFs(),
then this method indicates if the PTF that generated this PTF object is a
pre-requisite of this PTF object.
If this PTF object was constructed otherwise, then this method indicates if this PTF is a known dependent of at least one other PTF on the system.
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetDependentPTFs(),
getRequisitePTFs(),
isCoRequisite(),
isPreRequisite()
public boolean isOnOrder()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public boolean isPreRequisite()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
If this PTF object was returned by a call to getRequisitePTFs(),
then this method indicates if this PTF is a pre-requisite for the PTF object
that generated this PTF.
If this PTF object was constructed otherwise, then this method indicates if this PTF is a known pre-requisite of at least one other PTF on the system.
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetDependentPTFs(),
getRequisitePTFs(),
isCoRequisite(),
isDependent()
public boolean isReleased()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptiongetSaveFile()
public boolean isRequired()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistException
public void refresh()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
AS400ExceptionAS400SecurityExceptionErrorCompletingRequestExceptionInterruptedExceptionIOExceptionObjectDoesNotExistExceptionpublic String toString()
toString in class Object
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||