diff --git a/core/pom.xml b/core/pom.xml
index d4faf908..49496660 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -21,7 +21,17 @@
com.threerings
narya
- 1.17
+
+ 1.22
+
+
+
+ javax.annotation
+ jsr250-api
+ 1.0
+ provided
com.threerings
diff --git a/core/src/main/java/com/threerings/parlor/data/ChoiceParameter.java b/core/src/main/java/com/threerings/parlor/data/ChoiceParameter.java
index fe1085b7..b1ffc8a4 100644
--- a/core/src/main/java/com/threerings/parlor/data/ChoiceParameter.java
+++ b/core/src/main/java/com/threerings/parlor/data/ChoiceParameter.java
@@ -54,4 +54,26 @@ public class ChoiceParameter extends Parameter
{
return start;
}
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "ident", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "name", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "tip", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.ChoiceParameter.class, "choices", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.ChoiceParameter.class, "start", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "ident", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "name", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "tip", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.ChoiceParameter.class, "choices", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.ChoiceParameter.class, "start", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/parlor/data/RangeParameter.java b/core/src/main/java/com/threerings/parlor/data/RangeParameter.java
index 22722b40..2457188c 100644
--- a/core/src/main/java/com/threerings/parlor/data/RangeParameter.java
+++ b/core/src/main/java/com/threerings/parlor/data/RangeParameter.java
@@ -48,4 +48,28 @@ public class RangeParameter extends Parameter
{
return start;
}
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "ident", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "name", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "tip", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.RangeParameter.class, "minimum", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.RangeParameter.class, "maximum", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.RangeParameter.class, "start", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "ident", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "name", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "tip", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.RangeParameter.class, "minimum", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.RangeParameter.class, "maximum", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.RangeParameter.class, "start", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/parlor/data/Table.java b/core/src/main/java/com/threerings/parlor/data/Table.java
index 51642a11..b210640b 100644
--- a/core/src/main/java/com/threerings/parlor/data/Table.java
+++ b/core/src/main/java/com/threerings/parlor/data/Table.java
@@ -467,4 +467,30 @@ public class Table
/** On the server, the usernames that have been banned from this table. */
protected transient HashSet _bannedUsers;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Table.class, "tableId", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Table.class, "lobbyOid", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Table.class, "gameOid", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Table.class, "players", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Table.class, "watchers", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Table.class, "config", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Table.class, "tconfig", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Table.class, "tableId", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Table.class, "lobbyOid", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Table.class, "gameOid", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Table.class, "players", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Table.class, "watchers", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Table.class, "config", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Table.class, "tconfig", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/parlor/data/TableConfig.java b/core/src/main/java/com/threerings/parlor/data/TableConfig.java
index d92eebce..f8a6f26e 100644
--- a/core/src/main/java/com/threerings/parlor/data/TableConfig.java
+++ b/core/src/main/java/com/threerings/parlor/data/TableConfig.java
@@ -43,4 +43,24 @@ public class TableConfig extends SimpleStreamableObject
/** Whether the table is "private". */
public boolean privateTable;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.TableConfig.class, "desiredPlayerCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.TableConfig.class, "minimumPlayerCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.TableConfig.class, "teamMemberIndices", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.TableConfig.class, "privateTable", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.TableConfig.class, "desiredPlayerCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.TableConfig.class, "minimumPlayerCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.TableConfig.class, "teamMemberIndices", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.TableConfig.class, "privateTable", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/parlor/data/ToggleParameter.java b/core/src/main/java/com/threerings/parlor/data/ToggleParameter.java
index dd219e7f..addf3749 100644
--- a/core/src/main/java/com/threerings/parlor/data/ToggleParameter.java
+++ b/core/src/main/java/com/threerings/parlor/data/ToggleParameter.java
@@ -42,4 +42,24 @@ public class ToggleParameter extends Parameter
{
return start;
}
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "ident", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "name", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.Parameter.class, "tip", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.data.ToggleParameter.class, "start", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "ident", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "name", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.Parameter.class, "tip", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.data.ToggleParameter.class, "start", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/parlor/game/data/GameAI.java b/core/src/main/java/com/threerings/parlor/game/data/GameAI.java
index cd91d4e7..ae62ffdd 100644
--- a/core/src/main/java/com/threerings/parlor/game/data/GameAI.java
+++ b/core/src/main/java/com/threerings/parlor/game/data/GameAI.java
@@ -47,4 +47,20 @@ public class GameAI extends SimpleStreamableObject
this.personality = personality;
this.skill = skill;
}
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameAI.class, "personality", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameAI.class, "skill", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameAI.class, "personality", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameAI.class, "skill", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/parlor/game/data/GameObject.java b/core/src/main/java/com/threerings/parlor/game/data/GameObject.java
index f4661075..73824147 100644
--- a/core/src/main/java/com/threerings/parlor/game/data/GameObject.java
+++ b/core/src/main/java/com/threerings/parlor/game/data/GameObject.java
@@ -434,4 +434,32 @@ public class GameObject extends PlaceObject
this.playerStatus[index] = value;
}
// AUTO-GENERATED: METHODS END
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ super.readObject(ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameObject.class, "state", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameObject.class, "isRated", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameObject.class, "isPrivate", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameObject.class, "players", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameObject.class, "winners", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameObject.class, "sessionId", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.parlor.game.data.GameObject.class, "playerStatus", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ super.writeObject(out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameObject.class, "state", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameObject.class, "isRated", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameObject.class, "isPrivate", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameObject.class, "players", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameObject.class, "winners", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameObject.class, "sessionId", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.parlor.game.data.GameObject.class, "playerStatus", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/ByteByteStringMapStat.java b/core/src/main/java/com/threerings/stats/data/ByteByteStringMapStat.java
index 7a3df7f0..fc7d9d1e 100644
--- a/core/src/main/java/com/threerings/stats/data/ByteByteStringMapStat.java
+++ b/core/src/main/java/com/threerings/stats/data/ByteByteStringMapStat.java
@@ -59,4 +59,26 @@ public class ByteByteStringMapStat extends StringMapStat
{
return Byte.MAX_VALUE;
}
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_type", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modified", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.StringMapStat.class, "_keys", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.StringMapStat.class, "_values", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_type", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modified", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.StringMapStat.class, "_keys", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.StringMapStat.class, "_values", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/ByteStringSetStat.java b/core/src/main/java/com/threerings/stats/data/ByteStringSetStat.java
index 54f8d49b..e406afc4 100644
--- a/core/src/main/java/com/threerings/stats/data/ByteStringSetStat.java
+++ b/core/src/main/java/com/threerings/stats/data/ByteStringSetStat.java
@@ -50,4 +50,24 @@ public class ByteStringSetStat extends StringSetStat
_values[ii] = aux.getCodeString(_type, in.readByte());
}
}
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_type", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modified", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.StringSetStat.class, "_values", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_type", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modified", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.StringSetStat.class, "_values", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/IntArrayStat.java b/core/src/main/java/com/threerings/stats/data/IntArrayStat.java
index d94a8d47..8d6ce077 100644
--- a/core/src/main/java/com/threerings/stats/data/IntArrayStat.java
+++ b/core/src/main/java/com/threerings/stats/data/IntArrayStat.java
@@ -90,4 +90,24 @@ public class IntArrayStat extends Stat
/** Contains the integer list value of this statistic. */
protected int[] _value = new int[0];
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_type", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modified", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.IntArrayStat.class, "_value", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_type", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modified", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.IntArrayStat.class, "_value", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/IntSetStat.java b/core/src/main/java/com/threerings/stats/data/IntSetStat.java
index 87d8c7ce..97c6d370 100644
--- a/core/src/main/java/com/threerings/stats/data/IntSetStat.java
+++ b/core/src/main/java/com/threerings/stats/data/IntSetStat.java
@@ -118,4 +118,26 @@ public class IntSetStat extends SetStat
protected StreamableArrayIntSet _intSet = new StreamableArrayIntSet();
protected static final int MAX_MAX_SIZE = 255;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_type", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modified", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.IntSetStat.class, "_maxSize", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.IntSetStat.class, "_intSet", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_type", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modified", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.IntSetStat.class, "_maxSize", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.IntSetStat.class, "_intSet", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/IntSetStatAdder.java b/core/src/main/java/com/threerings/stats/data/IntSetStatAdder.java
index cc2eb910..681587a4 100644
--- a/core/src/main/java/com/threerings/stats/data/IntSetStatAdder.java
+++ b/core/src/main/java/com/threerings/stats/data/IntSetStatAdder.java
@@ -44,4 +44,20 @@ public class IntSetStatAdder extends StatModifier
}
protected int _value;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ super.readObject(ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.IntSetStatAdder.class, "_value", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ super.writeObject(out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.IntSetStatAdder.class, "_value", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/IntStat.java b/core/src/main/java/com/threerings/stats/data/IntStat.java
index ba3b5b80..6f92540e 100644
--- a/core/src/main/java/com/threerings/stats/data/IntStat.java
+++ b/core/src/main/java/com/threerings/stats/data/IntStat.java
@@ -86,4 +86,24 @@ public class IntStat extends Stat
/** Contains the integer value of this statistic. */
protected int _value;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_type", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modified", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.IntStat.class, "_value", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_type", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modified", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.IntStat.class, "_value", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/IntStatIncrementer.java b/core/src/main/java/com/threerings/stats/data/IntStatIncrementer.java
index 366c58a1..1b3c3f69 100644
--- a/core/src/main/java/com/threerings/stats/data/IntStatIncrementer.java
+++ b/core/src/main/java/com/threerings/stats/data/IntStatIncrementer.java
@@ -44,4 +44,20 @@ public class IntStatIncrementer extends StatModifier
}
protected int _delta;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ super.readObject(ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.IntStatIncrementer.class, "_delta", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ super.writeObject(out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.IntStatIncrementer.class, "_delta", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/IntStatMinimumer.java b/core/src/main/java/com/threerings/stats/data/IntStatMinimumer.java
index 5eb2685c..18fe9dfa 100644
--- a/core/src/main/java/com/threerings/stats/data/IntStatMinimumer.java
+++ b/core/src/main/java/com/threerings/stats/data/IntStatMinimumer.java
@@ -47,4 +47,20 @@ public class IntStatMinimumer extends StatModifier
}
protected int _minimum;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ super.readObject(ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.IntStatMinimumer.class, "_minimum", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ super.writeObject(out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.IntStatMinimumer.class, "_minimum", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/IntStringSetStat.java b/core/src/main/java/com/threerings/stats/data/IntStringSetStat.java
index b5a5bd19..2c7d30a1 100644
--- a/core/src/main/java/com/threerings/stats/data/IntStringSetStat.java
+++ b/core/src/main/java/com/threerings/stats/data/IntStringSetStat.java
@@ -50,4 +50,24 @@ public class IntStringSetStat extends StringSetStat
_values[ii] = aux.getCodeString(_type, in.readInt());
}
}
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_type", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modified", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.StringSetStat.class, "_values", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_type", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modified", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.StringSetStat.class, "_values", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/MaxIntStat.java b/core/src/main/java/com/threerings/stats/data/MaxIntStat.java
index f7ed2dad..89136647 100644
--- a/core/src/main/java/com/threerings/stats/data/MaxIntStat.java
+++ b/core/src/main/java/com/threerings/stats/data/MaxIntStat.java
@@ -80,4 +80,20 @@ public class MaxIntStat extends IntStat
/** The largest value ever accumulated to this stat. */
protected int _maxValue;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ super.readObject(ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.MaxIntStat.class, "_maxValue", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ super.writeObject(out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.MaxIntStat.class, "_maxValue", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/MaxValueIntStat.java b/core/src/main/java/com/threerings/stats/data/MaxValueIntStat.java
index 9e308ac6..cd4b2707 100644
--- a/core/src/main/java/com/threerings/stats/data/MaxValueIntStat.java
+++ b/core/src/main/java/com/threerings/stats/data/MaxValueIntStat.java
@@ -72,4 +72,20 @@ public class MaxValueIntStat extends IntStat
/** The largest value that this stat has been assigned. */
protected int _maxValue;
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ super.readObject(ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.MaxValueIntStat.class, "_maxValue", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ super.writeObject(out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.MaxValueIntStat.class, "_maxValue", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/ShortStringSetStat.java b/core/src/main/java/com/threerings/stats/data/ShortStringSetStat.java
index 576170cc..caa6f912 100644
--- a/core/src/main/java/com/threerings/stats/data/ShortStringSetStat.java
+++ b/core/src/main/java/com/threerings/stats/data/ShortStringSetStat.java
@@ -50,4 +50,24 @@ public class ShortStringSetStat extends StringSetStat
_values[ii] = aux.getCodeString(_type, in.readShort());
}
}
+
+ // from interface Streamable
+ public void readObject (com.threerings.io.ObjectInputStream ins)
+ throws java.io.IOException, java.lang.ClassNotFoundException
+ {
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_type", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modified", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.Stat.class, "_modCount", this, ins);
+ com.threerings.io.GenStreamUtil.readField(com.threerings.stats.data.StringSetStat.class, "_values", this, ins);
+ }
+
+ // from interface Streamable
+ public void writeObject (com.threerings.io.ObjectOutputStream out)
+ throws java.io.IOException
+ {
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_type", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modified", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.Stat.class, "_modCount", this, out);
+ com.threerings.io.GenStreamUtil.writeField(com.threerings.stats.data.StringSetStat.class, "_values", this, out);
+ }
}
diff --git a/core/src/main/java/com/threerings/stats/data/StatModifier.java b/core/src/main/java/com/threerings/stats/data/StatModifier.java
index a67715f8..8ea41896 100644
--- a/core/src/main/java/com/threerings/stats/data/StatModifier.java
+++ b/core/src/main/java/com/threerings/stats/data/StatModifier.java
@@ -61,7 +61,7 @@ public abstract class StatModifier
throws IOException
{
out.writeInt(_type.code());
- out.defaultWriteObject();
+
}
/** Reads our custom streamable fields. */
@@ -69,7 +69,7 @@ public abstract class StatModifier
throws IOException, ClassNotFoundException
{
_type = Stat.getType(in.readInt());
- in.defaultReadObject();
+
}
/**