Package tigase.annotations

## Enum TODO.Severity

- java.lang.Object
- - java.lang.Enum<TODO.Severity>
  - - tigase.annotations.TODO.Severity

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Comparable<TODO.Severity>`
  Enclosing class:
    TODO

      public static enum TODO.Severity
      extends java.lang.Enum<TODO.Severity>

  This enumeration defines importance levels for code change which is expected to be made for annotated element.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `CRITICAL` | If change severity is set to `CRITICAL` it means that wihtout this change some progress is not possible.
    `DOCUMENTATION` | `DOCUMENTATION` severity refers to code which should be documented.
    `IMPORTANT` | `IMPORTANT` severity means that this code does not block implementation of any functionality but might be inefficient, insecure or contain some temporary solution. `IMPORTANT` severity can be also assigned to code which needs some medium or major refactoring.
    `TRIVIAL` | `TRIVIAL` severity means that this code works correctly and is implemented according to design but there is still some minor improvement that can be done or just cleaning the code. `TRIVIAL` severity can be assigned also to code which needs some minor refactoring.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static TODO.Severity` | `valueOf​(java.lang.String name)` | Returns the enum constant of this type with the specified name.
    `static TODO.Severity[]` | `values()` | Returns an array containing the constants of this enum type, in the order they are declared.

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

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

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

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

- - ### Enum Constant Detail

    - #### CRITICAL

          public static final TODO.Severity CRITICAL

      If change severity is set to `CRITICAL` it means that wihtout this change some progress is not possible. Probably it blocks some important functionality like SSL activation for server port.

    - #### IMPORTANT

          public static final TODO.Severity IMPORTANT

      `IMPORTANT` severity means that this code does not block implementation of any functionality but might be inefficient, insecure or contain some temporary solution.
      `IMPORTANT` severity can be also assigned to code which needs some medium or major refactoring.

    - #### TRIVIAL

          public static final TODO.Severity TRIVIAL

      `TRIVIAL` severity means that this code works correctly and is implemented according to design but there is still some minor improvement that can be done or just cleaning the code.
      `TRIVIAL` severity can be assigned also to code which needs some minor refactoring.

    - #### DOCUMENTATION

          public static final TODO.Severity DOCUMENTATION

      `DOCUMENTATION` severity refers to code which should be documented. It does not refer to API documentation. It refers to in-line documentation which should be added due to complicity of some code or unusual algorithm used.
      Usually I try to avoid "smart" code but in certain cases it is required to use code which might be difficult to understand. In all such cases code should be detaily documented. This annotation can help to remind what parts of code needs more documentation.
      This annotation should be also added by other developer who is not owner of some part of code but tried to read it and found it difficult to understand. In such case it is recommended that this developers should leave such annotation to bring attention to owner that some code needs better documentation.

  - ### Method Detail

    - #### values

          public static TODO.Severity[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (TODO.Severity c : TODO.Severity.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static TODO.Severity valueOf​(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null