001: /*
002: * Copyright (c) 2001 Silvere Martin-Michiellot All Rights Reserved.
003: *
004: * Silvere Martin-Michiellot grants you ("Licensee") a non-exclusive,
005: * royalty free, license to use, modify and redistribute this
006: * software in source and binary code form,
007: * provided that i) this copyright notice and license appear on all copies of
008: * the software; and ii) Licensee does not utilize the software in a manner
009: * which is disparaging to Silvere Martin-Michiellot.
010: *
011: * This software is provided "AS IS," without a warranty of any kind. ALL
012: * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY
013: * IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
014: * NON-INFRINGEMENT, ARE HEREBY EXCLUDED. Silvere Martin-Michiellot
015: * AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES
016: * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING
017: * OR DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL
018: * Silvere Martin-Michiellot OR ITS LICENSORS BE LIABLE
019: * FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT,
020: * INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
021: * CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF
022: * OR INABILITY TO USE SOFTWARE, EVEN IF Silvere Martin-Michiellot HAS BEEN
023: * ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
024: *
025: * This software is not designed or intended for use in on-line control of
026: * aircraft, air traffic, aircraft navigation or aircraft communications; or in
027: * the design, construction, operation or maintenance of any nuclear
028: * facility. Licensee represents and warrants that it will not use or
029: * redistribute the Software for such purposes.
030: *
031: * @Author: Silvere Martin-Michiellot
032: *
033: */
034:
035: package com.db.world;
036:
037: import javax.jdo.*;
038: import java.util.*;
039: import javax.media.j3d.*;
040:
041: /**
042: * There are two ways of defining a worldSpot. Either extending the WorldSpot class using this template or making individual calls to each method in a class extending Object.
043: */
044:
045: public class ExampleWorldSpot extends WorldSpot {
046:
047: //Designer should override constructor to provide an interesting worldspot containing interesting objects, tools and creatures
048: private final ExampleWorldSpot() {
049:
050: throw new java.lang.InvalidArgumentException(
051: "An ExampleWorldSpot must have a persistenceManagerFactory, a ruler, a position and bounds.");
052:
053: }
054:
055: //upon worldSpot creation, ruler is allocated full land of the worldSpot
056: public ExampleWorldSpot(
057: PersistenceManagerFactory persistenceManagerFactory,
058: Avatar ruler, Transform3D position, Bounds bounds) {
059:
060: super (persistenceManagerFactory, ruler, position, bounds);
061:
062: }
063:
064: //public final Transform3D getPosition () {
065: //}
066:
067: //ruler only call
068: //public final void setPosition (Transform3D position) {
069: //}
070:
071: //public Bounds getBounds () {
072: //}
073:
074: //ruler only call
075: //public void setBounds (Bounds bounds) {
076: //}
077:
078: //public final Trade getTrade () {
079: //}
080:
081: //ruler only call
082: //public final Pool setTrade (Trade trade) {
083: //}
084:
085: //public final HashSet getPools () {
086: //}
087:
088: //public final Pool startPool (Avatar avatar) {
089: //}
090:
091: //public final void closePool (pool, Avatar avatar) {
092: //}
093:
094: //public final Avatar getRuler () {
095: //}
096:
097: //ruler only call
098: //public final void setRuler (Avatar ruler) {
099: //}
100:
101: //public final Hashtable getInformation () {
102: //}
103:
104: //public final Object getInformation (String key) {
105: //}
106:
107: //public final Date getDate () {
108: //}
109:
110: //public final String getCreatorName () {
111: //}
112:
113: //public final String getCreatorEMail () {
114: //}
115:
116: //public final PublicKey getCreatorPublicKey () {
117: //}
118:
119: //public final String getName () {
120: //}
121:
122: //public final String getVersion () {
123: //}
124:
125: //can only be called by ruler
126: //public final void setDate (Date date) {
127: //}
128:
129: //can only be called by ruler
130: //public final void setCreatorName (String name) {
131: //}
132:
133: //can only be called by ruler
134: //public final void setCreatorEMail (String eMail) {
135: //}
136:
137: //can only be called by ruler
138: //public final void setCreatorPublicKey (PublicKey publicKey) {
139: //}
140:
141: //can only be called by ruler
142: //public final void setName (String name) {
143: //}
144:
145: //can only be called by ruler
146: //public final void setVersion (String version) {
147: //}
148:
149: //can only be called by ruler
150: //public final void setInformation (Hashtable information) {
151: //}
152:
153: //can only be called by ruler
154: //public final void addInformation (String key, String keyValue) {
155: //}
156:
157: //public final void removeInformation (String key) {
158: //}
159:
160: //public void addObjectToLibrary (Class objectWorld) {
161: //}
162:
163: //public void removeObjectFromLibrary (Class objectWorld) {
164: //}
165:
166: //public void instanciateObjectFromLibrary (Class objectWorld, Avatar owner, Transform3D transform3D) {
167: //}
168:
169: //public void addSkinToLibrary (Class skin) {
170: //}
171:
172: //public void removeSkinFromLibrary (Class skin) {
173: //}
174:
175: //public void instanciateSkinFromLibrary (Class skin, Avatar owner) {
176: //}
177:
178: //public void addBackgroundToLibrary (Class backgroundWorld) {
179: //}
180:
181: //public void removeBackgroundFromLibrary (Class backgroundWorld) {
182: //}
183:
184: //public void instanciateBackgroundFromLibrary (Class backgroundWorld, Avatar owner, Bounds bounds) {
185: //}
186:
187: //public Collection queryWorldSpot(String filter) {
188: //}
189:
190: //public final Collection getObjectWorlds(Avatar user) {
191: //}
192:
193: //public final Collection getAvatars(Avatar user) {
194: //}
195:
196: //public final Collection getLands(Avatar user) {
197: //}
198:
199: //public final Collection getBackgroundWorlds(Avatar user) {
200: //}
201:
202: }
|