public abstract @interface

InvocationHeaders

implements Annotation
org.mule.api.annotations.param.InvocationHeaders

Class Overview

Used on Processor methods, this annotation marks the method parameter that will be used to pass in one or more of the headers received.

This annotation value can define a single header, a comma-separated list of header names, '*' to denote all headers, or a comma-separated list of wildcard expressions such as 'MULE_*, X-*'. By default, if a named header is not present on the current message, an exception will be thrown.

However, if the header name is defined with the '?' post fix, it will be marked as optional.

When defining multiple header names or using wildcards, the parameter can be a java.util.Map or java.util.List. If a java.util.Map is used, the header name and value is passed in. If java.util.List is used, just the header values are used. If a single header name is defined, the header type can be used as the parameter type, though java.util.List or java.util.Map can be used too.

The Invocation headers collection is immutable, so the headers Map or List passed in will be immutable too. Attempting to write to the Map or List will result in an UnsupportedOperationException.

Summary

[Expand]
Inherited Methods
From interface java.lang.annotation.Annotation