1 /*
2 * Scope: a generic MVC framework.
3 * Copyright (c) 2000-2002, The Scope team
4 * All rights reserved.
5 *
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 *
11 * Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 *
14 * Redistributions in binary form must reproduce the above copyright
15 * notice, this list of conditions and the following disclaimer in the
16 * documentation and/or other materials provided with the distribution.
17 *
18 * Neither the name "Scope" nor the names of its contributors
19 * may be used to endorse or promote products derived from this software
20 * without specific prior written permission.
21 *
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
27 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
28 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
29 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
30 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
31 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
32 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
33 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34 *
35 *
36 * $Id: PetModel.java,v 1.4 2002/09/05 15:41:46 ludovicc Exp $
37 */
38 package samples.swing.activesubmodel;
39
40
41 import java.util.List;
42 import org.scopemvc.core.Selector;
43 import org.scopemvc.model.basic.BasicModel;
44 import org.scopemvc.model.collection.ListModel;
45
46 /***
47 * <P>
48 *
49 * </P>
50 *
51 * @author <A HREF="mailto:smeyfroi@users.sourceforge.net">Steve Meyfroidt</A>
52 * @created 05 September 2002
53 * @version $Revision: 1.4 $ $Date: 2002/09/05 15:41:46 $
54 */
55 public class PetModel extends BasicModel {
56
57 /***
58 * TODO: describe of the Field
59 */
60 public final static Selector NAME = Selector.fromString("name");
61 /***
62 * TODO: describe of the Field
63 */
64 public final static Selector FOOD = Selector.fromString("food");
65 /***
66 * TODO: describe of the Field
67 */
68 public final static Selector TOYS = Selector.fromString("toys");
69
70 private String name;
71 private String food;
72 private List toys;
73
74
75 /***
76 * Constructor for the PetModel object
77 */
78 public PetModel() {
79 name = "Trevor";
80 food = "Chicken";
81 toys = new ListModel();
82 toys.add("Ball");
83 toys.add("Fluffy mouse");
84 listenNewSubmodel(TOYS);
85 }
86
87
88 /***
89 * Gets the name
90 *
91 * @return The name value
92 */
93 public String getName() {
94 return name;
95 }
96
97
98 /***
99 * Gets the food
100 *
101 * @return The food value
102 */
103 public String getFood() {
104 return food;
105 }
106
107
108 /***
109 * Gets the toys
110 *
111 * @return The toys value
112 */
113 public List getToys() {
114 return toys;
115 }
116
117
118 /***
119 * Sets the name
120 *
121 * @param inName The new name value
122 */
123 public void setName(String inName) {
124 name = inName;
125 fireModelChange(VALUE_CHANGED, NAME);
126 }
127
128
129 /***
130 * Sets the food
131 *
132 * @param inFood The new food value
133 */
134 public void setFood(String inFood) {
135 food = inFood;
136 fireModelChange(VALUE_CHANGED, FOOD);
137 }
138
139
140 /***
141 * TODO: document the method
142 */
143 public void clearToys() {
144 toys.clear();
145 }
146
147
148 /***
149 * Adds an element to the Toy attribute of the PetModel object
150 *
151 * @param inToy The element to be added to the Toy attribute
152 */
153 public void addToy(String inToy) {
154 toys.add(inToy);
155 }
156
157
158 /***
159 * TODO: document the method
160 *
161 * @param inToy TODO: Describe the Parameter
162 */
163 public void removeToy(String inToy) {
164 if (inToy == null) {
165 throw new IllegalArgumentException("null toy");
166 }
167 toys.remove(inToy);
168 }
169 }
This page was automatically generated by Maven