strangedb/src/test/java/it/cavallium/strangedb/tests/V2Class.java

45 lines
1.3 KiB
Java

package it.cavallium.strangedb.tests;
import it.cavallium.strangedb.EnhancedObjectUpgrader;
import it.cavallium.strangedb.annotations.DbDataType;
import it.cavallium.strangedb.annotations.DbField;
import it.cavallium.strangedb.annotations.DbPrimitiveField;
import it.cavallium.strangedb.annotations.DbPrimitiveType;
import it.cavallium.strangedb.EnhancedObject;
import it.cavallium.strangedb.database.IDatabaseTools;
import it.cavallium.strangedb.annotations.DbClass;
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;
}
}
}
}