private void lazyInitCaches()

in src/android/AssetFilesystem.java [51:79]


    private void lazyInitCaches() {
        synchronized (listCacheLock) {
            if (listCache == null) {
                ObjectInputStream ois = null;
                try {
                    ois = new ObjectInputStream(assetManager.open("cdvasset.manifest"));
                    listCache = (Map<String, String[]>) ois.readObject();
                    lengthCache = (Map<String, Long>) ois.readObject();
                    listCacheFromFile = true;
                } catch (ClassNotFoundException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    // Asset manifest won't exist if the gradle hook isn't set up correctly.
                } finally {
                    if (ois != null) {
                        try {
                            ois.close();
                        } catch (IOException e) {
                            LOG.d(LOG_TAG, e.getLocalizedMessage());
                        }
                    }
                }
                if (listCache == null) {
                    LOG.w("AssetFilesystem", "Asset manifest not found. Recursive copies and directory listing will be slow.");
                    listCache = new HashMap<String, String[]>();
                }
            }
        }
    }