public static SettlersVersionMapping readFromDirectory(String directory) throws IOException { File file = new File(directory, MAPPING_FILE_NAME); if (file.exists()) { return readFromStream(new FileInputStream(file)); } else { return new SettlersVersionMapping(); } }
public static GfxFolderMapping getMappingForVersionId(String settlersVersionId) { try { SettlersVersionMapping mappingFile = readFromStream(SettlersVersionMapping.class.getResourceAsStream(MAPPING_FILE_NAME)); return mappingFile.getMapping(settlersVersionId); } catch (IOException e) { throw new RuntimeException(e); } } }
public void serializeToDirectory(String directory) throws IOException { serializeToStream(new FileOutputStream(new File(directory, MAPPING_FILE_NAME))); }
/** * Sets the path to look for dat files. * * @param path * The directory. It may not exist, but must not be null. */ public static void setLookupPath(File path, String settlersVersionId) { ImageProvider.lookupPath = path; getInstance().gfxFolderMapping = SettlersVersionMapping.getMappingForVersionId(settlersVersionId); getInstance().startPreloading(); }
@Test public void testGetAmazonDemoMapping() { GfxFolderMapping mapping = SettlersVersionMapping.getMappingForVersionId(Long.toString(-1282419180527137435L)); assertNotNull(mapping); assertTrue(mapping instanceof IndexingGfxFolderMapping); }
@Test public void testGetMappingForUnknownHash() { GfxFolderMapping mapping = SettlersVersionMapping.getMappingForVersionId(Long.toString(-1L)); assertNotNull(mapping); assertTrue(mapping instanceof DefaultGfxFolderMapping); } }