Package: groovy.transform

## [Java] Annotation Type ActiveObject

- groovy.transform.ActiveObject

-     @Documented
      @Retention(RetentionPolicy.SOURCE)
      @Target(ElementType.TYPE)
      public @interface ActiveObject

  Marks a class as an active object whose ActiveMethod-annotated methods are automatically routed through an internal actor for thread-safe, serialized execution.

  All `@ActiveMethod` calls on the same instance are processed one at a time — no locks needed.

      {@literal @}ActiveObject
       class Account {
           private double balance = 0

           {@literal @}ActiveMethod
           void deposit(double amount) { balance += amount }

           {@literal @}ActiveMethod(blocking = false)
           Awaitable<Double> getBalance() { balance }
       }

  See Also:
    ActiveMethod
  Since:
    6.0.0

- - ### Element Summary

    Optional Element Summary
    Type | Name and Description
    --- | ---
    `String` | `actorName` The name of the generated actor field.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Element Detail

    - #### public String actorName

      The name of the generated actor field.

      Default:
        "internalActiveObjectActor"