diff options
Diffstat (limited to 'plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/archive/internal/ZipStreamArchiveSaveAdapterImpl.java')
-rw-r--r-- | plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/archive/internal/ZipStreamArchiveSaveAdapterImpl.java | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/archive/internal/ZipStreamArchiveSaveAdapterImpl.java b/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/archive/internal/ZipStreamArchiveSaveAdapterImpl.java deleted file mode 100644 index 4a0e7f15d..000000000 --- a/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/archive/internal/ZipStreamArchiveSaveAdapterImpl.java +++ /dev/null @@ -1,121 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2007 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.jee.archive.internal; - - - -import java.io.IOException; -import java.io.OutputStream; -import java.util.zip.ZipEntry; -import java.util.zip.ZipOutputStream; - -import org.eclipse.core.runtime.IPath; -import org.eclipse.emf.ecore.resource.Resource; -import org.eclipse.jst.jee.archive.AbstractArchiveSaveAdapter; -import org.eclipse.jst.jee.archive.ArchiveSaveFailureException; -import org.eclipse.jst.jee.archive.IArchive; -import org.eclipse.jst.jee.archive.IArchiveResource; -import org.eclipse.jst.jee.archive.IArchiveSaveAdapter; - - - -/** - * This is a concrete implentation of IArchiveSaveAdapter. All the contents of the archive, including xmi - * resources, will be output to a ZipOutputStream. The output stream should be passed in by the - * client. - */ -public class ZipStreamArchiveSaveAdapterImpl extends AbstractArchiveSaveAdapter { - protected OutputStream destinationStream; - /** Used internally */ - protected ZipOutputStream zipOutputStream; - - /** - * Wraps a new zip output stream around the parameter - */ - public ZipStreamArchiveSaveAdapterImpl(OutputStream out) { - setDestinationStream(out); - setZipOutputStream(new ZipOutputStream(out)); - } - - @Override - public void close() throws IOException { - getDestinationStream().close(); - } - - protected IArchiveSaveAdapter createNestedSaveAdapter(IArchive anArchive) { - return new ZipStreamArchiveSaveAdapterImpl(getZipOutputStream()); - } - - @Override - public void finish() throws IOException { - getZipOutputStream().finish(); - //If this is not nested, close the stream to free up the resource - //otherwise, don't close it because the parent may not be done - if (!(getDestinationStream() instanceof ZipOutputStream)) - getDestinationStream().close(); - } - - /** - * @return java.io.OutputStream - */ - public java.io.OutputStream getDestinationStream() { - return destinationStream; - } - - protected java.io.OutputStream getOutputStreamForResource(Resource aResource) throws java.io.IOException { - return getZipOutputStream(); - } - - /** - * @return java.util.zip.ZipOutputStream - */ - protected java.util.zip.ZipOutputStream getZipOutputStream() { - return zipOutputStream; - } - - @Override - protected void save(IArchiveResource resource) throws ArchiveSaveFailureException { - try { - IPath path = resource.getPath(); - if(resource.getType() == IArchiveResource.DIRECTORY_TYPE && !path.hasTrailingSeparator()){ - path = path.addTrailingSeparator(); - } - - ZipEntry entry = new ZipEntry(path.toString()); - if (resource.getLastModified() > 0) - entry.setTime(resource.getLastModified()); - getZipOutputStream().putNextEntry(entry); - if (resource.getType() != IArchiveResource.DIRECTORY_TYPE) { - ArchiveUtil.copy(resource.getInputStream(), getZipOutputStream()); - } - getZipOutputStream().closeEntry(); - } catch (IOException e) { - throw new ArchiveSaveFailureException(e); - } - } - - /** - * @param newDestinationStream - * java.io.OutputStream - */ - public void setDestinationStream(java.io.OutputStream newDestinationStream) { - destinationStream = newDestinationStream; - } - - /** - * @param newZipOutputStream - * java.util.zip.ZipOutputStream - */ - protected void setZipOutputStream(java.util.zip.ZipOutputStream newZipOutputStream) { - zipOutputStream = newZipOutputStream; - } - -} |