diff --git a/android/build.gradle b/android/build.gradle index 75a45e7b94adb91202efe5d2c85922e72e61a510..8d2fc9da206a60294daafdc8229a4cbb06e8bf63 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -111,17 +111,7 @@ tasks.whenTaskAdded { compileTask -> File buildConfigFile = iter.next() String buildConfigContent = buildConfigFile.getText(BUILD_CONFIG_ENCODING) - /* - String checksums = ""; - rootProject.ext.assetsChecksum.each { key, value -> - if (checksums.length() > 0) { - checksums = checksums + ", "; - } - checksums = checksums + "\"${key}\", \"${value}\"" - } - */ - - buildConfigContent = buildConfigContent.replace(rootProject.ext.assetsChecksumPattern, '\"' + rootProject.ext.assetsChecksum.toString() + '\"') + buildConfigContent = buildConfigContent.replace(rootProject.ext.assetsChecksumPattern, '\"' + getMapConvertedToString(rootProject.ext.assetsChecksum) + '\"') buildConfigFile.write(buildConfigContent, BUILD_CONFIG_ENCODING) } } diff --git a/android/src/cz/nic/tablexia/android/AndroidLauncher.java b/android/src/cz/nic/tablexia/android/AndroidLauncher.java index 657703a6146c242090466cecaef483a4d3413347..b384eb2bd640342643ea9c8d5e56bb4e452634ef 100644 --- a/android/src/cz/nic/tablexia/android/AndroidLauncher.java +++ b/android/src/cz/nic/tablexia/android/AndroidLauncher.java @@ -21,7 +21,7 @@ public class AndroidLauncher extends AndroidApplication { getResources().getConfiguration().locale, BuildConfig.VERSION_NAME, SQL_CONNECTION_TYPE, - Utility.createChecksumMapFromString(BuildConfig.ASSETS_CHECKSUMS, ":"), + Utility.createChecksumMapFromString(BuildConfig.ASSETS_CHECKSUMS), savedInstanceState == null), config); } } diff --git a/build.gradle b/build.gradle index a34f0a089afd6898feda305bdf84b39595dba5f4..48a3fdb701a2b5690c2e49c1a90c0b7519ea8312 100644 --- a/build.gradle +++ b/build.gradle @@ -68,6 +68,15 @@ def getVersionCodeFromGit() { return stdout.toString().trim().toInteger() } +def getMapConvertedToString(Map map) { + String result = ""; + map.each { key, value -> + if (result.size() > 0) result = result + "," + result = result + "$key:$value" + } + return result; +} + task zipAssets(type:Zip) { outputs.upToDateWhen { false } new File(project(":core").projectDir.absolutePath + "/assets").eachDir() { dir -> diff --git a/core/src/cz/nic/tablexia/TablexiaStorage.java b/core/src/cz/nic/tablexia/TablexiaStorage.java index 3ee38a3ba210053eb79ce2331a786d6aa2d71532..addb3f1e3e56d75d26226899eb9f62b1bce8c796 100644 --- a/core/src/cz/nic/tablexia/TablexiaStorage.java +++ b/core/src/cz/nic/tablexia/TablexiaStorage.java @@ -1,13 +1,13 @@ package cz.nic.tablexia; -import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.files.FileHandle; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; -import cz.nic.tablexia.loader.TablexiaAssetManager; +import cz.nic.tablexia.loader.TablexiaAbstractFileManager; import cz.nic.tablexia.util.Log; /** @@ -15,8 +15,8 @@ import cz.nic.tablexia.util.Log; */ public class TablexiaStorage { - public static final String DATABASE_DIRECTORY = Gdx.files.getExternalStoragePath() + TablexiaAssetManager.StorageType.EXTERNAL.getStoragePath(); - public static final String DATABASE_NAME = "tablexia.db"; + public static final FileHandle DATABASE_DIRECTORY = TablexiaAbstractFileManager.getFileStoragePathFileHandle(TablexiaAbstractFileManager.DataStorageType.EXTERNAL); + public static final String DATABASE_NAME = "tablexia.db"; private static TablexiaStorage instance = null; private Connection connection = null; @@ -27,9 +27,12 @@ public class TablexiaStorage { static void init(Tablexia.SQLConnectionType connectionType) { if (instance == null) { + if (!DATABASE_DIRECTORY.exists()) { + DATABASE_DIRECTORY.mkdirs(); + } try { Class.forName(connectionType.getDriver()); - Connection connection = DriverManager.getConnection(connectionType.getConnectionString() + DATABASE_DIRECTORY + "/" + DATABASE_NAME); + Connection connection = DriverManager.getConnection(connectionType.getConnectionString() + DATABASE_DIRECTORY.file().getAbsolutePath() + "/" + DATABASE_NAME); instance = new TablexiaStorage(connection); } catch (ClassNotFoundException e) { Log.err(TablexiaStorage.class, "Cannot find class for database driver!", e); diff --git a/core/src/cz/nic/tablexia/loader/TablexiaAbstractFileManager.java b/core/src/cz/nic/tablexia/loader/TablexiaAbstractFileManager.java new file mode 100644 index 0000000000000000000000000000000000000000..fadf174d4164c6d2609d3e050788083c8d047407 --- /dev/null +++ b/core/src/cz/nic/tablexia/loader/TablexiaAbstractFileManager.java @@ -0,0 +1,124 @@ +package cz.nic.tablexia.loader; + +import com.badlogic.gdx.assets.AssetManager; +import com.badlogic.gdx.assets.loaders.FileHandleResolver; +import com.badlogic.gdx.assets.loaders.resolvers.ExternalFileHandleResolver; +import com.badlogic.gdx.assets.loaders.resolvers.InternalFileHandleResolver; +import com.badlogic.gdx.files.FileHandle; + +import cz.nic.tablexia.util.Log; + +public abstract class TablexiaAbstractFileManager extends AssetManager { + + public interface StorageType { + String getStoragePath(); + FileHandleResolver getResolver(); + } + + public enum RootStorageType implements StorageType { + + INTERNAL("", new InternalFileHandleResolver()), + EXTERNAL(RootStorageType.TABLEXIA_DIRECTORY, new ExternalFileHandleResolver()); + + public static final String TABLEXIA_DIRECTORY = ".tablexia/"; + + private String storagePath; + private FileHandleResolver resolver; + + RootStorageType(String storagePath, FileHandleResolver resolver) { + this.storagePath = storagePath; + this.resolver = resolver; + } + + public String getStoragePath() { + return storagePath; + } + + public FileHandleResolver getResolver() { + return resolver; + } + } + + public enum AssetsStorageType implements StorageType { + + INTERNAL(RootStorageType.INTERNAL, ""), + EXTERNAL(RootStorageType.EXTERNAL, AssetsStorageType.ASSETS_DIRECTORY); + + public static final String ASSETS_DIRECTORY = "assets/"; + + private String storagePath; + private FileHandleResolver resolver; + + AssetsStorageType(RootStorageType rootStorageType, String assetsPath) { + this.storagePath = rootStorageType.getStoragePath() + assetsPath; + this.resolver = rootStorageType.getResolver(); + } + + public String getStoragePath() { + return storagePath; + } + + public FileHandleResolver getResolver() { + return resolver; + } + } + + public enum DataStorageType implements StorageType { + + INTERNAL(RootStorageType.INTERNAL, DataStorageType.DATA_DIRECTORY), + EXTERNAL(RootStorageType.EXTERNAL, DataStorageType.DATA_DIRECTORY); + + public static final String DATA_DIRECTORY = "data/"; + + private String storagePath; + private FileHandleResolver resolver; + + DataStorageType(RootStorageType rootStorageType, String assetsPath) { + this.storagePath = rootStorageType.getStoragePath() + assetsPath; + this.resolver = rootStorageType.getResolver(); + } + + public String getStoragePath() { + return storagePath; + } + + public FileHandleResolver getResolver() { + return resolver; + } + } + + public static FileHandle getFileStoragePathFileHandle(StorageType storageType, String additionalPath) { + return storageType.getResolver().resolve(storageType.getStoragePath() + additionalPath); + } + + public static FileHandle getFileStoragePathFileHandle(StorageType storageType) { + return getFileStoragePathFileHandle(storageType, ""); + } + + public static String getFileStoragePath(StorageType storageType, String additionalPath) { + return getFileStoragePathFileHandle(storageType, additionalPath).file().getAbsolutePath(); + } + + public static String getFileStoragePath(StorageType storageType) { + return getFileStoragePathFileHandle(storageType).file().getAbsolutePath(); + } + + private final StorageType storageType; + + public TablexiaAbstractFileManager(StorageType storageType) { + super(storageType.getResolver()); + this.storageType = storageType; + } + + public <T> void loadAsset(String assetFileName, Class<T> clazz) { + if (assetFileName != null) { + load(storageType.getStoragePath() + assetFileName, clazz); + } else { + Log.err(getClass(), "Asset file for name: " + assetFileName + " was not found!"); + } + } + + public <T> T getAsset(String assetName, Class<T> clazz) { + return get(storageType.getStoragePath() + assetName, clazz); + } +} diff --git a/core/src/cz/nic/tablexia/loader/TablexiaAssetManager.java b/core/src/cz/nic/tablexia/loader/TablexiaAssetManager.java deleted file mode 100644 index 82f56fe1feb1f1a486b1ed7f866e01b62918ca0b..0000000000000000000000000000000000000000 --- a/core/src/cz/nic/tablexia/loader/TablexiaAssetManager.java +++ /dev/null @@ -1,52 +0,0 @@ -package cz.nic.tablexia.loader; - -import com.badlogic.gdx.assets.AssetManager; -import com.badlogic.gdx.assets.loaders.FileHandleResolver; -import com.badlogic.gdx.assets.loaders.resolvers.ExternalFileHandleResolver; -import com.badlogic.gdx.assets.loaders.resolvers.InternalFileHandleResolver; - -import cz.nic.tablexia.util.Log; - -public class TablexiaAssetManager extends AssetManager { - - public enum StorageType { - - INTERNAL("", new InternalFileHandleResolver()), - EXTERNAL(".tablexia/", new ExternalFileHandleResolver()); - - private String storagePath; - private FileHandleResolver resolver; - - StorageType(String storagePath, FileHandleResolver resolver) { - this.storagePath = storagePath; - this.resolver = resolver; - } - - public String getStoragePath() { - return storagePath; - } - - public FileHandleResolver getResolver() { - return resolver; - } - } - - private final StorageType storageType; - - protected TablexiaAssetManager(StorageType storageType) { - super(storageType.getResolver()); - this.storageType = storageType; - } - - public <T> void loadAsset(String assetFileName, Class<T> clazz) { - if (assetFileName != null) { - load(storageType.getStoragePath() + assetFileName, clazz); - } else { - Log.err(getClass(), "Asset file for name: " + assetFileName + " was not found!"); - } - } - - public <T> T getAsset(String assetName, Class<T> clazz) { - return get(storageType.getStoragePath() + assetName, clazz); - } -} diff --git a/core/src/cz/nic/tablexia/loader/TablexiaSoundManager.java b/core/src/cz/nic/tablexia/loader/TablexiaSoundManager.java index 595e1a4767a8a7424421b1593eadcd916451ac99..807e00da7bf9124ad7e16146d56eb967a6023707 100644 --- a/core/src/cz/nic/tablexia/loader/TablexiaSoundManager.java +++ b/core/src/cz/nic/tablexia/loader/TablexiaSoundManager.java @@ -2,9 +2,13 @@ package cz.nic.tablexia.loader; import com.badlogic.gdx.audio.Sound; -public class TablexiaSoundManager extends TablexiaAssetManager { +public class TablexiaSoundManager extends TablexiaAbstractFileManager { - public TablexiaSoundManager(StorageType storageType) { + public TablexiaSoundManager() { + super(AssetsStorageType.EXTERNAL); + } + + public TablexiaSoundManager(AssetsStorageType storageType) { super(storageType); } diff --git a/core/src/cz/nic/tablexia/loader/TablexiaTextureManager.java b/core/src/cz/nic/tablexia/loader/TablexiaTextureManager.java index b1c3952a8e4233c0ed48bb23f3257a3d9da1d4c7..36a26d1fa61008a1e5362a2934ce1bc158cbd8c5 100644 --- a/core/src/cz/nic/tablexia/loader/TablexiaTextureManager.java +++ b/core/src/cz/nic/tablexia/loader/TablexiaTextureManager.java @@ -2,9 +2,13 @@ package cz.nic.tablexia.loader; import com.badlogic.gdx.graphics.Texture; -public class TablexiaTextureManager extends TablexiaAssetManager { +public class TablexiaTextureManager extends TablexiaAbstractFileManager { - public TablexiaTextureManager(StorageType storageType) { + public TablexiaTextureManager() { + super(AssetsStorageType.EXTERNAL); + } + + public TablexiaTextureManager(AssetsStorageType storageType) { super(storageType); } diff --git a/core/src/cz/nic/tablexia/loader/application/ApplicationSoundManager.java b/core/src/cz/nic/tablexia/loader/application/ApplicationSoundManager.java index 8b1dfbbad1bb42b7e41c36a67527a260a25d15ee..a9529aa38fc0b8d1ad298673aa08a4dc1add05ff 100644 --- a/core/src/cz/nic/tablexia/loader/application/ApplicationSoundManager.java +++ b/core/src/cz/nic/tablexia/loader/application/ApplicationSoundManager.java @@ -8,9 +8,7 @@ public class ApplicationSoundManager extends TablexiaSoundManager implements IAp private static ApplicationSoundManager instance; - private ApplicationSoundManager() { - super(StorageType.EXTERNAL); - } + private ApplicationSoundManager() {} public static ApplicationSoundManager getInstance() { if (instance == null) { @@ -25,11 +23,11 @@ public class ApplicationSoundManager extends TablexiaSoundManager implements IAp instance = null; } - private static final String APPLICATION_PATH = "application/"; + private static final String APPLICATION_PATH = "application/"; - private static final String MAINMENU_PATH = APPLICATION_PATH + "mainmenu/"; - public static final String MAINMENU_OPEN = MAINMENU_PATH + "mainmenu_open.mp3"; - public static final String MAINMENU_CLOSE = MAINMENU_PATH + "mainmenu_close.mp3"; + private static final String MAINMENU_PATH = APPLICATION_PATH + "mainmenu/"; + public static final String MAINMENU_OPEN = MAINMENU_PATH + "mainmenu_open.mp3"; + public static final String MAINMENU_CLOSE = MAINMENU_PATH + "mainmenu_close.mp3"; public void load() { loadSound(MAINMENU_OPEN); diff --git a/core/src/cz/nic/tablexia/loader/application/ApplicationTextureManager.java b/core/src/cz/nic/tablexia/loader/application/ApplicationTextureManager.java index 4f30cf7e5ec65ae96af6395ed5f0b47d50958e0a..aef903ffbc6518024e8f63f224b813dadb8e7300 100644 --- a/core/src/cz/nic/tablexia/loader/application/ApplicationTextureManager.java +++ b/core/src/cz/nic/tablexia/loader/application/ApplicationTextureManager.java @@ -8,9 +8,7 @@ public class ApplicationTextureManager extends TablexiaTextureManager implements private static ApplicationTextureManager instance; - private ApplicationTextureManager() { - super(StorageType.EXTERNAL); - } + private ApplicationTextureManager() {} public static ApplicationTextureManager getInstance() { if (instance == null) { @@ -29,10 +27,10 @@ public class ApplicationTextureManager extends TablexiaTextureManager implements public static final String BACKGROUND_WOODEN = "universal/background_wooden.png"; } - private static final String APPLICATION_PATH = "application/"; + private static final String APPLICATION_PATH = "application/"; - private static final String MAINMENU_PATH = APPLICATION_PATH + "mainmenu/"; - public static final String MAINMENU_BACKGROUND = MAINMENU_PATH + "background.png"; + private static final String MAINMENU_PATH = APPLICATION_PATH + "mainmenu/"; + public static final String MAINMENU_BACKGROUND = MAINMENU_PATH + "background.png"; public void load() { loadTexture(MAINMENU_BACKGROUND); diff --git a/core/src/cz/nic/tablexia/loader/zip/ZipAssetLoader.java b/core/src/cz/nic/tablexia/loader/zip/ZipAssetLoader.java index cc64aca516562499fb2f3e314e4e6052e226582e..af23146cf11c00fe5bc4384d682809f9844d93b1 100644 --- a/core/src/cz/nic/tablexia/loader/zip/ZipAssetLoader.java +++ b/core/src/cz/nic/tablexia/loader/zip/ZipAssetLoader.java @@ -1,6 +1,5 @@ package cz.nic.tablexia.loader.zip; -import com.badlogic.gdx.Gdx; import com.badlogic.gdx.files.FileHandle; import com.badlogic.gdx.utils.async.AsyncTask; @@ -17,7 +16,7 @@ import java.util.zip.ZipInputStream; import cz.nic.tablexia.checksum.Checksum; import cz.nic.tablexia.loader.IApplicationLoader; -import cz.nic.tablexia.loader.TablexiaAssetManager; +import cz.nic.tablexia.loader.TablexiaAbstractFileManager; import cz.nic.tablexia.loader.TablexiaDataManager; import cz.nic.tablexia.util.Log; @@ -29,13 +28,13 @@ import cz.nic.tablexia.util.Log; */ public class ZipAssetLoader extends TablexiaDataManager<Void> implements IApplicationLoader { - public static final TablexiaAssetManager.StorageType ZIP_FILES_STORAGE_TYPE = TablexiaAssetManager.StorageType.INTERNAL; - public static final String ZIP_FILE_EXTENSION = ".zip"; - public static final String COMMON_ZIP_FILE_NAME = "common"; + public static final TablexiaAbstractFileManager.RootStorageType ZIP_FILES_STORAGE_TYPE = TablexiaAbstractFileManager.RootStorageType.INTERNAL; + public static final String ZIP_FILE_EXTENSION = ".zip"; + public static final String COMMON_ZIP_FILE_NAME = "common"; private static class ZipAssetLoaderTask implements AsyncTask<Void> { - private Locale locale; + private Locale locale; private Map<String, String> buildChecksum; public ZipAssetLoaderTask(Locale locale, Map<String, String> buildChecksum) { @@ -66,14 +65,14 @@ public class ZipAssetLoader extends TablexiaDataManager<Void> implements IApplic String commonZipFile = COMMON_ZIP_FILE_NAME + ZIP_FILE_EXTENSION; String localisedZipFile = language + ZIP_FILE_EXTENSION; - String extractDestinationDirectory = Gdx.files.getExternalStoragePath() + TablexiaAssetManager.StorageType.EXTERNAL.getStoragePath(); + String extractDestinationDirectory = TablexiaAbstractFileManager.getFileStoragePath(TablexiaAbstractFileManager.AssetsStorageType.EXTERNAL); if (buildChecksum == null || !checkAssets(buildChecksum.get(language), extractDestinationDirectory)) { - Log.info(getClass(), "Assets check FAILED! --> Extracting new assets"); + Log.info(getClass(), "Assets check FAILED! --> Extracting new assets to: " + extractDestinationDirectory); unzip(ZIP_FILES_STORAGE_TYPE.getResolver().resolve(ZIP_FILES_STORAGE_TYPE.getStoragePath() + commonZipFile), extractDestinationDirectory); unzip(ZIP_FILES_STORAGE_TYPE.getResolver().resolve(ZIP_FILES_STORAGE_TYPE.getStoragePath() + localisedZipFile), extractDestinationDirectory); } else { - Log.info(getClass(), "Assets check OK!"); + Log.info(getClass(), "Assets check OK! --> Continue to loading"); } return null; diff --git a/core/src/cz/nic/tablexia/screen/AbstractAutoloadTablexiaScreen.java b/core/src/cz/nic/tablexia/screen/AbstractAutoloadTablexiaScreen.java index d1fb37fcad54e915783ab702bb4f5822732b8feb..f6631fe85f6ca164c29baa0987fb22d914350b34 100644 --- a/core/src/cz/nic/tablexia/screen/AbstractAutoloadTablexiaScreen.java +++ b/core/src/cz/nic/tablexia/screen/AbstractAutoloadTablexiaScreen.java @@ -7,7 +7,7 @@ import com.badlogic.gdx.graphics.Texture; import java.util.List; -import cz.nic.tablexia.loader.TablexiaAssetManager; +import cz.nic.tablexia.loader.TablexiaAbstractFileManager; import cz.nic.tablexia.util.assetmanager.DirectoryAsset; /** @@ -30,7 +30,7 @@ public class AbstractAutoloadTablexiaScreen<T> extends AbstractLinearTextureTabl initAssets(basePath); } - public AbstractAutoloadTablexiaScreen(boolean hasState, boolean loadAsync, TablexiaAssetManager.StorageType storageType, String basePath) { + public AbstractAutoloadTablexiaScreen(boolean hasState, boolean loadAsync, TablexiaAbstractFileManager.AssetsStorageType storageType, String basePath) { super(hasState, loadAsync, storageType); initAssets(basePath); } @@ -70,6 +70,6 @@ public class AbstractAutoloadTablexiaScreen<T> extends AbstractLinearTextureTabl } public Music getMusic(String musicName) { - return Gdx.audio.newMusic(Gdx.files.external(TablexiaAssetManager.StorageType.EXTERNAL.getStoragePath() + musicAssets.get(musicName))); + return Gdx.audio.newMusic(Gdx.files.external(TablexiaAbstractFileManager.RootStorageType.EXTERNAL.getStoragePath() + musicAssets.get(musicName))); } } diff --git a/core/src/cz/nic/tablexia/screen/AbstractLinearTextureTablexiaScreen.java b/core/src/cz/nic/tablexia/screen/AbstractLinearTextureTablexiaScreen.java index 10de67bb0cb3964996a45d1e2acf3ff48cd42b48..a2c9eb04422999abdccbe6d294c3b057f02417ff 100644 --- a/core/src/cz/nic/tablexia/screen/AbstractLinearTextureTablexiaScreen.java +++ b/core/src/cz/nic/tablexia/screen/AbstractLinearTextureTablexiaScreen.java @@ -2,7 +2,7 @@ package cz.nic.tablexia.screen; import com.badlogic.gdx.graphics.Texture; -import cz.nic.tablexia.loader.TablexiaAssetManager; +import cz.nic.tablexia.loader.TablexiaAbstractFileManager; /** * Created by lhoracek on 4/8/15. @@ -11,7 +11,7 @@ public class AbstractLinearTextureTablexiaScreen<T> extends AbstractTablexiaScre public AbstractLinearTextureTablexiaScreen() { } - public AbstractLinearTextureTablexiaScreen(boolean hasState, boolean loadAsync, TablexiaAssetManager.StorageType storageType) { + public AbstractLinearTextureTablexiaScreen(boolean hasState, boolean loadAsync, TablexiaAbstractFileManager.AssetsStorageType storageType) { super(hasState, loadAsync, storageType); } diff --git a/core/src/cz/nic/tablexia/screen/AbstractTablexiaScreen.java b/core/src/cz/nic/tablexia/screen/AbstractTablexiaScreen.java index 66131df18860ff40f227dd7ffceec1249a6d5168..bb3c4dd566ee7dec085ca0bf9567b1c468331aa8 100644 --- a/core/src/cz/nic/tablexia/screen/AbstractTablexiaScreen.java +++ b/core/src/cz/nic/tablexia/screen/AbstractTablexiaScreen.java @@ -22,7 +22,7 @@ import cz.nic.tablexia.TablexiaSettings; import cz.nic.tablexia.bus.ApplicationBus; import cz.nic.tablexia.bus.ApplicationBus.ApplicationEvent; import cz.nic.tablexia.bus.event.MainMenuPositionChangedEvent; -import cz.nic.tablexia.loader.TablexiaAssetManager; +import cz.nic.tablexia.loader.TablexiaAbstractFileManager; import cz.nic.tablexia.loader.TablexiaDataManager; import cz.nic.tablexia.loader.TablexiaSoundManager; import cz.nic.tablexia.loader.TablexiaTextureManager; @@ -112,10 +112,10 @@ public abstract class AbstractTablexiaScreen<T> extends ScreenAdapter { public AbstractTablexiaScreen() { - this(true, true, TablexiaAssetManager.StorageType.EXTERNAL); + this(true, true, TablexiaAbstractFileManager.AssetsStorageType.EXTERNAL); } - public AbstractTablexiaScreen(boolean hasState, boolean loadAsync, TablexiaAssetManager.StorageType storageType) { + public AbstractTablexiaScreen(boolean hasState, boolean loadAsync, TablexiaAbstractFileManager.AssetsStorageType storageType) { stage = prepareStage(); this.hasState = hasState; this.loadAsync = loadAsync; diff --git a/core/src/cz/nic/tablexia/screen/loader/LoaderScreen.java b/core/src/cz/nic/tablexia/screen/loader/LoaderScreen.java index fb109569655ae98a669535bc6fd1b073c90b45ff..5ab0182c765b4c1a49feeacaf317eb535a216602 100644 --- a/core/src/cz/nic/tablexia/screen/loader/LoaderScreen.java +++ b/core/src/cz/nic/tablexia/screen/loader/LoaderScreen.java @@ -4,14 +4,10 @@ import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.scenes.scene2d.actions.Actions; import com.badlogic.gdx.scenes.scene2d.ui.Image; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; import java.util.List; import cz.nic.tablexia.TablexiaSettings; -import cz.nic.tablexia.TablexiaStorage; -import cz.nic.tablexia.loader.TablexiaAssetManager; +import cz.nic.tablexia.loader.TablexiaAbstractFileManager; import cz.nic.tablexia.screen.AbstractLinearTextureTablexiaScreen; public class LoaderScreen extends AbstractLinearTextureTablexiaScreen<Void> { @@ -21,7 +17,7 @@ public class LoaderScreen extends AbstractLinearTextureTablexiaScreen<Void> { private static final String LOADER_BIG_HAND = "gfx/screen_loader_bighand.png"; public LoaderScreen() { - super(false, false, TablexiaAssetManager.StorageType.INTERNAL); + super(false, false, TablexiaAbstractFileManager.AssetsStorageType.INTERNAL); } @Override diff --git a/core/src/cz/nic/tablexia/screen/viewport/FullscreenImageDebugScreen.java b/core/src/cz/nic/tablexia/screen/viewport/FullscreenImageDebugScreen.java index 62d64ab7a0eeaa9b14075ec63589e971306a25d8..cf97cd2fac05937feb990381d5ba5eb1ade8d13e 100644 --- a/core/src/cz/nic/tablexia/screen/viewport/FullscreenImageDebugScreen.java +++ b/core/src/cz/nic/tablexia/screen/viewport/FullscreenImageDebugScreen.java @@ -6,7 +6,7 @@ import com.badlogic.gdx.scenes.scene2d.ui.Image; import java.util.List; -import cz.nic.tablexia.loader.TablexiaAssetManager; +import cz.nic.tablexia.loader.TablexiaAbstractFileManager; import cz.nic.tablexia.screen.AbstractTablexiaScreen; public class FullscreenImageDebugScreen extends AbstractTablexiaScreen<Void> { @@ -16,7 +16,7 @@ public class FullscreenImageDebugScreen extends AbstractTablexiaScreen<Void> { private static final String LOADER_BIG_HAND = "gfx/screen_loader_bighand.png"; public FullscreenImageDebugScreen() { - super(false, false, TablexiaAssetManager.StorageType.INTERNAL); + super(false, false, TablexiaAbstractFileManager.AssetsStorageType.INTERNAL); } @Override diff --git a/core/src/cz/nic/tablexia/util/Utility.java b/core/src/cz/nic/tablexia/util/Utility.java index 0ef6833097e69478c9e1406a439c3d9e32d93872..991687ab8e2c63b7acbcccddeee2b5d56f8b0fd1 100644 --- a/core/src/cz/nic/tablexia/util/Utility.java +++ b/core/src/cz/nic/tablexia/util/Utility.java @@ -19,12 +19,11 @@ public class Utility { return null; } - public static Map<String, String> createChecksumMapFromString(String checksumsString, String keyValueSeparator) { - if (checksumsString == null) { + public static Map<String, String> createChecksumMapFromString(String checksums) { + if (checksums == null) { return null; } - String checksums = checksumsString.substring(1, checksumsString.length() - 1); - return Splitter.on(',').trimResults().withKeyValueSeparator(keyValueSeparator).split(checksums); + return Splitter.on(',').trimResults().withKeyValueSeparator(":").split(checksums); } } diff --git a/core/src/cz/nic/tablexia/util/assetmanager/DirectoryAsset.java b/core/src/cz/nic/tablexia/util/assetmanager/DirectoryAsset.java index c837dcb06c4dfb47d76c0706426d67dc8d662f5b..c6ebb29629f6aea0a88a7e21e58cbc87f0300588 100644 --- a/core/src/cz/nic/tablexia/util/assetmanager/DirectoryAsset.java +++ b/core/src/cz/nic/tablexia/util/assetmanager/DirectoryAsset.java @@ -1,11 +1,10 @@ package cz.nic.tablexia.util.assetmanager; -import com.badlogic.gdx.Gdx; import com.badlogic.gdx.files.FileHandle; import java.util.HashMap; -import cz.nic.tablexia.loader.TablexiaAssetManager; +import cz.nic.tablexia.loader.TablexiaAbstractFileManager; import cz.nic.tablexia.util.Log; /** @@ -27,7 +26,7 @@ public class DirectoryAsset extends HashMap<String, String> { private void loadFiles(String path, FileHandle fh) { if (fh.isDirectory()) { - Log.info(getClass().getName(), "Is directory: " + fh.name()); + Log.debug(getClass(), "Is directory: " + fh.name()); for (FileHandle entry : fh.list()) { loadFiles(path + fh.name() + "/", entry); } @@ -38,14 +37,14 @@ public class DirectoryAsset extends HashMap<String, String> { private FileHandle getDirHandle(String path) { FileHandle dirHandle; - dirHandle = Gdx.files.external(TablexiaAssetManager.StorageType.EXTERNAL.getStoragePath() + path); + dirHandle = TablexiaAbstractFileManager.getFileStoragePathFileHandle(TablexiaAbstractFileManager.AssetsStorageType.EXTERNAL, path); return dirHandle; } public String add(String path, FileHandle fh) { String fullPath = basePath + "/" + path + fh.name(); String key = path + fh.nameWithoutExtension(); - Log.info(getClass().getName(), "Adding asset: " + key + " : " + fullPath); + Log.debug(getClass(), "Adding asset: " + key + " : " + fullPath); return super.put(key, fullPath); } @@ -53,7 +52,7 @@ public class DirectoryAsset extends HashMap<String, String> { public String get(Object key) { String value = super.get(key); if(value == null){ - Log.info(getClass().getName(), "Asset not prepared: " + key); + Log.err(getClass(), "Asset not prepared: " + key); throw new IllegalArgumentException("Asset not prepared: " + key); } return value; diff --git a/core/src/cz/nic/tablexia/util/ui/XFillViewport.java b/core/src/cz/nic/tablexia/util/ui/XFillViewport.java index c9a71aba40cc8b1f7917f26c49fc29e1a13ce092..143e89bc67e8244f027c2fc83a32591699e51d1f 100644 --- a/core/src/cz/nic/tablexia/util/ui/XFillViewport.java +++ b/core/src/cz/nic/tablexia/util/ui/XFillViewport.java @@ -18,7 +18,7 @@ public class XFillViewport extends Viewport { public XFillViewport() { setWorldSize(TablexiaSettings.getWorldWidth(), TablexiaSettings.getMinWorldHeight()); setCamera(new OrthographicCamera()); - Log.info(getClass().getName(), "Viewport size: " + TablexiaSettings.getWorldWidth() + "x" + TablexiaSettings.getMinWorldHeight()); + Log.info(getClass(), "Viewport size: " + TablexiaSettings.getWorldWidth() + "x" + TablexiaSettings.getMinWorldHeight()); } private float cameraYOffset; @@ -45,7 +45,7 @@ public class XFillViewport extends Viewport { @Override public void apply(boolean centerCamera) { - Log.info(getClass().getName(), "New viewport size (min: " + TablexiaSettings.getMinWorldHeight() + ") position: " + getScreenX() + ":" + getScreenY() + " - bounds: " + getScreenWidth() + ":" + getScreenHeight() + " - world: " + getWorldWidth() + "x" + getWorldHeight() + " - y offset: " + cameraYOffset); + Log.info(getClass(), "New viewport size (min: " + TablexiaSettings.getMinWorldHeight() + ") position: " + getScreenX() + ":" + getScreenY() + " - bounds: " + getScreenWidth() + ":" + getScreenHeight() + " - world: " + getWorldWidth() + "x" + getWorldHeight() + " - y offset: " + cameraYOffset); Gdx.gl.glViewport(getScreenX(), getScreenY(), getScreenWidth(), getScreenHeight()); getCamera().viewportWidth = getWorldWidth(); diff --git a/desktop/build.gradle b/desktop/build.gradle index 2c0d1cde356f192e95310ae43bfb73cecc4a88a2..074a33ea57cd3bb3203c63523202f812a1fb0b32 100644 --- a/desktop/build.gradle +++ b/desktop/build.gradle @@ -26,7 +26,7 @@ task debugJar(type: Jar) { attributes 'Main-Class': project.mainClassName attributes 'Build-Type': 'debug' attributes 'Version-Name': tablexiaVersionName - attributes 'Assets-Cheksums': rootProject.ext.assetsChecksum.toString() + attributes 'Assets-Cheksums': getMapConvertedToString(rootProject.ext.assetsChecksum) } } } @@ -43,7 +43,7 @@ task releaseJar(type: Jar) { attributes 'Main-Class': project.mainClassName attributes 'Build-Type': 'release' attributes 'Version-Name': tablexiaVersionName - attributes 'Assets-Cheksums': rootProject.ext.assetsChecksum + attributes 'Assets-Cheksums': getMapConvertedToString(rootProject.ext.assetsChecksum) } } } diff --git a/desktop/src/cz/nic/tablexia/desktop/DesktopLauncher.java b/desktop/src/cz/nic/tablexia/desktop/DesktopLauncher.java index c3e47eea3fa6b7ffaf81ee3052e0b2cf9cc6fe86..058304682a11666ababfa9b9ec76db14ba8ce463 100644 --- a/desktop/src/cz/nic/tablexia/desktop/DesktopLauncher.java +++ b/desktop/src/cz/nic/tablexia/desktop/DesktopLauncher.java @@ -59,7 +59,7 @@ public class DesktopLauncher { Locale.getDefault(), versionName, SQL_CONNECTION_TYPE, - Utility.createChecksumMapFromString(checksums, "="), + Utility.createChecksumMapFromString(checksums), true), config); } diff --git a/util/checksum/build.gradle b/util/checksum/build.gradle index c1be675eaf28f79b9a049e86de97f6ab9bdc486a..1fc5298bb9dee7730c4c0282d241d9c1484159ec 100644 --- a/util/checksum/build.gradle +++ b/util/checksum/build.gradle @@ -23,9 +23,6 @@ task runJarChecksum(dependsOn: jar) { String dirName = dir.getName() String destDir = "" + buildDir + CHECKSUM_DIR + dirName task("checksum_" + dirName, type: Copy) { - - println dir.absolutePath - from sourceDir.absolutePath + "/common" from dir.absolutePath into destDir @@ -41,9 +38,7 @@ task runJarChecksum(dependsOn: jar) { standardOutput = stdout doLast { - println "TEST: " + rootProject.ext.assetsChecksum[dirName] rootProject.ext.assetsChecksum[dirName] = stdout.toString().trim() - println "TEST: " + rootProject.ext.assetsChecksum[dirName] } }.execute() }