Annotation Type ServiceBusTopicTrigger


  • @Retention(RUNTIME)
    @Target(PARAMETER)
    public @interface ServiceBusTopicTrigger

    Place this on a parameter whose value would come from Service Bus topic, and causing the method to run when a new item is published. The parameter type can be one of the following:

    • Any native Java types such as int, String, byte[]
    • Nullable values using Optional<T>
    • Any POJO type

    The following example shows a service bus topic trigger which logs the message:

     @FunctionName("sbprocessor")
     public void serviceBusProcess(
        @ServiceBusTopicTrigger(name = "msg",
                                 topicName = "mytopicname",
                                 subscriptionName = "mysubname",
                                 connection = "myconnvarname") String message,
         final ExecutionContext context
     ) {
         context.getLogger().info(message);
     }
     
    Since:
    1.0.0
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      java.lang.String connection
      Defines the app setting name that contains the Service Bus connection string.
      java.lang.String name
      The variable name used in function.json.
      java.lang.String subscriptionName
      Defines the subscription name of the Service Bus topic to which to bind.
      java.lang.String topicName
      Defines the name of the Service Bus topic to which to bind.
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      AccessRights access
      Defines the permission of the Service Bus topic to which to bind.
      Cardinality cardinality
      Cardinality of the trigger input.
      java.lang.String dataType
      Defines how Functions runtime should treat the parameter value.
      boolean isSessionsEnabled
      Defines the value indicating whether the sessions are enabled.
    • Element Detail

      • name

        java.lang.String name
        The variable name used in function.json.
        Returns:
        The variable name used in function.json.
      • topicName

        java.lang.String topicName
        Defines the name of the Service Bus topic to which to bind.
        Returns:
        The Service Bus topic name string.
      • subscriptionName

        java.lang.String subscriptionName
        Defines the subscription name of the Service Bus topic to which to bind.
        Returns:
        The Service Bus topic subscription name string.
      • connection

        java.lang.String connection
        Defines the app setting name that contains the Service Bus connection string.
        Returns:
        The app setting name of the connection string.
      • dataType

        java.lang.String dataType

        Defines how Functions runtime should treat the parameter value. Possible values are:

        • "": get the value as a string, and try to deserialize to actual parameter type like POJO
        • string: always get the value as a string
        • binary: get the value as a binary data, and try to deserialize to actual parameter type byte[]
        Returns:
        The dataType which will be used by the Functions runtime.
        Default:
        ""
      • access

        AccessRights access
        Defines the permission of the Service Bus topic to which to bind.
        Returns:
        The Service Bus topic permission.
        Default:
        com.microsoft.azure.functions.annotation.AccessRights.MANAGE
      • isSessionsEnabled

        boolean isSessionsEnabled
        Defines the value indicating whether the sessions are enabled.
        Returns:
        The value indicating whether the sessions are enabled.
        Default:
        false
      • cardinality

        Cardinality cardinality
        Cardinality of the trigger input. Choose 'One' if the input is a single message or 'Many' if the input is an array of messages. 'ONE' is the default if unspecified
        Returns:
        An Cardinality value representing the Cardinality
        Default:
        com.microsoft.azure.functions.annotation.Cardinality.ONE