BlobInput Interface

Implements

java.lang.annotation.Annotation

public interface BlobInput
implements java.lang.annotation.Annotation

Place this on a parameter whose value would come from a blob. 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 is a Java function that uses a queue trigger and an input blob binding. The queue message contains the name of the blob, and the function logs the size of the blob.

@FunctionName("getBlobSize")
@StorageAccount("AzureWebJobsStorage")
 public void blobSize(
    @QueueTrigger(name = "filename",
                   queueName = "myqueue-items") String filename,
    @BlobInput(name = "file",
                dataType = "binary",
                path = "samples-workitems/{queueTrigger}") byte[] content,
     final ExecutionContext context
 ) {
     context.getLogger().info("The size of \"" + filename + "\" is: " + 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