cdac.medinfo.sdk.hl7282.baselibs

## Class DDI

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

- All Implemented Interfaces:
    IDataType

      public class DDI
      extends CompositeDataType

  DDI - Daily Deductible Information

  This data type specifies the detail information for the daily deductible

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

  1. Delay Days (NM)Optional
  2. Monetary Amount (MO)Required
  3. Number of Days (NM)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
    `DDI()` Default Constructor for DDI
    `DDI(int iComponentType, IDataTypeMap objIDataTypeMap)` Constructor for DDI class which takes two arguments and sets the value in the respective member variable.
    `DDI(int iComponentType, int iMinLength, int iMaxLength, java.lang.String strCLength, IDataTypeMap objIDataTypeMap)` Constructor for DDI class which takes five arguments and sets the value in the respective member variable.
    `DDI(int iComponentType, int iMinLength, int iMaxLength, java.lang.String strCLength, int ITableNo, IDataTypeMap objIDataTypeMap)` Constructor for DDI class which takes six arguments and sets the value in the respective member variable.
    `DDI(int iMinLength, int iMaxLength, java.lang.String strCLength, int iComponentType)` Constructor for DDI class which takes four arguments and sets the value in the respective member variable.
    `DDI(int iMinLength, int iMaxLength, java.lang.String strCLength, int iTableNo, int iComponentType)` Constructor for DDI 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.
    `NM` | `getDelayDays()` Returns Delay Days
    `MO` | `getMonetaryAmount()` Returns Monetary Amount
    `NM` | `getNumberOfDays()` Returns Number of Days
    `void` | `setDelayDays(NM objNM)` Sets the Delay Days.
    `void` | `setDelayDays(java.lang.String strDelayDays)` Sets the Delay Days.
    `void` | `setMonetaryAmount(MO objMonetaryAmount)` Sets the Monetary Amount.
    `void` | `setNumberOfDays(NM objNM)` Sets the Number Of Days.
    `void` | `setNumberOfDays(java.lang.String strNumberOfDays)` Sets the Number Of Days.
    `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

    - #### DDI

          public DDI()

      Default Constructor for DDI

    - #### DDI

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

      Constructor for DDI 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.

    - #### DDI

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

      Constructor for DDI 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.

    - #### DDI

          public DDI(int iComponentType,
             IDataTypeMap objIDataTypeMap)

      Constructor for DDI 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.

    - #### DDI

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

      Constructor for DDI class which takes five 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.

    - #### DDI

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

      Constructor for DDI 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

    - #### setDelayDays

          public void setDelayDays(java.lang.String strDelayDays)

      Sets the Delay Days.
      Parameters:
        `strDelayDays` - Specifies number of days after which the daily deductible begins

    - #### setDelayDays

          public void setDelayDays(NM objNM)

      Sets the Delay Days.
      Parameters:
        `objNM` - Specifies number of days after which the daily deductible begins

    - #### setMonetaryAmount

          public void setMonetaryAmount(MO objMonetaryAmount)

      Sets the Monetary Amount.
      Parameters:
        `objMonetaryAmount` - Specifies monetary amount of the deductible

    - #### setNumberOfDays

          public void setNumberOfDays(java.lang.String strNumberOfDays)

      Sets the Number Of Days.
      Parameters:
        `strNumberOfDays` - Specifies number of days to apply the deductible.

    - #### setNumberOfDays

          public void setNumberOfDays(NM objNM)

      Sets the Number Of Days.
      Parameters:
        `objNM` - Specifies number of days to apply the deductible.

    - #### getDelayDays

          public NM getDelayDays()

      Returns Delay Days
      Returns:
        NM - data type.

    - #### getMonetaryAmount

          public MO getMonetaryAmount()

      Returns Monetary Amount
      Returns:
        MO - data type.

    - #### getNumberOfDays

          public NM getNumberOfDays()

      Returns Number of Days
      Returns:
        NM - 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.