Improves the message generated when generating the folder for the compass data.

Outsources the encoding of the compass data into the file name
Written tests for the encoding
Did some internal cleaning of the class
This commit is contained in:
thatsIch
2015-05-28 20:01:21 +02:00
parent 7fc538fc99
commit d1e4ea6579
39 changed files with 1704 additions and 636 deletions
+4 -4
View File
@@ -1,6 +1,6 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
@@ -36,7 +36,7 @@ import appeng.api.networking.IMachineSet;
import appeng.api.networking.events.MENetworkEvent;
import appeng.api.networking.events.MENetworkPostCacheConstruction;
import appeng.api.util.IReadOnlyCollection;
import appeng.core.WorldSettings;
import appeng.core.worlddata.WorldData;
import appeng.hooks.TickHandler;
import appeng.util.ReadOnlyCollection;
@@ -166,7 +166,7 @@ public class Grid implements IGrid
{
if( this.myStorage == null )
{
this.myStorage = WorldSettings.getInstance().getNewGridStorage();
this.myStorage = WorldData.instance().storageData().getNewGridStorage();
this.myStorage.setGrid( this );
}
@@ -189,7 +189,7 @@ public class Grid implements IGrid
}
else if( this.myStorage == null )
{
this.myStorage = WorldSettings.getInstance().getNewGridStorage();
this.myStorage = WorldData.instance().storageData().getNewGridStorage();
this.myStorage.setGrid( this );
}
+6 -3
View File
@@ -1,6 +1,6 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
@@ -49,7 +49,7 @@ import appeng.api.networking.pathing.IPathingGrid;
import appeng.api.util.AEColor;
import appeng.api.util.DimensionalCoord;
import appeng.api.util.IReadOnlyCollection;
import appeng.core.WorldSettings;
import appeng.core.worlddata.WorldData;
import appeng.hooks.TickHandler;
import appeng.me.pathfinding.IPathItem;
import appeng.util.ReadOnlyCollection;
@@ -328,7 +328,10 @@ public class GridNode implements IGridNode, IPathItem
NBTTagCompound node = nodeData.getCompoundTag( name );
this.playerID = node.getInteger( "p" );
this.lastSecurityKey = node.getLong( "k" );
this.setGridStorage( WorldSettings.getInstance().getGridStorage( node.getLong( "g" ) ) );
final long storageID = node.getLong( "g" );
final GridStorage gridStorage = WorldData.instance().storageData().getGridStorage( storageID );
this.setGridStorage( gridStorage );
}
else
{
+3 -3
View File
@@ -1,6 +1,6 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
@@ -31,7 +31,7 @@ import net.minecraft.nbt.NBTTagCompound;
import appeng.api.networking.IGrid;
import appeng.api.networking.IGridStorage;
import appeng.core.AELog;
import appeng.core.WorldSettings;
import appeng.core.worlddata.WorldData;
public class GridStorage implements IGridStorage
@@ -157,6 +157,6 @@ public class GridStorage implements IGridStorage
public void remove()
{
WorldSettings.getInstance().destroyGridStorage( this.myID );
WorldData.instance().storageData().destroyGridStorage( this.myID );
}
}
+12 -3
View File
@@ -1,6 +1,6 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
@@ -24,6 +24,9 @@ import java.util.EnumSet;
import java.util.HashMap;
import java.util.List;
import com.google.common.base.Preconditions;
import com.mojang.authlib.GameProfile;
import net.minecraft.entity.player.EntityPlayer;
import appeng.api.config.SecurityPermissions;
@@ -35,7 +38,7 @@ import appeng.api.networking.events.MENetworkEventSubscribe;
import appeng.api.networking.events.MENetworkSecurityChange;
import appeng.api.networking.security.ISecurityGrid;
import appeng.api.networking.security.ISecurityProvider;
import appeng.core.WorldSettings;
import appeng.core.worlddata.WorldData;
import appeng.me.GridNode;
@@ -149,7 +152,13 @@ public class SecurityCache implements ISecurityGrid
@Override
public boolean hasPermission( EntityPlayer player, SecurityPermissions perm )
{
return this.hasPermission( player == null ? -1 : WorldSettings.getInstance().getPlayerID( player.getGameProfile() ), perm );
Preconditions.checkNotNull( player );
Preconditions.checkNotNull( perm );
final GameProfile profile = player.getGameProfile();
final int playerID = WorldData.instance().playerData().getPlayerID( profile );
return this.hasPermission( playerID, perm );
}
@Override
@@ -1,6 +1,6 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
@@ -22,6 +22,8 @@ package appeng.me.helpers;
import java.util.Collections;
import java.util.EnumSet;
import com.mojang.authlib.GameProfile;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
@@ -44,7 +46,7 @@ import appeng.api.networking.ticking.ITickManager;
import appeng.api.util.AEColor;
import appeng.api.util.DimensionalCoord;
import appeng.api.util.IOrientable;
import appeng.core.WorldSettings;
import appeng.core.worlddata.WorldData;
import appeng.hooks.TickHandler;
import appeng.me.GridAccessException;
import appeng.me.cache.P2PCache;
@@ -163,7 +165,10 @@ public class AENetworkProxy implements IGridBlock
}
else if( this.node != null && this.owner != null )
{
this.node.setPlayerID( WorldSettings.getInstance().getPlayerID( this.owner.getGameProfile() ) );
final GameProfile profile = this.owner.getGameProfile();
final int playerID = WorldData.instance().playerData().getPlayerID( profile );
this.node.setPlayerID( playerID );
this.owner = null;
}
}