code: private void generateBundleModuleArgs(List<String> args, Map<String, JoinableResourceBundle> bundleMap,
  			Map<String, String> resultBundleMapping, JoinableResourceBundle bundle, List<String> dependencies) {
  
  		Set<String> bundleDependencies = getClosureModuleDependencies(bundle, dependencies);
  
  		// Generate a module for each bundle variant
  		Map<String, VariantSet> bundleVariants = bundle.getVariants();
  		List<Map<String, String>> variants = VariantUtils.getAllVariants(bundleVariants);
  
  		// Add default variant
  		if (variants.isEmpty()) {
  			variants.add(null);
  		}
  
  		for (Map<String, String> variant : variants) {
  			String jsFile = VariantUtils.getVariantBundleName(bundle.getId(), variant, false);
  			String moduleName = VariantUtils.getVariantBundleName(bundle.getName(), variant, false);
  
  			resultBundleMapping.put(moduleName, jsFile);
  
  			StringBuilder moduleArg = new StringBuilder();
  			moduleArg.append(moduleName + ":1:");
  			for (String dep : bundleDependencies) {
  
  				// Check module dependencies
  				checkBundleName(dep, bundleMap);
  
  				JoinableResourceBundle dependencyBundle = bundleMap.get(dep);
  				// Generate a module for each bundle variant
  				List<String> depVariantKeys = VariantUtils
  						.getAllVariantKeysFromFixedVariants(dependencyBundle.getVariants(), variant);
  
  				for (String depVariantKey : depVariantKeys) {
  					String depBundleName = VariantUtils.getVariantBundleName(dep, depVariantKey, false);
  					moduleArg.append(depBundleName);
  					moduleArg.append(MODULE_DEPENDENCIES_SEPARATOR);
  				}
  			}
  			moduleArg.append(JAWR_ROOT_MODULE_NAME);
  
  			addModuleArg(jsFile, moduleName, args, moduleArg);
  		}
  	}
docs: Generates the bundle module arguments for the closure compiler
  
  @param args
  the current list of arguments
  @param bundleMap
  the bundle map
  @param resultBundleMapping
  the result bundle mapping
  @param bundle
  the current bundle
  @param dependencies
  the dependencies