Merge branch 'quality_assurance' of bitbucket.org:projectswg/holocore into quality_assurance

This commit is contained in:
Obique PSWG
2016-11-14 19:33:29 -06:00

View File

@@ -895,7 +895,7 @@ public abstract class SWGObject extends BaselineObject implements Comparable<SWG
@Override
public void save(NetBufferStream stream) {
stream.addByte(1);
stream.addByte(2);
location.save(stream);
stream.addBoolean(parent != null && parent.getClassification() != ObjectClassification.GENERATED);
if (parent != null && parent.getClassification() != ObjectClassification.GENERATED)
@@ -903,6 +903,8 @@ public abstract class SWGObject extends BaselineObject implements Comparable<SWG
stream.addAscii(permissions.name());
stream.addAscii(classification.name());
stream.addUnicode(objectName);
stringId.save(stream);
detailStringId.save(stream);
stream.addFloat(complexity);
stream.addFloat((float) prefLoadRange);
synchronized (attributes) {
@@ -924,6 +926,9 @@ public abstract class SWGObject extends BaselineObject implements Comparable<SWG
public void read(NetBufferStream stream) {
switch(stream.getByte()) {
case 2:
readVersion2(stream);
break;
case 1:
readVersion1(stream);
break;
@@ -933,6 +938,21 @@ public abstract class SWGObject extends BaselineObject implements Comparable<SWG
}
}
private void readVersion2(NetBufferStream stream) {
location.read(stream);
if (stream.getBoolean())
parent = SWGObjectFactory.create(stream);
permissions = ContainerPermissionsType.valueOf(stream.getAscii());
classification = ObjectClassification.valueOf(stream.getAscii());
objectName = stream.getUnicode();
stringId.read(stream);
detailStringId.read(stream);
complexity = stream.getFloat();
prefLoadRange = stream.getFloat();
stream.getList((i) -> attributes.put(stream.getAscii(), stream.getAscii()));
stream.getList((i) -> SWGObjectFactory.create(stream).moveToContainer(this));
}
private void readVersion1(NetBufferStream stream) {
location.read(stream);
if (stream.getBoolean())