private Bundle unmanage(long bundleId) {
   if (isManaged(bundleId)) {
     BundleManager bundleManager = removeBundleManager(bundleId);
     if (bundleManager != null) {
       disbandBundleManager(bundleManager);
       bundleManager.close();
     }
     return bundleManager.getBundle();
   }
   return null;
 }
 /**
  * Decorates the original bundle manager with a version for development.
  *
  * @return a new bundle manager for development, not null
  */
 public BundleManager getDevBundleManager() {
   BundleManager devBundleManager = new BundleManager();
   Set<String> bundleNames = _bundleManager.getBundleIds();
   for (String bundleId : bundleNames) {
     Bundle bundle = _bundleManager.getBundle(bundleId);
     List<Fragment> allFragments = bundle.getAllFragments();
     if (allFragments.size() > LEVEL2_SIZE) {
       throw new IllegalStateException(
           "DevBundleBuilder can only support " + LEVEL2_SIZE + " maximum fragments");
     }
     buildVirtualBundles(devBundleManager, bundleId, allFragments);
   }
   return devBundleManager;
 }
  public void test() throws Exception {
    Bundle bundle = _bundleManager.getBundle(SCRIPTS_JS);
    List<Fragment> allFragment = bundle.getAllFragment();
    assertNotNull(allFragment);
    assertEquals(1, allFragment.size());

    Fragment fragment = allFragment.get(0);
    fragment.getFile();
    String uncompressed = FileUtils.readFileToString(fragment.getFile());
    assertNotNull(uncompressed);
    s_logger.debug("uncompressed length {}", uncompressed.length());

    String compressed = _compressor.getBundle(SCRIPTS_JS);
    assertNotNull(compressed);
    s_logger.debug("compressed length {}", compressed.length());

    assertTrue(uncompressed.length() > compressed.length());
  }