1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.commons.betwixt.schema;
17
18 /***
19 * <p> This is a bean specifically designed to test cyclic references.
20 * The idea is that there's a count that counts every time <code>getFriend</code>
21 * gets called and throws a <code>RuntimeException</code> if the count gets too high.</p>
22 *
23 * @author <a href='http://jakarta.apache.org/commons'>Jakarta Commons Team</a>, <a href='http://www.apache.org'>Apache Software Foundation</a>
24 */
25 public class CyclicColumn extends ParentColumn {
26 private static int count = 0;
27 private static final int max_count = 100;
28
29 private CyclicBean bean;
30
31
32 public CyclicColumn(String name)
33 {
34 super(name);
35 }
36
37 public CyclicBean getBean()
38 {
39 if (++count > max_count)
40 {
41 throw new RuntimeException("Cyclic Reference!");
42 }
43 return bean;
44 }
45
46 public void setBean(CyclicBean aBean)
47 {
48 this.bean = aBean;
49 }
50
51 public String toString()
52 {
53 return "[CyclicColumn] name=" + getName();
54 }
55
56 }