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; } } } }