01: /**
02: * Speedo: an implementation of JDO compliant personality on top of JORM generic
03: * I/O sub-system.
04: * Copyright (C) 2001-2004 France Telecom R&D
05: *
06: * This library is free software; you can redistribute it and/or
07: * modify it under the terms of the GNU Lesser General Public
08: * License as published by the Free Software Foundation; either
09: * version 2 of the License, or (at your option) any later version.
10: *
11: * This library is distributed in the hope that it will be useful,
12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14: * Lesser General Public License for more details.
15: *
16: * You should have received a copy of the GNU Lesser General Public
17: * License along with this library; if not, write to the Free Software
18: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19: *
20: *
21: *
22: * Contact: speedo@objectweb.org
23: *
24: */package org.objectweb.speedo.tutorial.pobjects.mapping;
25:
26: import java.util.ArrayList;
27: import java.util.Collection;
28: import java.util.Iterator;
29:
30: /**
31: * @author Y.Bersihand
32: */
33: public class Employee {
34:
35: private String name;
36: private Manager manager;
37: private Collection projects;
38:
39: public Employee(String name) {
40: this .name = name;
41: this .manager = null;
42: this .projects = new ArrayList();
43: }
44:
45: public Employee(String name, Manager manager) {
46: this .name = name;
47: this .manager = manager;
48: this .projects = new ArrayList();
49: }
50:
51: public Manager getManager() {
52: return manager;
53: }
54:
55: public void setManager(Manager manager) {
56: this .manager = manager;
57: }
58:
59: public String getName() {
60: return name;
61: }
62:
63: public void setName(String name) {
64: this .name = name;
65: }
66:
67: public Collection getProjects() {
68: return projects;
69: }
70:
71: public void setProjects(Collection projects) {
72: this .projects = projects;
73: }
74:
75: public void addProject(Project project) {
76: projects.add(project);
77: project.addEmployee(this );
78: }
79:
80: public String toString() {
81: String s = "Name: " + name + ", Manager: " + manager.getName()
82: + ", Projects:[";
83: Iterator it = projects.iterator();
84: while (it.hasNext()) {
85: Project project = (Project) it.next();
86: s += project.getTitle() + ", ";
87: }
88: s = s.substring(0, s.length() - 2);
89: s += "]";
90: return s;
91: }
92: }
|