1 /*
2 * Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com
3 * The software in this package is published under the terms of the CPAL v1.0
4 * license, a copy of which has been included with this distribution in the
5 * LICENSE.txt file.
6 */
7 package org.mule.api.annotations.param;
8
9 import org.mule.api.annotations.meta.Evaluator;
10
11 import java.lang.annotation.Documented;
12 import java.lang.annotation.ElementType;
13 import java.lang.annotation.Retention;
14 import java.lang.annotation.RetentionPolicy;
15 import java.lang.annotation.Target;
16
17 /**
18 * Used on components, this annotation marks the method parameter that will be used
19 * to pass in the message payload. Note that the parameter type will be used to do
20 * any auto conversions using transformers available inside the Mule container. Mule
21 * has a number of standard transformers for dealing with common Java types such as
22 * XML documents, streams, byte arrays, strings, etc. It is also very easy for users
23 * to define their own using the {@link org.mule.api.annotations.Transformer}
24 * annotation.
25 *
26 * @see org.mule.api.annotations.Transformer
27 */
28 @Target(ElementType.PARAMETER)
29 @Retention(RetentionPolicy.RUNTIME)
30 @Documented
31 @Evaluator("payload")
32 public @interface Payload
33 {
34 // no custom methods
35 }