com.avaya.ccs.api.enums

## Enum Profile

- java.lang.Object
- - java.lang.Enum<Profile>
  - - com.avaya.ccs.api.enums.Profile

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

      public enum Profile
      extends java.lang.Enum<Profile>

  The `Profile` enum represents the possible profiles that a `ClientI` object can be created with. The profile specifies what type of application the `ClientI` object is representing.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `AgentDesktop` A desktop client application should use this `Profile` if the application is controlling a single `UserI` instance within a single `ClientI` instance.
    `Server` A server application should use this `Profile` if the application is controlling multiple `UserI` instances within a single `ClientI` instance (multiple `UserI` per `ClientI`).

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Profile` | `valueOf(java.lang.String name)` Returns the enum constant of this type with the specified name.
    `static Profile[]` | `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

    - #### AgentDesktop

          public static final Profile AgentDesktop

      A desktop client application should use this `Profile` if the application is controlling a single `UserI` instance within a single `ClientI` instance.

      A server application can also use this `Profile` if the application is creating multiple `ClientI` instances to control multiple `UserI` instances. In this case the application is controlling multiple `UserI` instances but is controlling only a single `UserI` instance within a single `ClientI` instance (one `UserI` per `ClientI`).

    - #### Server

          public static final Profile Server

      A server application should use this `Profile` if the application is controlling multiple `UserI` instances within a single `ClientI` instance (multiple `UserI` per `ClientI`).

  - ### Method Detail

    - #### values

          public static Profile[] 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 (Profile c : Profile.values())
              System.out.println(c);

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

    - #### valueOf

          public static Profile 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