Faction homes should no longer be lost if their target world isn't already loaded when Factions loads at server startup. This is done using a new lazy-load Location container class which only initializes the Location when it's actually needed.

This commit is contained in:
Brettflan
2012-03-14 13:06:38 -05:00
parent 7b9674dc4b
commit d8a39140fc
5 changed files with 128 additions and 32 deletions

View File

@@ -37,6 +37,7 @@ import com.massivecraft.factions.struct.FFlag;
import com.massivecraft.factions.struct.FPerm;
import com.massivecraft.factions.struct.Rel;
import com.massivecraft.factions.util.AutoLeaveTask;
import com.massivecraft.factions.util.LazyLocation;
import com.massivecraft.factions.zcore.MPlugin;
import com.massivecraft.factions.zcore.util.TextUtil;
@@ -131,7 +132,7 @@ public class P extends MPlugin
.setPrettyPrinting()
.disableHtmlEscaping()
.excludeFieldsWithModifiers(Modifier.TRANSIENT, Modifier.VOLATILE)
.registerTypeAdapter(Location.class, new LocationTypeAdapter())
.registerTypeAdapter(LazyLocation.class, new LocationTypeAdapter())
.registerTypeAdapter(mapFLocToStringSetType, new FLocToStringSetTypeAdapter())
.registerTypeAdapter(Rel.class, new RelTypeAdapter())
.registerTypeAdapter(FPerm.class, new FPermTypeAdapter())