com.tibco.tea.agent.annotations

## Annotation Type TeaObjectType

-     @Retention(value=RUNTIME)
       @Target(value=TYPE)
      public @interface TeaObjectType

  Declare TEA Object Type on the class. It is possible to declare many types on one class using `TeaObjectTypes`.

  Each Type have to have define one method with `TeaGetInfo` annotation, and optionally:

- `TeaGetConfig` - in case object has configuration
- `TeaGetMembers` - in case object has members
- `TeaGetStatus` - in case object has status
- A number of methods with `TeaOperation` that describe operations available on the type.

  Following additional annotation can be applied to the class with type:

- `Customize` - UI customizations for objects of this type
- `TeaRole` - Roles defined by Agent, not related to Object type directly, but can coexists.
- `TeaPermission` - Permissions defined by Agent, not related to Object type directly, but can coexists.

- - ### Required Element Summary

    Required Elements
    Modifier and Type | Required Element and Description
    --- | ---
    `TeaConcept` | `concept` the concept - `TeaConcept`
    `String` | `description` Description of the type
    `String` | `name` Name of the type.

  - ### Optional Element Summary

    Optional Elements
    Modifier and Type | Optional Element and Description
    --- | ---
    `String` | `developerNotes` Developer notes
    `String` | `parentObjectType` Name of the type of the parent of a given ObjectType
    `boolean` | `sharedOwnership` Shared ownership indicates that instances of this object type are managed by multiple agents.
    `boolean` | `showInstancesInUI` Show instances in the UI indicates that should the instances of this object type be shown in the permission assignment page or not

- - ### Element Detail

    - #### concept

          public abstract TeaConcept concept

      the concept - `TeaConcept`

  - - #### description

          public abstract String description

      Description of the type

  - - #### name

          public abstract String name

      Name of the type. Have to be unique within the agent.

  - - #### developerNotes

          public abstract String developerNotes

      Developer notes
      Returns:
      Default:
        ""

  - - #### sharedOwnership

          public abstract boolean sharedOwnership

      Shared ownership indicates that instances of this object type are managed by multiple agents. The object type and key pair must be unique across agents for a give agent type.
      Default:
        false

  - - #### parentObjectType

          public abstract String parentObjectType

      Name of the type of the parent of a given ObjectType
      Default:
        ""

  - - #### showInstancesInUI

          public abstract boolean showInstancesInUI

      Show instances in the UI indicates that should the instances of this object type be shown in the permission assignment page or not
      Default:
        true

Copyright © 2022 TIBCO Software Inc.. All Rights Reserved.