writeEntry(key, (String) generatedManifest.get(key));
writeEntry(key, (String) manifestToWrite.get(key));
	protected void writeManifest(File generationLocation, boolean compatibilityManifest) throws PluginConversionException {		if (upToDate(generationLocation, pluginManifestLocation))			return;				try {			generationLocation.getParentFile().mkdirs();			generationLocation.createNewFile();			if (!generationLocation.isFile()) {				String message = EclipseAdaptorMsg.formatter.getString("ECLIPSE_CONVERTER_ERROR_CREATING_BUNDLE_MANIFEST",this.pluginInfo.getUniqueId(),generationLocation); //$NON-NLS-1$				throw new PluginConversionException(message);								}			// replaces any eventual existing file			out = new BufferedWriter(new FileWriter(generationLocation));						writeEntry(MANIFEST_VERSION, (String) generatedManifest.remove(MANIFEST_VERSION));			writeEntry(GENERATED_FROM, (String) generatedManifest.remove(GENERATED_FROM));	//Need to do this first uptoDate check expect the generated-from tag to be in the first line			Enumeration keys = generatedManifest.keys();			while (keys.hasMoreElements()) {				String key = (String) keys.nextElement();				writeEntry(key, (String) generatedManifest.get(key));			}			out.flush();		} catch (IOException e) {			String message = EclipseAdaptorMsg.formatter.getString("ECLIPSE_CONVERTER_ERROR_CREATING_BUNDLE_MANIFEST",this.pluginInfo.getUniqueId(),generationLocation); //$NON-NLS-1$			throw new PluginConversionException(message, e);		} finally {			if (out != null)				try {					out.close();				} catch (IOException e) {					// only report problems writing to/flushing the file				}		}	}