mirror of
https://github.com/BentoBoxWorld/BentoBox.git
synced 2024-11-28 13:45:14 +01:00
Fixed issue with adapter serializer
Serialize and deserialize were opposite In deserializing in flatfile db, there was an odd extra bit of code that undid the deserialization. I'm not sure why I put that in there and so I've commented it out for now.
This commit is contained in:
parent
6b6ec4c697
commit
53bd51e2f5
@ -138,11 +138,14 @@ public class FlatFileDatabaseHandler<T> extends AbstractDatabaseHandler<T> {
|
||||
Adapter adapterNotation = field.getAnnotation(Adapter.class);
|
||||
if (adapterNotation != null && AdapterInterface.class.isAssignableFrom(adapterNotation.value())) {
|
||||
// A conversion adapter has been defined
|
||||
// Get the original value
|
||||
Object value = config.get(storageLocation);
|
||||
method.invoke(instance, ((AdapterInterface<?,?>)adapterNotation.value().newInstance()).serialize(value));
|
||||
method.invoke(instance, ((AdapterInterface<?,?>)adapterNotation.value().newInstance()).deserialize(value));
|
||||
/*
|
||||
* I don't know what this part is for...
|
||||
if (value != null && !value.getClass().equals(MemorySection.class)) {
|
||||
method.invoke(instance, deserialize(value,propertyDescriptor.getPropertyType()));
|
||||
}
|
||||
}*/
|
||||
// We are done here
|
||||
continue;
|
||||
}
|
||||
@ -285,7 +288,7 @@ public class FlatFileDatabaseHandler<T> extends AbstractDatabaseHandler<T> {
|
||||
if (adapterNotation != null && AdapterInterface.class.isAssignableFrom(adapterNotation.value())) {
|
||||
// A conversion adapter has been defined
|
||||
try {
|
||||
config.set(storageLocation, ((AdapterInterface<?,?>)adapterNotation.value().newInstance()).deserialize(value));
|
||||
config.set(storageLocation, ((AdapterInterface<?,?>)adapterNotation.value().newInstance()).serialize(value));
|
||||
} catch (InstantiationException e) {
|
||||
plugin.logError("Could not instatiate adapter " + adapterNotation.value().getName() + " " + e.getMessage());
|
||||
}
|
||||
|
@ -15,12 +15,12 @@ public interface AdapterInterface<S,V> {
|
||||
* @param object - object
|
||||
* @return serialized object
|
||||
*/
|
||||
S serialize(Object object);
|
||||
S deserialize(Object object);
|
||||
|
||||
/**
|
||||
* Deserialize object
|
||||
* @param object
|
||||
* @return deserialized object
|
||||
*/
|
||||
V deserialize(Object object);
|
||||
V serialize(Object object);
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ public class FlagSerializer implements AdapterInterface<Map<Flag, Integer>, Map<
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public Map<Flag, Integer> serialize(Object object) {
|
||||
public Map<Flag, Integer> deserialize(Object object) {
|
||||
Map<Flag, Integer> result = new HashMap<>();
|
||||
if (object == null) {
|
||||
return result;
|
||||
@ -41,7 +41,7 @@ public class FlagSerializer implements AdapterInterface<Map<Flag, Integer>, Map<
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public Map<String, Integer> deserialize(Object object) {
|
||||
public Map<String, Integer> serialize(Object object) {
|
||||
Map<String, Integer> result = new HashMap<>();
|
||||
if (object == null) {
|
||||
return result;
|
||||
|
@ -9,7 +9,8 @@ public class PotionEffectListAdapter implements AdapterInterface<List<PotionEffe
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public List<PotionEffectType> serialize(Object from) {
|
||||
public List<PotionEffectType> deserialize(Object from) {
|
||||
System.out.println("DEBUG: Deserializing ");
|
||||
List<PotionEffectType> result = new ArrayList<>();
|
||||
if (from instanceof ArrayList) {
|
||||
for (String type: (ArrayList<String>)from) {
|
||||
@ -21,7 +22,7 @@ public class PotionEffectListAdapter implements AdapterInterface<List<PotionEffe
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public List<String> deserialize(Object to) {
|
||||
public List<String> serialize(Object to) {
|
||||
List<String> result = new ArrayList<>();
|
||||
if (to instanceof ArrayList) {
|
||||
for (PotionEffectType type: (ArrayList<PotionEffectType>)to) {
|
||||
|
Loading…
Reference in New Issue
Block a user