1
2
3
4
5
6
7 package org.mule.api.annotations.param;
8
9 import org.mule.api.annotations.expressions.Lookup;
10 import org.mule.api.transformer.Transformer;
11 import org.mule.tck.testmodels.fruit.Apple;
12 import org.mule.tck.testmodels.fruit.Banana;
13 import org.mule.tck.testmodels.fruit.Fruit;
14 import org.mule.tck.testmodels.fruit.Orange;
15 import org.mule.transformer.simple.ObjectToByteArray;
16
17 import java.util.ArrayList;
18 import java.util.List;
19
20
21
22
23 public class LookupComponent
24 {
25 @Lookup("transformer1")
26 private Transformer transformer1;
27
28 @Lookup(value = "transformer2", optional = true)
29 private Transformer transformer2;
30
31 @Lookup
32 private ObjectToByteArray transformer3;
33
34 public List<Fruit> listFruit(@Lookup Banana banana,
35 @Lookup("redApple") Apple apple,
36 @Lookup(optional = true) Orange orange)
37 {
38 List<Fruit> f = new ArrayList<Fruit>();
39 f.add(banana);
40 f.add(apple);
41 if(orange!=null)
42 {
43 f.add(orange);
44 }
45 return f;
46 }
47
48 public Transformer getTransformer1()
49 {
50 return transformer1;
51 }
52
53 public Transformer getTransformer2()
54 {
55 return transformer2;
56 }
57
58 public ObjectToByteArray getTransformer3()
59 {
60 return transformer3;
61 }
62 }