Anotaciones de creación y función

Lista de las anotaciones disponibles para creación y función.

Anotación: BotCommand

Permite que el tipo pueda tratarse como una action. Puede definir tres tipos de acciones para la propiedad commandType.

  • Comando/Acción
  • Condición
  • Iterador
Ejemplos:
  • @BotCommand(commandType = BotCommand.CommandType.Iterator)
  • @BotCommand(commandType = Condition)
  • @BotCommand(commandType = Varialbe)
  • @BotCommand(commandType = Trigger)

Anotación: CommandPkg

Hace que el tipo pueda utilizarse para la creación de acciones package.json. Esta anotación se debe usar con BotCommand para que tenga efecto. Pkg participa en la actividad solo cuando esta anotación está presente.

Ejemplo:
@CommandPkg(label = "Create", name = "createFile", 
description = "Creates a file", node_label = "{{filePath}}", 
icon = "file.svg")

Anotación: ConditionTest

Participa en la ejecución de Condición. Esta anotación solo puede utilizarse cuando BotCommand tiene commandType establecido como Condición. Se debe anotar solo un método cuando la anotación BotCommand esté presente en el tipo. Si no se hace así, se producirá un error de compilación.

Anotación: Ejecutar

Participa en la ejecución de BotCommand. Se debe anotar exactamente un método cuando la anotación BotCommand esté presente en el tipo. Si no se hace así, se producirá un error de compilación.

Ejemplo:
@Execute public void create( @Idx(index = "1", type = FILE) @LocalFile @Pkg(label = 
"File", description = "e.g. C:\\MyDoc\\MyFile.doc") @NotEmpty String filePath, 
@Idx(index = "2", type = CHECKBOX) @Pkg(label = "Overwrite an existing file") 
@NotEmpty Boolean isOverwrite) { createFile(filePath, isOverwrite); }

Anotación: GlobalSessionContext

Solo puede aplicarse a las variables de instancia y obtiene el valor de GlobalSessionContext a través de un método setter.

Ejemplo:
@com.automationanywhere.commandsdk.annotations.GlobalSessionContext
    private GlobalSessionContext globalSessionContext;

    public void setSessionMap(Map < String, Object > sessionMap) {
     this.sessionMap = sessionMap;
    }
    public void setGlobalSessionContext(com.automationanywhere.bot.service.GlobalSessionContext globalSessionContext) {
     this.globalSessionContext = globalSessionContext;
    }

Anotación: HasNext

Participa en la ejecución de Iterator. Esta anotación solo puede utilizarse cuando BotCommand tiene commandType establecido comoIterador. Es obligatorio que esté presente la anotación Siguiente. Se debe anotar un método cuando la anotación BotCommand esté presente en el tipo. Si no se hace así, se producirá un error de compilación.

Anotación: Índice

Permite que el elemento anotado sea parte de la jerarquía utilizada para la generación del código y los recursos. Sin esta anotación, no se procesarían las anotaciones de elementos relacionados con BotCommand.

Anotación: Idx.Option

Una opción representa los elementos que intervienen en la jerarquía, pero que les prestan sus valores a los elementos principales.

Ejemplos:
  • RADIO
    @Idx(index = "1", type = RADIO, options = {
        @Idx.Option(index = "1.1", pkg = @Pkg(node_label = "[[Delay.delayType.1.1.node_label]]", label = "[[Delay.delayType.1.1.label]]", value = REGULAR)),
        @Idx.Option(index = "1.2", pkg = @Pkg(node_label = "[[Delay.delayType.1.2.node_label]]", label = "[[Delay.delayType.1.2.label]]", value = RANDOM))
    })
    @Pkg(label = "[[Delay.delayType.label]]", default_value = "REGULAR", default_value_type = DataType.STRING)
    @Inject
    private String delayType;
  • SELECCIONAR
    @Idx(index = "2", type = SELECT, options = {
    @Idx.Option(index = "2.1", pkg = @Pkg(label = "[[LaunchWebsite.browser.2.1.label]]", value = "DEFAULT")),
    @Idx.Option(index = "2.2", pkg = @Pkg(label = "[[LaunchWebsite.browser.2.2.label]]", value = "INTERNET_EXPLORER")),
    @Idx.Option(index = "2.3", pkg = @Pkg(label = "[[LaunchWebsite.browser.2.3.label]]", value = "FIREFOX")),
    @Idx.Option(index = "2.4", pkg = @Pkg(label = "[[LaunchWebsite.browser.2.4.label]]", value = "CHROME"))
    }) @Pkg(label = "[[LaunchWebsite.browser.label]]", default_value = "DEFAULT", default_value_type = DataType.STRING) @NotEmptyStringbrowser)

Anotación: Inject

Permite que un elemento se pueda inyectar dentro del objeto del tipo anotado. La inyección se basa en el método setter, por lo que es obligatorio un método setter correspondiente en el tipo. Los valores inyectados formarían el mapa de parámetros BotCommand utilizando el nombre proporcionado en Idx.

Anotación: Siguiente

Participa en la ejecución de Iterator. Esta anotación solo puede utilizarse cuando BotCommand tiene commandType establecido como Iterator. Es obligatorio que esté presente la anotación HasNext. Se debe anotar un método cuando la anotación BotCommand esté presente en el tipo. Si no se hace así, se producirá un error de compilación.

Anotación: Pkg

Permite que un elemento participe en la creación de package.json. Esta anotación se omite si ldx no está presente.