cdac.medinfo.sdk.hl7282.baselibs

## Class PIP

- java.lang.Object
- - cdac.medinfo.sdk.hl7282.baselibs.CompositeDataType
  - - cdac.medinfo.sdk.hl7282.baselibs.PIP

- All Implemented Interfaces:
    IDataType

      public class PIP
      extends CompositeDataType

  PIP - Practitioner institutional privileges

  This data type specifies the institutional privileges with associated detail granted to a provider.

  Represents an HL7 PIP data type. This data type has the following attributes:

  1. Privilege (CWE)Required
  2. Privilege Class (CWE)Optional
  3. Expiration Date (DT)Optional
  4. Activation Date (DT)Optional
  5. Facility (EI)Optional

  This class provides accessors & mutators for the elements mentioned above. This class override the equal method, to check whether some other object is "equal to" this one.

  User can also create Data Type through `DataElementFactory`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PIP()` Default Constructor for PIP
    `PIP(int iComponentType, IDataTypeMap objIDataTypeMap)` Constructor for PIP class which takes two arguments and sets the value in the respective member variable.
    `PIP(int iComponentType, int iMinLength, int iMaxLength, java.lang.String strCLength, IDataTypeMap objIDataTypeMap)` Constructor for PIP class which takes fibe arguments and sets the value in the respective member variable.
    `PIP(int iComponentType, int iMinLength, int iMaxLength, java.lang.String strCLength, int ITableNo, IDataTypeMap objIDataTypeMap)` Constructor for PIP class which takes six arguments and sets the value in the respective member variable.
    `PIP(int iMinLength, int iMaxLength, java.lang.String strCLength, int iComponentType)` Constructor for PIP class which takes four arguments and sets the value in the respective member variable.
    `PIP(int iMinLength, int iMaxLength, java.lang.String strCLength, int iTableNo, int iComponentType)` Constructor for PIP class which takes five arguments and sets the value in the respective member variable.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(java.lang.Object objObject)` This method checks the equality of Object.
    `DT` | `getActivationDate()` Returns Activation Date
    `DT` | `getExpirationDate()` Returns Expiration Date
    `EI` | `getFacility()` Returns Facility
    `CWE` | `getPrivilege()` Returns Privilege
    `CWE` | `getPrivilegeClass()` Returns Privilege Class
    `void` | `setActivationDate(DT objDT)` Sets the ActivationDate.
    `void` | `setActivationDate(java.lang.String strActivationDate)` Sets the ActivationDate.
    `void` | `setExpirationDate(DT objDT)` Sets the ExpirationDate.
    `void` | `setExpirationDate(java.lang.String strExpirationDate)` Sets the ExpirationDate.
    `void` | `setFacility(EI objFacility)` Sets the Facility.
    `void` | `setPrivilege(CWE objPrivilege)` Sets the Privilege.
    `void` | `setPrivilegeClass(CWE objPrivilegeClass)` Sets the PrivilegeClass.
    `boolean` | `validate()` The Method validates the Input value,and if validated properly then returns true.

    - ### Methods inherited from class cdac.medinfo.sdk.hl7282.baselibs.CompositeDataType

      `copy, dumpDataType, getAttributes, getDataTypeName, getLength, getValue, isPrimitive, read, setValue, write, writeToXML`

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

      `getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PIP

          public PIP()

      Default Constructor for PIP

    - #### PIP

          public PIP(int iMinLength,
             int iMaxLength,
             java.lang.String strCLength,
             int iComponentType)
              throws InvalidComponentTypeException

      Constructor for PIP class which takes four arguments and sets the value in the respective member variable.
      Parameters:
        `iMinLength` - The Minimum length the DataType can have.
        `iMaxLength` - The Maximum length the DataType can have.
        `iCLength` - The Conformance length the DataType can have.
        `iComponentType` - The Type of the component i.e Component or a subcomponent.
      Throws:
        `InvalidComponentTypeException` - - if Component Type is not specified or valid.

    - #### PIP

          public PIP(int iMinLength,
             int iMaxLength,
             java.lang.String strCLength,
             int iTableNo,
             int iComponentType)
              throws InvalidComponentTypeException

      Constructor for PIP class which takes five arguments and sets the value in the respective member variable.
      Parameters:
        `iMinLength` - The Minimum length the DataType can have.
        `iMaxLength` - The Maximum length the DataType can have.
        `iCLength` - The Conformance length the DataType can have.
        `iTableNo` - The Table number to which the value for the component is specified.
        `iComponentType` - The Type of the component i.e Component or a subcomponent.
      Throws:
        `InvalidComponentTypeException` - - if Component Type is not specified or valid.

    - #### PIP

          public PIP(int iComponentType,
             IDataTypeMap objIDataTypeMap)

      Constructor for PIP class which takes two arguments and sets the value in the respective member variable.
      Parameters:
        `objIDataTypeMap` - object of Data Type Map.
        `iComponentType` - The Type of the component i.e Component or a subcomponent.
      Throws:
        `InvalidComponentTypeException` - - if Component Type is not specified or valid.

    - #### PIP

          public PIP(int iComponentType,
             int iMinLength,
             int iMaxLength,
             java.lang.String strCLength,
             IDataTypeMap objIDataTypeMap)

      Constructor for PIP class which takes fibe arguments and sets the value in the respective member variable.
      Parameters:
        `objIDataTypeMap` - object of Data Type Map.
        `iComponentType` - The Type of the component i.e Component or a subcomponent.
        `iMinLength` - The Minimum length the DataType can have.
        `iMaxLength` - The Maximum length the DataType can have.
        `iCLength` - The Conformance length the DataType can have.
      Throws:
        `InvalidComponentTypeException` - - if Component Type is not specified or valid.

    - #### PIP

          public PIP(int iComponentType,
             int iMinLength,
             int iMaxLength,
             java.lang.String strCLength,
             int ITableNo,
             IDataTypeMap objIDataTypeMap)

      Constructor for PIP class which takes six arguments and sets the value in the respective member variable.
      Parameters:
        `objIDataTypeMap` - object of Data Type Map.
        `iComponentType` - The Type of the component i.e Component or a subcomponent.
        `iMinLength` - The Minimum length the DataType can have.
        `iMaxLength` - The Maximum length the DataType can have.
        `iCLength` - The Conformance length the DataType can have.
        `iTableNo` - The Table number to which the value for the component is specified.
      Throws:
        `InvalidComponentTypeException` - - if Component Type is not specified or valid.

  - ### Method Detail

    - #### setPrivilege

          public void setPrivilege(CWE objPrivilege)

      Sets the Privilege.
      Parameters:
        `objPrivilege` - Specifies the institutional privilege itself.

    - #### setPrivilegeClass

          public void setPrivilegeClass(CWE objPrivilegeClass)

      Sets the PrivilegeClass.
      Parameters:
        `objPrivilegeClass` - Specifies the class category of institutional privilege.

    - #### setExpirationDate

          public void setExpirationDate(java.lang.String strExpirationDate)

      Sets the ExpirationDate.
      Parameters:
        `strExpirationDate` - Specifies the date the institutional privilege is/was no longer valid.

    - #### setExpirationDate

          public void setExpirationDate(DT objDT)

      Sets the ExpirationDate.
      Parameters:
        `objDT` - Specifies the date the institutional privilege is/was no longer valid.

    - #### setActivationDate

          public void setActivationDate(java.lang.String strActivationDate)

      Sets the ActivationDate.
      Parameters:
        `strActivationDate` - Specifies the date the institutional privilege became/becomes valid.

    - #### setActivationDate

          public void setActivationDate(DT objDT)

      Sets the ActivationDate.
      Parameters:
        `objDT` - Specifies the date the institutional privilege became/becomes valid.

    - #### setFacility

          public void setFacility(EI objFacility)

      Sets the Facility.
      Parameters:
        `objFacility` - Specifies the facility in which the institutional privilege is/was valid.

    - #### getPrivilege

          public CWE getPrivilege()

      Returns Privilege
      Returns:
        CWE - data type.

    - #### getPrivilegeClass

          public CWE getPrivilegeClass()

      Returns Privilege Class
      Returns:
        CWE - data type.

    - #### getExpirationDate

          public DT getExpirationDate()

      Returns Expiration Date
      Returns:
        DT - data type.

    - #### getActivationDate

          public DT getActivationDate()

      Returns Activation Date
      Returns:
        DT - data type.

    - #### getFacility

          public EI getFacility()

      Returns Facility
      Returns:
        EI - data type.

    - #### validate

          public boolean validate()
                           throws InvalidDataTypeException

      The Method validates the Input value,and if validated properly then returns true. Here the validetion is based on the compulsory fields for the Datatype.
      Specified by:
        `validate` in interface `IDataType`
      Overrides:
        `validate` in class `CompositeDataType`
      Returns:
        boolean - true or false.
      Throws:
        `InvalidDataTypeException` - - if Invalid values is entered or Mandatory field is missing.

    - #### equals

          public boolean equals(java.lang.Object objObject)

      This method checks the equality of Object.
      Overrides:
        `equals` in class `java.lang.Object`
      Parameters:
        `objObject` - object of Object class.
      Returns:
        boolean - shows success or failure of the comparison.