Annotation Type BlobTrigger


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

    Place this on a parameter whose value would come from a blob, and causing the method to run when a blob is uploaded. 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 Java function that logs the filename and size when a blob is added or updated in the "samples-workitems" container:

    @FunctionName("blobMonitor")
     public void blobMonitor(
        @BlobTrigger(name = "file",
                      dataType = "binary",
                      path = "samples-workitems/{name}",
                      connection = "AzureWebJobsStorage") byte[] content,
        @BindingName("name") String filename,
         final ExecutionContext context
     ) {
         context.getLogger().info("Name: " + filename + ", Size: " + content.length + " bytes");
     }
    Since:
    1.0.0
    See Also:
    BindingName
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      java.lang.String name
      The variable name used in function.json.
      java.lang.String path
      Defines the path of the blob to which to bind.
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      java.lang.String connection
      Defines the app setting name that contains the Azure Storage connection string.
      java.lang.String dataType
      Defines how Functions runtime should treat the parameter value.
      java.lang.String source
      Defines the parameter to specify the type of the blob trigger to use, example EventGrid for event grid blob trigger.
    • Element Detail

      • name

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

        java.lang.String path
        Defines the path of the blob to which to bind.
        Returns:
        The blob path 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:
        ""
      • connection

        java.lang.String connection
        Defines the app setting name that contains the Azure Storage connection string.
        Returns:
        The app setting name of the connection string.
        Default:
        ""
      • source

        java.lang.String source
        Defines the parameter to specify the type of the blob trigger to use, example EventGrid for event grid blob trigger.
        Returns:
        the parameter to specify the type of the blob trigger to use.
        Default:
        ""