BlobTrigger Interface

Implements

java.lang.annotation.Annotation

public interface BlobTrigger
implements java.lang.annotation.Annotation

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
  • 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");
 }

Method Summary

Modifier and Type Method and Description
abstract java.lang.String connection()

Defines the app setting name that contains the Azure Storage connection string.

abstract java.lang.String dataType()

Defines how Functions runtime should treat the parameter value.

abstract java.lang.String name()

The variable name used in function.json.

abstract java.lang.String path()

Defines the path of the blob to which to bind.

Method Details

connection

public abstract String connection()

Defines the app setting name that contains the Azure Storage connection string.

Returns:

The app setting name of the connection string.

dataType

public abstract 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.

name

public abstract String name()

The variable name used in function.json.

Returns:

The variable name used in function.json.

path

public abstract String path()

Defines the path of the blob to which to bind.

Returns:

The blob path string.

Applies to