1 package org.molwind.model;
2
3 /*
4 * This file is part of Molwind.
5 *
6 * Molwind is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * Molwind 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
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with Molwind. If not, see <http://www.gnu.org/licenses/>.
18 */
19
20 import java.util.Iterator;
21
22 /**
23 * WorldEntity interface represents entities of a Molwind world.
24 *
25 * @author <a href="mailto:oliver.karch@molwind.org">Oliver Karch</a>
26 * @version 1.0
27 */
28 public interface WorldEntity {
29
30 /**
31 * Returns an iterator of relationship objects.
32 *
33 * @return
34 * an iterator of relationship objects
35 */
36 Iterator getRelationships();
37
38
39
40 // /**
41 // * Get the ParentID value.
42 // * @return the ParentID value.
43 // */
44 // public int getParentID();
45
46 // /**
47 // * Set the ParentID value.
48 // * @param newParentID The new ParentID value.
49 // */
50 // public void setParentID(int newParentID);
51
52 /**
53 * Returns the value of the attribute with the given name.
54 *
55 * @param name
56 * the name of the attribute
57 * @return
58 * the value of the attribute
59 */
60 public Object getAttribute(final String name);
61
62 /**
63 * Sets the value of the attribute with the given name.
64 *
65 * @param name
66 * the name of the attribute
67 * @param value
68 * the value of the attribute
69 */
70 void putAttribute(final String name, final Object value);
71
72 /**
73 * Returns int for the bigness of the entity
74 *
75 * @return
76 * the bigness of the entity
77 */
78 public int getDimension();
79
80
81 }