strangedb/src/test/java/org/warp/jcwdb/tests/V2Class.java

45 lines
1.2 KiB
Java

package org.warp.jcwdb.tests;
import org.warp.jcwdb.EnhancedObject;
import org.warp.jcwdb.EnhancedObjectUpgrader;
import org.warp.jcwdb.database.IDatabaseTools;
import org.warp.jcwdb.annotations.DBClass;
import org.warp.jcwdb.annotations.DBDataType;
import org.warp.jcwdb.annotations.DBField;
import org.warp.jcwdb.annotations.DBPrimitiveField;
import org.warp.jcwdb.annotations.DBPrimitiveType;
import java.io.IOException;
@DBClass(version = 1)
public class V2Class extends EnhancedObject {
@DBPrimitiveField(id = 0, type = DBPrimitiveType.LONG)
public long field1;
@DBPrimitiveField(id = 1, type = DBPrimitiveType.INTEGER)
public int field2;
@DBField(id = 0, type = DBDataType.OBJECT)
public String field4;
public V2Class() {
}
public V2Class(IDatabaseTools databaseTools) throws IOException {
super(databaseTools);
}
@Override
public void onUpgrade(int oldObjectVersion, EnhancedObjectUpgrader enhancedObjectUpgrader) throws IOException {
switch (oldObjectVersion) {
case 0: {
field1 = (long) enhancedObjectUpgrader.getPrimitiveInt(2);
field2 = enhancedObjectUpgrader.getPrimitiveInt(0);
field4 = (String) enhancedObjectUpgrader.getField(0, DBDataType.OBJECT);
break;
}
}
}
}