View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  package org.apache.juneau.urlencoding;
18  
19  import static org.apache.juneau.common.utils.Utils.*;
20  
21  import java.util.*;
22  
23  import org.apache.juneau.annotation.*;
24  import org.apache.juneau.urlencoding.annotation.*;
25  
26  public class DTOs2 {
27  
28  	@Bean(on="Dummy1",sort=true)
29  	@Bean(on="A,B,C",sort=true)
30  	@Bean(on="Dummy2",sort=true)
31  	@UrlEncoding(on="Dummy1",expandedParams=true)
32  	@UrlEncoding(on="C",expandedParams=true)
33  	@UrlEncoding(on="Dummy2",expandedParams=true)
34  	public static class Annotations {}
35  
36  	public static class A {
37  		public String a;
38  		public int b;
39  		public boolean c;
40  
41  		public static A create() {
42  			var t = new A();
43  			t.a = "a";
44  			t.b = 1;
45  			t.c = true;
46  			return t;
47  		}
48  
49  	}
50  
51  	public static class B {
52  		public String[] f01;
53  		public List<String> f02;
54  		public int[] f03;
55  		public List<Integer> f04;
56  		public String[][] f05;
57  		public List<String[]> f06;
58  		public A[] f07;
59  		public List<A> f08;
60  		public A[][] f09;
61  		public List<List<A>> f10;
62  
63  		private String[] f11;
64  		private List<String> f12;
65  		private int[] f13;
66  		private List<Integer> f14;
67  		private String[][] f15;
68  		private List<String[]> f16;
69  		private A[] f17;
70  		private List<A> f18;
71  		private A[][] f19;
72  		private List<List<A>> f20;
73  
74  		public String[] getF11() { return f11; }
75  		public List<String> getF12() { return f12; }
76  		public int[] getF13() { return f13; }
77  		public List<Integer> getF14() { return f14; }
78  		public String[][] getF15() { return f15; }
79  		public List<String[]> getF16() { return f16; }
80  		public A[] getF17() { return f17; }
81  		public List<A> getF18() { return f18; }
82  		public A[][] getF19() { return f19; }
83  		public List<List<A>> getF20() { return f20; }
84  
85  		public void setF11(String[] v) { f11 = v; }
86  		public void setF12(List<String> v) { f12 = v; }
87  		public void setF13(int[] v) { f13 = v; }
88  		public void setF14(List<Integer> v) { f14 = v; }
89  		public void setF15(String[][] v) { f15 = v; }
90  		public void setF16(List<String[]> v) { f16 = v; }
91  		public void setF17(A[] v) { f17 = v; }
92  		public void setF18(List<A> v) { f18 = v; }
93  		public void setF19(A[][] v) { f19 = v; }
94  		public void setF20(List<List<A>> v) { f20 = v; }
95  
96  		static B create() {
97  			var t = new B();
98  			t.f01 = new String[]{"a","b"};
99  			t.f02 = list("c","d");
100 			t.f03 = new int[]{1,2};
101 			t.f04 = list(3,4);
102 			t.f05 = new String[][]{{"e","f"},{"g","h"}};
103 			t.f06 = list(new String[]{"i","j"},new String[]{"k","l"});
104 			t.f07 = new A[]{A.create(),A.create()};
105 			t.f08 = list(A.create(),A.create());
106 			t.f09 = new A[][]{{A.create()},{A.create()}};
107 			t.f10 = list(Arrays.asList(A.create()),Arrays.asList(A.create()));
108 			t.setF11(new String[]{"a","b"});
109 			t.setF12(list("c","d"));
110 			t.setF13(new int[]{1,2});
111 			t.setF14(list(3,4));
112 			t.setF15(new String[][]{{"e","f"},{"g","h"}});
113 			t.setF16(list(new String[]{"i","j"},new String[]{"k","l"}));
114 			t.setF17(new A[]{A.create(),A.create()});
115 			t.setF18(list(A.create(),A.create()));
116 			t.setF19(new A[][]{{A.create()},{A.create()}});
117 			t.setF20(list(Arrays.asList(A.create()),Arrays.asList(A.create())));
118 			return t;
119 		}
120 	}
121 
122 	public static class C extends B {
123 		static C create() {
124 			var t = new C();
125 			t.f01 = new String[]{"a","b"};
126 			t.f02 = list("c","d");
127 			t.f03 = new int[]{1,2};
128 			t.f04 = list(3,4);
129 			t.f05 = new String[][]{{"e","f"},{"g","h"}};
130 			t.f06 = list(new String[]{"i","j"},new String[]{"k","l"});
131 			t.f07 = new A[]{A.create(),A.create()};
132 			t.f08 = list(A.create(),A.create());
133 			t.f09 = new A[][]{{A.create()},{A.create()}};
134 			t.f10 = list(Arrays.asList(A.create()),Arrays.asList(A.create()));
135 			t.setF11(new String[]{"a","b"});
136 			t.setF12(list("c","d"));
137 			t.setF13(new int[]{1,2});
138 			t.setF14(list(3,4));
139 			t.setF15(new String[][]{{"e","f"},{"g","h"}});
140 			t.setF16(list(new String[]{"i","j"},new String[]{"k","l"}));
141 			t.setF17(new A[]{A.create(),A.create()});
142 			t.setF18(list(A.create(),A.create()));
143 			t.setF19(new A[][]{{A.create()},{A.create()}});
144 			t.setF20(list(Arrays.asList(A.create()),Arrays.asList(A.create())));
145 			return t;
146 		}
147 	}
148 }