blob: 31846c9690f39ba6034d715aed141170607cad99 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
package NET.worlds.network;
import java.util.Enumeration;
import java.util.Hashtable;
class ObjectMgr {
private Hashtable<String, NetworkObject> nFlongID = new Hashtable<String, NetworkObject>();
private Hashtable<Integer, String> lFshortID = new Hashtable<Integer, String>();
private Galaxy _galaxy;
ObjectMgr(Galaxy galaxy) {
this._galaxy = galaxy;
}
void regShortID(int shortID, String longID) {
this.lFshortID.put(new Integer(shortID), longID);
}
void regObject(String longID, NetworkObject obj) {
this.nFlongID.put(longID, obj);
}
void regObject(ObjID objID, NetworkObject obj) {
String longID = this.getLongID(objID);
this.nFlongID.put(longID, obj);
}
NetworkObject getObject(ObjID objID) {
String longID = this.getLongID(objID);
NetworkObject obj = this.nFlongID.get(longID);
if (obj == null) {
assert this._galaxy != null;
obj = this._galaxy.getObject(longID);
}
return obj;
}
void delObject(ObjID objID) {
String longID = this.getLongID(objID);
NetworkObject obj = this.nFlongID.get(longID);
assert obj != null;
this.nFlongID.remove(longID);
}
Enumeration<NetworkObject> objects() {
return this.nFlongID.elements();
}
void clear() {
this.nFlongID.clear();
this.nFlongID = new Hashtable<String, NetworkObject>();
this.lFshortID.clear();
this.lFshortID = new Hashtable<Integer, String>();
}
final String getLongID(ObjID objID) {
String longID;
if (objID.shortID() != 0) {
longID = this.lFshortID.get(new Integer(objID.shortID()));
} else {
longID = objID.longID();
}
return longID;
}
}
|