1   /**
2    * Logback: the reliable, generic, fast and flexible logging framework.
3    * Copyright (C) 1999-2015, QOS.ch. All rights reserved.
4    *
5    * This program and the accompanying materials are dual-licensed under
6    * either the terms of the Eclipse Public License v1.0 as published by
7    * the Eclipse Foundation
8    *
9    *   or (per the licensee's choosing)
10   *
11   * under the terms of the GNU Lesser General Public License version 2.1
12   * as published by the Free Software Foundation.
13   */
14  package ch.qos.logback.core.joran.util;
15  
16  import java.nio.charset.Charset;
17  import java.util.ArrayList;
18  import java.util.List;
19  
20  import ch.qos.logback.core.joran.spi.DefaultClass;
21  import ch.qos.logback.core.spi.FilterReply;
22  import ch.qos.logback.core.util.Duration;
23  import ch.qos.logback.core.util.FileSize;
24  
25  public class House {
26      Door mainDoor;
27      int count;
28      Double temperature;
29      boolean open;
30      String name;
31      String camelCase;
32      SwimmingPool pool;
33      Duration duration;
34      FileSize fs;
35      HouseColor houseColor;
36      FilterReply reply;
37  
38      Charset charset;
39  
40      List<String> adjectiveList = new ArrayList<String>();
41      List<Window> windowList = new ArrayList<Window>();
42      List<SwimmingPool> largePoolList = new ArrayList<SwimmingPool>();
43      List<FileSize> fileSizes = new ArrayList();
44  
45      Orange orange;
46  
47      public String getCamelCase() {
48          return camelCase;
49      }
50  
51      public void setCamelCase(String camelCase) {
52          this.camelCase = camelCase;
53      }
54  
55      public int getCount() {
56          return count;
57      }
58  
59      public void setCount(int c) {
60          this.count = c;
61      }
62  
63      public Double getTemperature() {
64          return temperature;
65      }
66  
67      public void setTemperature(Double temperature) {
68          this.temperature = temperature;
69      }
70  
71      public Door getDoor() {
72          return mainDoor;
73      }
74  
75      public void setDoor(Door door) {
76          this.mainDoor = door;
77      }
78  
79      public String getName() {
80          return name;
81      }
82  
83      public void setName(String name) {
84          this.name = name;
85      }
86  
87      public boolean isOpen() {
88          return open;
89      }
90  
91      public void setOpen(boolean open) {
92          this.open = open;
93      }
94  
95      @DefaultClass(LargeSwimmingPoolImpl.class)
96      public void addLargeSwimmingPool(SwimmingPool pool) {
97          this.pool = pool;
98      }
99  
100     @DefaultClass(SwimmingPoolImpl.class)
101     public void setSwimmingPool(SwimmingPool pool) {
102         this.pool = pool;
103     }
104 
105     public SwimmingPool getSwimmingPool() {
106         return pool;
107     }
108 
109     public void addWindow(Window w) {
110         windowList.add(w);
111     }
112 
113     public void addFileSize(FileSize fs) {
114         fileSizes.add(fs);
115     }
116 
117     public void addAdjective(String s) {
118         adjectiveList.add(s);
119     }
120 
121     public Duration getDuration() {
122         return duration;
123     }
124 
125     public void setDuration(Duration duration) {
126         this.duration = duration;
127     }
128 
129     public FileSize getFs() {
130         return fs;
131     }
132 
133     public void setFs(FileSize fs) {
134         this.fs = fs;
135     }
136 
137     public void setHouseColor(HouseColor color) {
138         this.houseColor = color;
139     }
140 
141     public HouseColor getHouseColor() {
142         return houseColor;
143     }
144 
145     public void setFilterReply(FilterReply reply) {
146         this.reply = reply;
147     }
148 
149     public FilterReply getFilterReply() {
150         return reply;
151     }
152 
153     public Charset getCharset() {
154         return charset;
155     }
156 
157     public void setCharset(Charset charset) {
158         this.charset = charset;
159     }
160 
161     public void setOrange(Orange o) {
162         this.orange = o;
163     }
164 }
165 
166 class Door {
167     int handle;
168 }
169 
170 interface SwimmingPool {
171 }
172 
173 class SwimmingPoolImpl implements SwimmingPool {
174     int length;
175     int width;
176     int depth;
177 }
178 
179 class LargeSwimmingPoolImpl implements SwimmingPool {
180     int length;
181     int width;
182     int depth;
183 }
184 
185 enum HouseColor {
186     WHITE, BLUE
187 }