cdac.medinfo.sdk.hl7282.baselibs.segments

## Class CM2

- java.lang.Object
- - cdac.medinfo.sdk.hl7282.baselibs.segments.Segment
  - - cdac.medinfo.sdk.hl7282.baselibs.segments.CM2

- All Implemented Interfaces:
    ISegment

      public class CM2
      extends Segment

  CM2 - Clinical Study Schedule Master Segment

  The Clinical Study Schedule Master (CM2) contains the information about the scheduled time which points for study or phase-related treatment or evaluation events.

  Represents an HL7 CM2 message segment. This segment has the following fields:

  CM2-1: Set ID- CM2 (SI)Optional
  CM2-2: Scheduled Time Point (CWE)Required
  CM2-3: Description of Time Point (ST)Optional
  CM2-4: Events Scheduled This Time Point (CWE)Required

  This class provides mechanism to validate message against HL7 v 2.8.2 standard. The class provides accessors & mutators for the elements mentioned above. The class has validate method which validates Message against HL7 v 2.8.2 standard.

  User can also create Segment through `SegmentFactory`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CM2()` Constructs the CM2 segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addEventsScheduledThisTimePoint(CWE objeventsScheduledThisTimePoint)` Add the Events Scheduled This Time Point.
    `void` | `addEventsScheduledThisTimePoint(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Add the Events Scheduled This Time Point.
    `ST` | `getDescriptionofTimePoint()` Retrieves the Description of Time Point.
    `ISingleCollection<CWE>` | `getEventsScheduledThisTimePoint()` Retrieves the Events Scheduled This Time Point.
    `CWE` | `getScheduledTimePoint()` Retrieves the Scheduled Time Point.
    `SI` | `getSetID_CM2()` Retrieves the Set ID CM2.
    `void` | `setDescriptionofTimePoint(ST objdescriptionofTimePoint)` Set the Description of Time Point.
    `void` | `setDescriptionofTimePoint(java.lang.String strDescriptionofTimePoint)` Set the Description of Time Point.
    `void` | `setEventsScheduledThisTimePoint(ISingleCollection<CWE> objeventsScheduledThisTimePointList)` Set the Events Scheduled This Time Point.
    `void` | `setScheduledTimePoint(CWE objscheduledTimePoint)` Set the Scheduled Time Point.
    `void` | `setScheduledTimePoint(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set the Scheduled Time Point.
    `void` | `setSetID_CM2(SI objsetID_CM2)` Set the Set ID CM2.
    `void` | `setSetID_CM2(java.lang.String strSetID_CM2)` Set the Set ID CM2.
    `boolean` | `validate()` Validates HL7 Message objects .

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

      `addUnRecognizedField, dumpSegment, getFields, getName, getUnrecognizedFields, moveToNextSegment, parse, removeDataElement, removeDataElement, serialize, setName, setUnRecognizedField, updateDataElement, updateDataElement, writeToXML`

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

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

- - ### Constructor Detail

    - #### CM2

          public CM2()

      Constructs the CM2 segment.

  - ### Method Detail

    - #### getDescriptionofTimePoint

          public ST getDescriptionofTimePoint()

      Retrieves the Description of Time Point. This field contains a brief explanation so recipients will understand what the time point represents.
      Returns:
        ST - descriptionofTimePoint

    - #### getEventsScheduledThisTimePoint

          public ISingleCollection<CWE> getEventsScheduledThisTimePoint()

      Retrieves the Events Scheduled This Time Point. This field contains a study-specific event.
      Returns:
        ISingleCollection - eventsScheduledThisTimePoint

    - #### getScheduledTimePoint

          public CWE getScheduledTimePoint()

      Retrieves the Scheduled Time Point.
      Returns:
        CWE - scheduledTimePoint

    - #### getSetID_CM2

          public SI getSetID_CM2()

      Retrieves the Set ID CM2. This field contains a number that uniquely identify this transaction for the purpose of adding, changing, or deleting the transaction.
      Returns:
        SI - setID_CM2

    - #### setDescriptionofTimePoint

          public void setDescriptionofTimePoint(java.lang.String strDescriptionofTimePoint)

      Set the Description of Time Point. This field contains a brief explanation so recipients will understand what the time point represents.
      Parameters:
        `strDescriptionofTimePoint` - String which to set as Description Of Time Point

    - #### setDescriptionofTimePoint

          public void setDescriptionofTimePoint(ST objdescriptionofTimePoint)

      Set the Description of Time Point. This field contains a brief explanation so recipients will understand what the time point represents.
      Parameters:
        `objdescriptionofTimePoint` - Object of Description of Time Point.

    - #### addEventsScheduledThisTimePoint

          public void addEventsScheduledThisTimePoint(java.lang.String strIdentifier,
                                             java.lang.String strText,
                                             java.lang.String strNameOfCodingSystem,
                                             java.lang.String strAlternateIdentifier,
                                             java.lang.String strAlternateText,
                                             java.lang.String strNameOfAlternateCodingSystem,
                                             java.lang.String strCodingSystemVersionID,
                                             java.lang.String strAlternateCodingSystemVersionId,
                                             java.lang.String strOriginalText,
                                             java.lang.String strSecondAlternateIdentifier,
                                             java.lang.String strSecondAlternateText,
                                             java.lang.String strNameofSecondAlternateCodingSystem,
                                             java.lang.String strSecondAlternateCodingSystemVersionID,
                                             java.lang.String strCodingSystemOID,
                                             java.lang.String strValueSetOID,
                                             java.lang.String strValueSetVersionID,
                                             java.lang.String strAlternateCodingSystemOID,
                                             java.lang.String strAlternateValueSetOID,
                                             java.lang.String strAlternateValueSetVersionID,
                                             java.lang.String strSecondAlternateCodingSystemOID,
                                             java.lang.String strSecondAlternateValueSetOID,
                                             java.lang.String strSecondAlternateValueSetVersionID)

      Add the Events Scheduled This Time Point. This field contains a study-specific event.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infarction.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### addEventsScheduledThisTimePoint

          public void addEventsScheduledThisTimePoint(CWE objeventsScheduledThisTimePoint)

      Add the Events Scheduled This Time Point. This field contains a study-specific event.
      Parameters:
        `objeventsScheduledThisTimePoint` - Object of Events Scheduled This Time Point.

    - #### setEventsScheduledThisTimePoint

          public void setEventsScheduledThisTimePoint(ISingleCollection<CWE> objeventsScheduledThisTimePointList)

      Set the Events Scheduled This Time Point. This field contains a study-specific event.
      Parameters:
        `objeventsScheduledThisTimePointList` - List of Events Scheduled This Time Point.

    - #### setScheduledTimePoint

          public void setScheduledTimePoint(java.lang.String strIdentifier,
                                   java.lang.String strText,
                                   java.lang.String strNameOfCodingSystem,
                                   java.lang.String strAlternateIdentifier,
                                   java.lang.String strAlternateText,
                                   java.lang.String strNameOfAlternateCodingSystem,
                                   java.lang.String strCodingSystemVersionID,
                                   java.lang.String strAlternateCodingSystemVersionId,
                                   java.lang.String strOriginalText,
                                   java.lang.String strSecondAlternateIdentifier,
                                   java.lang.String strSecondAlternateText,
                                   java.lang.String strNameofSecondAlternateCodingSystem,
                                   java.lang.String strSecondAlternateCodingSystemVersionID,
                                   java.lang.String strCodingSystemOID,
                                   java.lang.String strValueSetOID,
                                   java.lang.String strValueSetVersionID,
                                   java.lang.String strAlternateCodingSystemOID,
                                   java.lang.String strAlternateValueSetOID,
                                   java.lang.String strAlternateValueSetVersionID,
                                   java.lang.String strSecondAlternateCodingSystemOID,
                                   java.lang.String strSecondAlternateValueSetOID,
                                   java.lang.String strSecondAlternateValueSetVersionID)

      Set the Scheduled Time Point.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infarction.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setScheduledTimePoint

          public void setScheduledTimePoint(CWE objscheduledTimePoint)

      Set the Scheduled Time Point.
      Parameters:
        `objscheduledTimePoint` - Object of Scheduled Time Point.

    - #### setSetID_CM2

          public void setSetID_CM2(java.lang.String strSetID_CM2)

      Set the Set ID CM2. This field contains a number that uniquely identify this transaction for the purpose of adding, changing, or deleting the transaction.
      Parameters:
        `strSetID_CM2` - This field contains the number that identifies CM2 transaction.

    - #### setSetID_CM2

          public void setSetID_CM2(SI objsetID_CM2)

      Set the Set ID CM2. This field contains a number that uniquely identify this transaction for the purpose of adding, changing, or deleting the transaction.
      Parameters:
        `objsetID_CM2` - Object of Set ID CM2.

    - #### validate

          public boolean validate()
                           throws InvalidSegmentException

      Validates HL7 Message objects . Validate method checks for validation each and every segments in side the Message object against specified message Structure. Validation checks include optionality of segment or group. It also verifies the number of times segment or group is repeated in message. e.g {PSH} while parsing PSH segment validate method will check for its mandatory presence. [PSH] in this case validate will throw exception if one tries to enter more than one PSH segment.
      Specified by:
        `validate` in interface `ISegment`
      Overrides:
        `validate` in class `Segment`
      Returns:
        boolean - true or false.
      Throws:
        `InvalidSegmentException` - Thrown when Segment Validation Fails.