diff --git a/src/main/java/com/threerings/resource/FileResourceBundle.java b/src/main/java/com/threerings/resource/FileResourceBundle.java index 157f4726..cf035bd9 100644 --- a/src/main/java/com/threerings/resource/FileResourceBundle.java +++ b/src/main/java/com/threerings/resource/FileResourceBundle.java @@ -60,31 +60,12 @@ public class FileResourceBundle extends ResourceBundle * @param source a file object that references our source jar file. * @param delay if true, the bundle will wait until someone calls {@link #sourceIsReady} * before allowing access to its resources. - * @param unpackFully if true the bundle will unpack itself fully. + * @param unpack if true the bundle will unpack itself into a temporary directory */ - public FileResourceBundle (File source, boolean delay, boolean unpackFully) - { - this(source, delay, unpackFully, true); - } - - /** - * Constructs a resource bundle with the supplied jar file. - * - * @param source a file object that references our source jar file. - * @param delay if true, the bundle will wait until someone calls {@link #sourceIsReady} - * before allowing access to its resources. - * @param unpackFully if true the bundle will unpack itself fully. - * @param unpackEntries if true and unpackFully is false, individual entries will be - * unpacked into a temporary directory as needed (as opposed to being read directly from - * the jar file). - */ - public FileResourceBundle ( - File source, boolean delay, boolean unpackFully, boolean unpackEntries) + public FileResourceBundle (File source, boolean delay, boolean unpack) { _source = source; - _unpackEntries = unpackEntries; - - if (unpackFully) { + if (unpack) { String root = stripSuffix(source.getPath()); _unpacked = new File(root + ".stamp"); _cache = new File(root); @@ -105,25 +86,17 @@ public class FileResourceBundle extends ResourceBundle public InputStream getResource (String path) throws IOException { - // if specified, unpack our resources into a temp directory so that - // we can load them quickly and the file system can cache them sensibly - if (_unpackEntries) { - File rfile = getResourceFile(path); - return (rfile == null) ? null : new FileInputStream(rfile); - } - if (_jarSource == null && resolveJarFile()) { - return null; - } - JarEntry entry = _jarSource.getJarEntry(path); - return (entry == null) ? null : _jarSource.getInputStream(entry); + // unpack our resources into a temp directory so that we can load + // them quickly and the file system can cache them sensibly + File rfile = getResourceFile(path); + return (rfile == null) ? null : new FileInputStream(rfile); } @Override public BufferedImage getImageResource (String path, boolean useFastIO) throws IOException { - return _unpackEntries ? ResourceManager.loadImage(getResourceFile(path), useFastIO) : - ResourceManager.loadImage(getResource(path), useFastIO); + return ResourceManager.loadImage(getResourceFile(path), useFastIO); } /** @@ -427,9 +400,6 @@ public class FileResourceBundle extends ResourceBundle /** The jar file from which we load resources. */ protected JarFile _jarSource; - /** Whether or not to unpack individual entries as needed from the jar file. */ - protected boolean _unpackEntries; - /** A directory in which we temporarily unpack our resource files. */ protected static File _tmpdir; } diff --git a/src/main/java/com/threerings/resource/ResourceManager.java b/src/main/java/com/threerings/resource/ResourceManager.java index b1a7653c..b234b71a 100644 --- a/src/main/java/com/threerings/resource/ResourceManager.java +++ b/src/main/java/com/threerings/resource/ResourceManager.java @@ -211,7 +211,7 @@ public class ResourceManager // check a system property to determine if we should unpack our bundles, but don't freak // out if we fail to read it try { - _unpackFully = !Boolean.getBoolean("no_unpack_resources"); + _unpack = !Boolean.getBoolean("no_unpack_resources"); } catch (SecurityException se) { // no problem, we're in a sandbox so we definitely won't be unpacking } @@ -263,16 +263,7 @@ public class ResourceManager */ public void setUnpackResources (boolean unpackResources) { - _unpackFully = unpackResources; - } - - /** - * Configures whether we unpack individual jar entries as opposed to reading them directly from - * the jar. - */ - public void setUnpackEntries (boolean unpackEntries) - { - _unpackEntries = unpackEntries; + _unpack = unpackResources; } /** @@ -449,8 +440,7 @@ public class ResourceManager public boolean checkBundle (String path) { File bfile = getResourceFile(path); - return (bfile == null) ? false : new FileResourceBundle( - bfile, true, _unpackFully, _unpackEntries).isUnpacked(); + return (bfile == null) ? false : new FileResourceBundle(bfile, true, _unpack).isUnpacked(); } /** @@ -469,8 +459,7 @@ public class ResourceManager return; } - final FileResourceBundle bundle = new FileResourceBundle( - bfile, true, _unpackFully, _unpackEntries); + final FileResourceBundle bundle = new FileResourceBundle(bfile, true, _unpack); if (bundle.isUnpacked()) { if (bundle.sourceIsReady()) { listener.requestCompleted(bundle); @@ -823,8 +812,7 @@ public class ResourceManager { if (setType.equals(FILE_SET_TYPE)) { FileResourceBundle bundle = - createFileResourceBundle(getResourceFile(path), - true, _unpackFully, _unpackEntries); + createFileResourceBundle(getResourceFile(path), true, _unpack); if (!bundle.isUnpacked() || !bundle.sourceIsReady()) { dlist.add(bundle); } @@ -840,9 +828,9 @@ public class ResourceManager * Creates an appropriate bundle for fetching resources from files. */ protected FileResourceBundle createFileResourceBundle (File source, boolean delay, - boolean unpackFully, boolean unpackEntries) + boolean unpack) { - return new FileResourceBundle(source, delay, unpackFully, unpackEntries); + return new FileResourceBundle(source, delay, unpack); } /** @@ -1078,11 +1066,8 @@ public class ResourceManager /** The root path we give to network bundles for all resources they're interested in. */ protected String _networkRootPath; - /** Whether or not to unpack our resource bundles fully. */ - protected boolean _unpackFully; - - /** Whether or not to unpack individual jar entries. */ - protected boolean _unpackEntries = true; + /** Whether or not to unpack our resource bundles. */ + protected boolean _unpack; /** Our default resource set. */ protected ResourceBundle[] _default = new ResourceBundle[0];