Working on the Pixel Game Library II
This commit is contained in:
parent
2c841d5c1b
commit
e6051bbc01
@ -37,7 +37,7 @@ import com.openeggbert.core.mod.ModIdentification;
|
|||||||
import com.openeggbert.core.screen.GameSpaceListScreen;
|
import com.openeggbert.core.screen.GameSpaceListScreen;
|
||||||
import com.openeggbert.core.screen.InitScreen;
|
import com.openeggbert.core.screen.InitScreen;
|
||||||
import com.pixelgamelibrary.storage.Storage;
|
import com.pixelgamelibrary.storage.Storage;
|
||||||
import com.pixelgamelibrary.storage.StorageImplementationLoader;
|
import com.pixelgamelibrary.backends.libgdx.storage.StorageFactory;
|
||||||
import com.openeggbert.core.configuration.OpenEggbertDisplayMode;
|
import com.openeggbert.core.configuration.OpenEggbertDisplayMode;
|
||||||
import com.pixelgamelibrary.Game;
|
import com.pixelgamelibrary.Game;
|
||||||
import com.openeggbert.core.utils.OpenEggbertUtils;
|
import com.openeggbert.core.utils.OpenEggbertUtils;
|
||||||
@ -90,7 +90,7 @@ public class OpenEggbertGame extends Game {
|
|||||||
|
|
||||||
public Storage getStorage() {
|
public Storage getStorage() {
|
||||||
if(storage == null) {
|
if(storage == null) {
|
||||||
this.storage = StorageImplementationLoader.getStorage();
|
this.storage = StorageFactory.getStorage();
|
||||||
}
|
}
|
||||||
return storage;
|
return storage;
|
||||||
}
|
}
|
||||||
|
@ -13,38 +13,19 @@
|
|||||||
// GNU General Public License for more details.
|
// GNU General Public License for more details.
|
||||||
//
|
//
|
||||||
// You should have received a copy of the GNU General Public License
|
// You should have received a copy of the GNU General Public License
|
||||||
// along with this program. If not, see
|
// along with this program. If not, see
|
||||||
// <https://www.gnu.org/licenses/> or write to the Free Software
|
// <https://www.gnu.org/licenses/> or write to the Free Software
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage;
|
package com.pixelgamelibrary.api;
|
||||||
|
|
||||||
import com.badlogic.gdx.utils.Base64Coder;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author robertvokac
|
* @author robertvokac
|
||||||
*/
|
*/
|
||||||
public class GdxStorageUtils {
|
public interface AppI {
|
||||||
|
void log(String msg);
|
||||||
|
void error(String msg);
|
||||||
|
void debug(String msg);
|
||||||
|
|
||||||
private GdxStorageUtils() {
|
|
||||||
//Not meant to be instantiated.
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String decodeBase64AsString(String string) {
|
|
||||||
return new String(decodeBase64AsByteArray(string));
|
|
||||||
}
|
|
||||||
|
|
||||||
public static byte[] decodeBase64AsByteArray(String string) {
|
|
||||||
return Base64Coder.decode(string);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String encodeToBase64(String string) {
|
|
||||||
return encodeToBase64(string.getBytes());
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String encodeToBase64(byte[] data) {
|
|
||||||
return String.valueOf(Base64Coder.encode(data));
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
@ -27,8 +27,9 @@ import com.pixelgamelibrary.Platform;
|
|||||||
*/
|
*/
|
||||||
public interface PixelBackend {
|
public interface PixelBackend {
|
||||||
|
|
||||||
void exit();
|
|
||||||
Platform getPlatform();
|
Platform getPlatform();
|
||||||
|
AppI app();
|
||||||
GraphicsI graphics();
|
GraphicsI graphics();
|
||||||
AudioI audio();
|
AudioI audio();
|
||||||
InputI input();
|
InputI input();
|
||||||
@ -36,5 +37,6 @@ public interface PixelBackend {
|
|||||||
AssetI asset();
|
AssetI asset();
|
||||||
StorageI storage();
|
StorageI storage();
|
||||||
UtilsI utils();
|
UtilsI utils();
|
||||||
|
void exit();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -19,10 +19,23 @@
|
|||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.api;
|
package com.pixelgamelibrary.api;
|
||||||
|
|
||||||
|
import com.badlogic.gdx.utils.Base64Coder;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author robertvokac
|
* @author robertvokac
|
||||||
*/
|
*/
|
||||||
public interface UtilsI {
|
public interface UtilsI {
|
||||||
XmlElement parseXml(String xmlString);
|
XmlElement parseXml(String xmlString);
|
||||||
|
default String decodeBase64AsString(String string) {
|
||||||
|
return new String(decodeBase64AsByteArray(string));
|
||||||
|
}
|
||||||
|
|
||||||
|
byte[] decodeBase64AsByteArray(String string);
|
||||||
|
|
||||||
|
default String encodeToBase64(String string) {
|
||||||
|
return encodeToBase64(string.getBytes());
|
||||||
|
}
|
||||||
|
|
||||||
|
String encodeToBase64(byte[] data);
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,57 @@
|
|||||||
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Pixel: Game library.
|
||||||
|
// Copyright (C) 2024 the original author or authors.
|
||||||
|
//
|
||||||
|
// This program is free software: you can redistribute it and/or
|
||||||
|
// modify it under the terms of the GNU General Public License
|
||||||
|
// as published by the Free Software Foundation, either version 3
|
||||||
|
// of the License, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// This program is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with this program. If not, see
|
||||||
|
// <https://www.gnu.org/licenses/> or write to the Free Software
|
||||||
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
package com.pixelgamelibrary.backends.libgdx;
|
||||||
|
|
||||||
|
import com.badlogic.gdx.Application;
|
||||||
|
import com.badlogic.gdx.Gdx;
|
||||||
|
import com.pixelgamelibrary.api.AppI;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author robertvokac
|
||||||
|
*/
|
||||||
|
public class AppLibGDXImpl implements AppI {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void log(String msg) {
|
||||||
|
Application app = Gdx.app;
|
||||||
|
if (app != null) {
|
||||||
|
Gdx.app.log(getClass().getName(), msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void error(String msg) {
|
||||||
|
|
||||||
|
Application app = Gdx.app;
|
||||||
|
if (app != null) {
|
||||||
|
Gdx.app.error(getClass().getName(), msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void debug(String msg) {
|
||||||
|
Application app = Gdx.app;
|
||||||
|
if (app != null) {
|
||||||
|
Gdx.app.debug(getClass().getName(), msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -24,6 +24,7 @@ import static com.badlogic.gdx.Application.ApplicationType.Desktop;
|
|||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
import com.pixelgamelibrary.PixelException;
|
import com.pixelgamelibrary.PixelException;
|
||||||
import com.pixelgamelibrary.Platform;
|
import com.pixelgamelibrary.Platform;
|
||||||
|
import com.pixelgamelibrary.api.AppI;
|
||||||
import com.pixelgamelibrary.api.AssetI;
|
import com.pixelgamelibrary.api.AssetI;
|
||||||
import com.pixelgamelibrary.api.AudioI;
|
import com.pixelgamelibrary.api.AudioI;
|
||||||
import com.pixelgamelibrary.api.GraphicsI;
|
import com.pixelgamelibrary.api.GraphicsI;
|
||||||
@ -39,6 +40,7 @@ import com.pixelgamelibrary.api.PixelBackend;
|
|||||||
*/
|
*/
|
||||||
public class PixelLibGDXBackend implements PixelBackend {
|
public class PixelLibGDXBackend implements PixelBackend {
|
||||||
|
|
||||||
|
private AppI pixelAppLibGdxImpl = null;
|
||||||
private GraphicsI pixelGraphicsLibGdxImpl = null;
|
private GraphicsI pixelGraphicsLibGdxImpl = null;
|
||||||
private AudioI pixelAudioLibGdxImpl = null;
|
private AudioI pixelAudioLibGdxImpl = null;
|
||||||
private InputI pixelInputLibGdxImpl = null;
|
private InputI pixelInputLibGdxImpl = null;
|
||||||
@ -128,4 +130,11 @@ public class PixelLibGDXBackend implements PixelBackend {
|
|||||||
}
|
}
|
||||||
return pixelUtilsLibGdxImpl; }
|
return pixelUtilsLibGdxImpl; }
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AppI app() {
|
||||||
|
if (pixelAppLibGdxImpl == null) {
|
||||||
|
pixelAppLibGdxImpl = new AppLibGDXImpl();
|
||||||
|
}
|
||||||
|
return pixelAppLibGdxImpl; }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.backends.libgdx;
|
package com.pixelgamelibrary.backends.libgdx;
|
||||||
|
|
||||||
|
import com.badlogic.gdx.utils.Base64Coder;
|
||||||
import com.badlogic.gdx.utils.XmlReader;
|
import com.badlogic.gdx.utils.XmlReader;
|
||||||
import com.pixelgamelibrary.api.XmlElement;
|
import com.pixelgamelibrary.api.XmlElement;
|
||||||
import com.pixelgamelibrary.api.UtilsI;
|
import com.pixelgamelibrary.api.UtilsI;
|
||||||
@ -36,6 +37,13 @@ public class UtilsLibGDXImpl implements UtilsI {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public byte[] decodeBase64AsByteArray(String string) {
|
||||||
|
return Base64Coder.decode(string);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String encodeToBase64(byte[] data) {
|
||||||
|
return String.valueOf(Base64Coder.encode(data));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
// <https://www.gnu.org/licenses/> or write to the Free Software
|
// <https://www.gnu.org/licenses/> or write to the Free Software
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage.filesystem;
|
package com.pixelgamelibrary.backends.libgdx.storage;
|
||||||
|
|
||||||
import com.pixelgamelibrary.Platform;
|
import com.pixelgamelibrary.Platform;
|
||||||
|
|
@ -17,7 +17,7 @@
|
|||||||
// <https://www.gnu.org/licenses/> or write to the Free Software
|
// <https://www.gnu.org/licenses/> or write to the Free Software
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage.filesystem;
|
package com.pixelgamelibrary.backends.libgdx.storage;
|
||||||
|
|
||||||
import com.pixelgamelibrary.Platform;
|
import com.pixelgamelibrary.Platform;
|
||||||
import com.pixelgamelibrary.storage.Storage;
|
import com.pixelgamelibrary.storage.Storage;
|
@ -17,7 +17,7 @@
|
|||||||
// <https://www.gnu.org/licenses/> or write to the Free Software
|
// <https://www.gnu.org/licenses/> or write to the Free Software
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage.filesystem;
|
package com.pixelgamelibrary.backends.libgdx.storage;
|
||||||
|
|
||||||
import com.pixelgamelibrary.Platform;
|
import com.pixelgamelibrary.Platform;
|
||||||
|
|
@ -17,9 +17,10 @@
|
|||||||
// <https://www.gnu.org/licenses/> or write to the Free Software
|
// <https://www.gnu.org/licenses/> or write to the Free Software
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage.map;
|
package com.pixelgamelibrary.backends.libgdx.storage;
|
||||||
|
|
||||||
import com.badlogic.gdx.Preferences;
|
import com.badlogic.gdx.Preferences;
|
||||||
|
import com.pixelgamelibrary.storage.map.SimpleMap;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
@ -17,22 +17,21 @@
|
|||||||
// <https://www.gnu.org/licenses/> or write to the Free Software
|
// <https://www.gnu.org/licenses/> or write to the Free Software
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage;
|
package com.pixelgamelibrary.backends.libgdx.storage;
|
||||||
|
|
||||||
import com.pixelgamelibrary.storage.map.WebGLStorage;
|
|
||||||
import com.pixelgamelibrary.storage.map.MemoryStorage;
|
import com.pixelgamelibrary.storage.map.MemoryStorage;
|
||||||
import com.pixelgamelibrary.storage.filesystem.AndroidStorage;
|
|
||||||
import com.pixelgamelibrary.storage.filesystem.DesktopStorage;
|
|
||||||
import com.pixelgamelibrary.Pixel;
|
import com.pixelgamelibrary.Pixel;
|
||||||
import com.pixelgamelibrary.Platform;
|
import com.pixelgamelibrary.Platform;
|
||||||
|
import com.pixelgamelibrary.storage.Storage;
|
||||||
|
import com.pixelgamelibrary.storage.StorageException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author robertvokac
|
* @author robertvokac
|
||||||
*/
|
*/
|
||||||
public class StorageImplementationLoader {
|
public class StorageFactory {
|
||||||
|
|
||||||
private StorageImplementationLoader() {
|
private StorageFactory() {
|
||||||
//Not meant to be instantiated.
|
//Not meant to be instantiated.
|
||||||
}
|
}
|
||||||
private static Storage storage = null;
|
private static Storage storage = null;
|
||||||
@ -55,7 +54,7 @@ public class StorageImplementationLoader {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (storage == null) {
|
if (storage == null) {
|
||||||
throw new GdxStorageException("Platform is not supported: " + platform);
|
throw new StorageException("Platform is not supported: " + platform);
|
||||||
}
|
}
|
||||||
return storage;
|
return storage;
|
||||||
}
|
}
|
@ -17,27 +17,32 @@
|
|||||||
// <https://www.gnu.org/licenses/> or write to the Free Software
|
// <https://www.gnu.org/licenses/> or write to the Free Software
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage.map;
|
package com.pixelgamelibrary.backends.libgdx.storage;
|
||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
import com.badlogic.gdx.Preferences;
|
import com.badlogic.gdx.Preferences;
|
||||||
import com.pixelgamelibrary.Platform;
|
import com.pixelgamelibrary.Platform;
|
||||||
|
import com.pixelgamelibrary.storage.map.MapStorage;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author robertvokac
|
* @author robertvokac
|
||||||
*/
|
*/
|
||||||
public class WebGLStorage extends MapStorage {
|
public class WebGLStorage extends MapStorage {
|
||||||
|
|
||||||
public Platform getPlatform() {
|
public Platform getPlatform() {
|
||||||
return Platform.WEB;
|
return Platform.WEB;
|
||||||
}
|
}
|
||||||
|
|
||||||
public WebGLStorage() {
|
public WebGLStorage() {
|
||||||
this("open-eggbert.webGL.Local-Storage");
|
this("pixel.libgdx.webGL.Local-Storage");
|
||||||
}
|
}
|
||||||
|
|
||||||
public WebGLStorage(String preferencesName) {
|
public WebGLStorage(String preferencesName) {
|
||||||
this(Gdx.app.getPreferences(preferencesName));
|
this(Gdx.app.getPreferences(preferencesName));
|
||||||
}
|
}
|
||||||
public WebGLStorage(Preferences preferences) {
|
|
||||||
|
public WebGLStorage(Preferences preferences) {
|
||||||
super(new SimpleLocalStorageMap(preferences));
|
super(new SimpleLocalStorageMap(preferences));
|
||||||
}
|
}
|
||||||
|
|
@ -19,13 +19,15 @@
|
|||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage;
|
package com.pixelgamelibrary.storage;
|
||||||
|
|
||||||
|
import com.pixelgamelibrary.PixelException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author robertvokac
|
* @author robertvokac
|
||||||
*/
|
*/
|
||||||
public class GdxStorageException extends RuntimeException {
|
public class StorageException extends PixelException {
|
||||||
|
|
||||||
public GdxStorageException(String string) {
|
public StorageException(String string) {
|
||||||
super(string);
|
super(string);
|
||||||
}
|
}
|
||||||
|
|
@ -19,7 +19,7 @@
|
|||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage.map;
|
package com.pixelgamelibrary.storage.map;
|
||||||
|
|
||||||
import com.pixelgamelibrary.storage.GdxStorageException;
|
import com.pixelgamelibrary.storage.StorageException;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -31,7 +31,7 @@ public enum MapFileType {
|
|||||||
|
|
||||||
public static MapFileType ofKey(String key, SimpleMap map) {
|
public static MapFileType ofKey(String key, SimpleMap map) {
|
||||||
if (!map.contains(key)) {
|
if (!map.contains(key)) {
|
||||||
throw new GdxStorageException("Map does not contain key: " + key);
|
throw new StorageException("Map does not contain key: " + key);
|
||||||
}
|
}
|
||||||
String value = map.getString(key);
|
String value = map.getString(key);
|
||||||
if (value.startsWith(FILE.name())) {
|
if (value.startsWith(FILE.name())) {
|
||||||
@ -40,7 +40,7 @@ public enum MapFileType {
|
|||||||
if (value.startsWith(DIRECTORY.name())) {
|
if (value.startsWith(DIRECTORY.name())) {
|
||||||
return DIRECTORY;
|
return DIRECTORY;
|
||||||
}
|
}
|
||||||
throw new GdxStorageException("Unsupported MapFileType for key in the map: " + key);
|
throw new StorageException("Unsupported MapFileType for key in the map: " + key);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,11 +19,10 @@
|
|||||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
package com.pixelgamelibrary.storage.map;
|
package com.pixelgamelibrary.storage.map;
|
||||||
|
|
||||||
import com.badlogic.gdx.Application;
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
|
import com.pixelgamelibrary.Pixel;
|
||||||
import com.pixelgamelibrary.Platform;
|
import com.pixelgamelibrary.Platform;
|
||||||
import com.pixelgamelibrary.storage.GdxStorageException;
|
import com.pixelgamelibrary.storage.StorageException;
|
||||||
import com.pixelgamelibrary.storage.GdxStorageUtils;
|
|
||||||
import com.pixelgamelibrary.storage.Storage;
|
import com.pixelgamelibrary.storage.Storage;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@ -83,13 +82,7 @@ public class MapStorage implements Storage {
|
|||||||
workingDirectory = absolutePath;
|
workingDirectory = absolutePath;
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
private static final String SLASH = "/";
|
private static final String SLASH = "/";
|
||||||
|
|
||||||
private void logError(String msg) {
|
|
||||||
Application app = Gdx.app;
|
|
||||||
if(app != null) Gdx.app.error(getClass().getName(), msg);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String mkdir(String path) {
|
public String mkdir(String path) {
|
||||||
@ -125,10 +118,10 @@ public class MapStorage implements Storage {
|
|||||||
private static String getParentPath(String path) {
|
private static String getParentPath(String path) {
|
||||||
// System.out.println("getParentPath()");
|
// System.out.println("getParentPath()");
|
||||||
if (path == null) {
|
if (path == null) {
|
||||||
throw new GdxStorageException("Path is null");
|
throw new StorageException("Path is null");
|
||||||
}
|
}
|
||||||
if (path.trim().isEmpty()) {
|
if (path.trim().isEmpty()) {
|
||||||
throw new GdxStorageException("Path is empty");
|
throw new StorageException("Path is empty");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (path.equals("/")) {
|
if (path.equals("/")) {
|
||||||
@ -219,10 +212,10 @@ public class MapStorage implements Storage {
|
|||||||
|
|
||||||
private String moveOrCp(String source, String target, boolean move, boolean cp) {
|
private String moveOrCp(String source, String target, boolean move, boolean cp) {
|
||||||
if (move && cp) {
|
if (move && cp) {
|
||||||
throw new GdxStorageException("move == true && cp == true");
|
throw new StorageException("move == true && cp == true");
|
||||||
}
|
}
|
||||||
if (!move && !cp) {
|
if (!move && !cp) {
|
||||||
throw new GdxStorageException("move != true && cp != true");
|
throw new StorageException("move != true && cp != true");
|
||||||
}
|
}
|
||||||
String absolutePathSource = convertToAbsolutePathIfNeeded(source);
|
String absolutePathSource = convertToAbsolutePathIfNeeded(source);
|
||||||
String absolutePathTarget = convertToAbsolutePathIfNeeded(target);
|
String absolutePathTarget = convertToAbsolutePathIfNeeded(target);
|
||||||
@ -288,7 +281,7 @@ public class MapStorage implements Storage {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
text = text.substring(BINARYFILE.length());
|
text = text.substring(BINARYFILE.length());
|
||||||
return GdxStorageUtils.decodeBase64AsByteArray(text);
|
return Pixel.get().utils().decodeBase64AsByteArray(text);
|
||||||
}
|
}
|
||||||
private static final String BINARYFILE = "BINARYFILE";
|
private static final String BINARYFILE = "BINARYFILE";
|
||||||
|
|
||||||
@ -299,7 +292,7 @@ public class MapStorage implements Storage {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String savebin(String name, byte[] data) {
|
public String savebin(String name, byte[] data) {
|
||||||
return savetext(name, BINARYFILE + GdxStorageUtils.encodeToBase64(data));
|
return savetext(name, BINARYFILE + Pixel.get().utils().encodeToBase64(data));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -344,4 +337,8 @@ public class MapStorage implements Storage {
|
|||||||
throw new UnsupportedOperationException("Not supported yet."); // Generated from nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedMethodBody
|
throw new UnsupportedOperationException("Not supported yet."); // Generated from nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedMethodBody
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void logError(String msg) {
|
||||||
|
Pixel.get().app().error(msg);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user