45 lines
1.3 KiB
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;
|
|
}
|
|
}
|
|
}
|
|
}
|