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