Package in.cdac.medinfo.csnotk.csnolib.model

## Class Concept

- java.lang.Object
- - in.cdac.medinfo.csnotk.csnolib.model.VersionedComponent
  - - in.cdac.medinfo.csnotk.csnolib.model.Component
    - - in.cdac.medinfo.csnotk.csnolib.model.Concept

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Comparable<Concept>`

      public class Concept
      extends Component
      implements java.io.Serializable, java.lang.Comparable<Concept>

  `Concept` is a clinical idea associated with a unique identifier . A `Concept` consists of an identifier, a fully specified name, a semantic tag of type `EnumSemanticTag` to which a concept belongs and a `List` of `Description`s which are the synonyms describing the `Concept`.
  See Also:
    Serialized Form

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `compareTo​(Concept concept)` |
    `boolean` | `equals​(java.lang.Object obj)` |
    `java.lang.Byte` | `getActiveStatus()` | Returns the active status of the Concept.
    `java.lang.String` | `getDefinitionStatusId()` | Returns the definition status.
    `java.util.List<Description>` | `getDescriptions()` | Returns all `Description`s for this `Concept` other than its FSN.
    `java.lang.String` | `getFullySpecifiedName()` | Returns the Concept FSN.
    `java.lang.String` | `getId()` | Returns the `Concept` identifier.
    `java.lang.String` | `getModuleId()` | Returns the module Id.
    `java.lang.String` | `getPreferredName()` |
    `java.lang.String` | `getPreferredName​(EnumLangRefset langRefset)` | Returns the preferred name for a concept.
    `java.util.Set<Concept>` | `getRelations​(java.lang.String relationshipType, EnumDirection direction)` | Returns list of SNOMED CT identifier of children or parents for a particular `Concept` for a particular relationship type based on direction.
    `java.lang.String` | `getSemanticTag()` | Returns the semantic tag.
    `java.util.Date` | `getTime()` | Returns the effective time
    `int` | `hashCode()` |
    `void` | `setActiveStatus​(java.lang.Byte activeStatus)` | Sets the active status of the Concept.
    `void` | `setDefinitionStatusId​(EnumDefStatus definitionStatusId)` | Sets the definition status Id of the Concept.
    `void` | `setDescriptions​(java.util.List<Description> descriptions)` | Sets the list of `Description` corresponding to the SNOMED CT concept.
    `void` | `setFullySpecifiedName​(java.lang.String fullySpecifiedName)` | Sets the fully specified name associated with the Concept.
    `void` | `setId​(java.lang.String id)` | Sets the Concept identifier.
    `void` | `setModuleId​(java.lang.String modId)` | Sets the module Id associated with the Concept.
    `void` | `setPreferredName​(java.lang.String preferredName)` | this method sets the preferred name of a term
    `void` | `setTime​(java.util.Date date)` | Sets the effective time of a concept.
    `java.lang.String` | `toString()` |

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

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### getId

          public java.lang.String getId()

      Returns the `Concept` identifier.
      Overrides:
        `getId` in class `Component`
      Returns:
        id of that particular Concept.

    - #### setId

          public void setId​(java.lang.String id)

      Sets the Concept identifier.
      Overrides:
        `setId` in class `Component`
      Parameters:
        `id` - represents Concept identifier.

    - #### getFullySpecifiedName

          public java.lang.String getFullySpecifiedName()

      Returns the Concept FSN.
      Returns:
        FSN (Fully Specified Name) of that concept.

    - #### setFullySpecifiedName

          public void setFullySpecifiedName​(java.lang.String fullySpecifiedName)

      Sets the fully specified name associated with the Concept.
      Parameters:
        `fullySpecifiedName` - represents FSN of a concept.

    - #### getDefinitionStatusId

          public java.lang.String getDefinitionStatusId()

      Returns the definition status.
      Returns:
        definitionStatus Id of that concept.

    - #### setDefinitionStatusId

          public void setDefinitionStatusId​(EnumDefStatus definitionStatusId)

      Sets the definition status Id of the Concept.
      Parameters:
        `definitionStatusId` - represents definition status Id of a concept.

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### getActiveStatus

          public java.lang.Byte getActiveStatus()

      Returns the active status of the Concept.
      Overrides:
        `getActiveStatus` in class `VersionedComponent`
      Returns:
        activeStatus of that concept.

    - #### setActiveStatus

          public void setActiveStatus​(java.lang.Byte activeStatus)

      Sets the active status of the Concept.
      Overrides:
        `setActiveStatus` in class `VersionedComponent`
      Parameters:
        `activeStatus` - refers to the active status of the Concept.

    - #### getModuleId

          public java.lang.String getModuleId()

      Returns the module Id.
      Overrides:
        `getModuleId` in class `VersionedComponent`
      Returns:
        moduleId of that concept.

    - #### setModuleId

          public void setModuleId​(java.lang.String modId)

      Sets the module Id associated with the Concept.
      Overrides:
        `setModuleId` in class `VersionedComponent`
      Parameters:
        `modId` - represents Module Id of the concept sets moduleId of a concept.

    - #### getTime

          public java.util.Date getTime()

      Returns the effective time
      Overrides:
        `getTime` in class `VersionedComponent`
      Returns:
        effective time for a concept.

    - #### setTime

          public void setTime​(java.util.Date date)

      Sets the effective time of a concept.
      Overrides:
        `setTime` in class `VersionedComponent`
      Parameters:
        `date` - - represents effective time

    - #### setDescriptions

          public void setDescriptions​(java.util.List<Description> descriptions)

      Sets the list of `Description` corresponding to the SNOMED CT concept.
      Parameters:
        `descriptions` - List of `Description`.

    - #### getDescriptions

          public java.util.List<Description> getDescriptions()
                                                      throws java.sql.SQLException,
                                                             java.text.ParseException

      Returns all `Description`s for this `Concept` other than its FSN.
      Returns:
        List of `Description`s for a concept.
      Throws:
        `java.sql.SQLException` - if any error occurs while accessing database.
        `java.text.ParseException`

    - #### getPreferredName

          public java.lang.String getPreferredName()

      Returns:
        `String` value of preferred name

    - #### getPreferredName

          public java.lang.String getPreferredName​(EnumLangRefset langRefset)
                                            throws java.sql.SQLException

      Returns the preferred name for a concept.
      Parameters:
        `EnumLangRefset` -
      Returns:
        `String` value that corresponds to the preferred name associated with the Concept.
      Throws:
        `java.sql.SQLException` - if any error occurs while accessing database.

    - #### setPreferredName

          public void setPreferredName​(java.lang.String preferredName)

      this method sets the preferred name of a term
      Parameters:
        `string` - preferredName

    - #### getRelations

          public java.util.Set<Concept> getRelations​(java.lang.String relationshipType,
                                                     EnumDirection direction)

      Returns list of SNOMED CT identifier of children or parents for a particular `Concept` for a particular relationship type based on direction.
      Parameters:
        `enumRelationshipType` - Type of the relationships.
        `direction` - Direction(source/destination) in which relationship is to be retrieved.
      Returns:
        Set of `Relationship`.

    - #### getSemanticTag

          public java.lang.String getSemanticTag()
                                          throws java.lang.IllegalArgumentException

      Returns the semantic tag.
      Returns:
        semantic tag based on the FSN specified.
      Throws:
        `java.lang.Exception` - if any error occurs while processing.
        `java.lang.IllegalArgumentException`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### equals

          public boolean equals​(java.lang.Object obj)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### compareTo

          public int compareTo​(Concept concept)

      Specified by:
        `compareTo` in interface `java.lang.Comparable<Concept>`