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 DTOs {
27  
28  	@Bean(sort=true)
29  	public static class A {
30  		public String a;
31  		public int b;
32  		public boolean c;
33  
34  		public static A create() {
35  			var t = new A();
36  			t.a = "a";
37  			t.b = 1;
38  			t.c = true;
39  			return t;
40  		}
41  
42  	}
43  
44  	@Bean(sort=true)
45  	public static class B {
46  		public String[] f01;
47  		public List<String> f02;
48  		public int[] f03;
49  		public List<Integer> f04;
50  		public String[][] f05;
51  		public List<String[]> f06;
52  		public A[] f07;
53  		public List<A> f08;
54  		public A[][] f09;
55  		public List<List<A>> f10;
56  
57  		private String[] f11;
58  		private List<String> f12;
59  		private int[] f13;
60  		private List<Integer> f14;
61  		private String[][] f15;
62  		private List<String[]> f16;
63  		private A[] f17;
64  		private List<A> f18;
65  		private A[][] f19;
66  		private List<List<A>> f20;
67  
68  		public String[] getF11() { return f11; }
69  		public List<String> getF12() { return f12; }
70  		public int[] getF13() { return f13; }
71  		public List<Integer> getF14() { return f14; }
72  		public String[][] getF15() { return f15; }
73  		public List<String[]> getF16() { return f16; }
74  		public A[] getF17() { return f17; }
75  		public List<A> getF18() { return f18; }
76  		public A[][] getF19() { return f19; }
77  		public List<List<A>> getF20() { return f20; }
78  
79  		public void setF11(String[] v) { f11 = v; }
80  		public void setF12(List<String> v) { f12 = v; }
81  		public void setF13(int[] v) { f13 = v; }
82  		public void setF14(List<Integer> v) { f14 = v; }
83  		public void setF15(String[][] v) { f15 = v; }
84  		public void setF16(List<String[]> v) { f16 = v; }
85  		public void setF17(A[] v) { f17 = v; }
86  		public void setF18(List<A> v) { f18 = v; }
87  		public void setF19(A[][] v) { f19 = v; }
88  		public void setF20(List<List<A>> v) { f20 = v; }
89  
90  		static B create() {
91  			var t = new B();
92  			t.f01 = new String[]{"a","b"};
93  			t.f02 = list("c","d");
94  			t.f03 = new int[]{1,2};
95  			t.f04 = list(3,4);
96  			t.f05 = new String[][]{{"e","f"},{"g","h"}};
97  			t.f06 = list(new String[]{"i","j"},new String[]{"k","l"});
98  			t.f07 = new A[]{A.create(),A.create()};
99  			t.f08 = list(A.create(),A.create());
100 			t.f09 = new A[][]{{A.create()},{A.create()}};
101 			t.f10 = list(Arrays.asList(A.create()),Arrays.asList(A.create()));
102 			t.setF11(new String[]{"a","b"});
103 			t.setF12(list("c","d"));
104 			t.setF13(new int[]{1,2});
105 			t.setF14(list(3,4));
106 			t.setF15(new String[][]{{"e","f"},{"g","h"}});
107 			t.setF16(list(new String[]{"i","j"},new String[]{"k","l"}));
108 			t.setF17(new A[]{A.create(),A.create()});
109 			t.setF18(list(A.create(),A.create()));
110 			t.setF19(new A[][]{{A.create()},{A.create()}});
111 			t.setF20(list(Arrays.asList(A.create()),Arrays.asList(A.create())));
112 			return t;
113 		}
114 	}
115 
116 	@UrlEncoding(expandedParams=true)
117 	@Bean(sort=true)
118 	public static class C extends B {
119 		static C create() {
120 			var t = new C();
121 			t.f01 = new String[]{"a","b"};
122 			t.f02 = list("c","d");
123 			t.f03 = new int[]{1,2};
124 			t.f04 = list(3,4);
125 			t.f05 = new String[][]{{"e","f"},{"g","h"}};
126 			t.f06 = list(new String[]{"i","j"},new String[]{"k","l"});
127 			t.f07 = new A[]{A.create(),A.create()};
128 			t.f08 = list(A.create(),A.create());
129 			t.f09 = new A[][]{{A.create()},{A.create()}};
130 			t.f10 = list(Arrays.asList(A.create()),Arrays.asList(A.create()));
131 			t.setF11(new String[]{"a","b"});
132 			t.setF12(list("c","d"));
133 			t.setF13(new int[]{1,2});
134 			t.setF14(list(3,4));
135 			t.setF15(new String[][]{{"e","f"},{"g","h"}});
136 			t.setF16(list(new String[]{"i","j"},new String[]{"k","l"}));
137 			t.setF17(new A[]{A.create(),A.create()});
138 			t.setF18(list(A.create(),A.create()));
139 			t.setF19(new A[][]{{A.create()},{A.create()}});
140 			t.setF20(list(Arrays.asList(A.create()),Arrays.asList(A.create())));
141 			return t;
142 		}
143 	}
144 }