aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/resources/ZipResource.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/resources/ZipResource.java')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/resources/ZipResource.java226
1 files changed, 0 insertions, 226 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/resources/ZipResource.java b/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/resources/ZipResource.java
deleted file mode 100644
index 37fc98ec..00000000
--- a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/resources/ZipResource.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-package org.apache.tools.ant.types.resources;
-
-import java.io.File;
-import java.io.FilterInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Project;
-import org.apache.tools.ant.types.Reference;
-import org.apache.tools.ant.types.Resource;
-import org.apache.tools.ant.types.ResourceCollection;
-import org.apache.tools.ant.util.FileUtils;
-import org.apache.tools.zip.ZipEntry;
-import org.apache.tools.zip.ZipExtraField;
-import org.apache.tools.zip.ZipFile;
-
-/**
- * A Resource representation of an entry in a zipfile.
- * @since Ant 1.7
- */
-public class ZipResource extends ArchiveResource {
-
- private String encoding;
- private ZipExtraField[] extras;
- private int method;
-
- /**
- * Default constructor.
- */
- public ZipResource() {
- }
-
- /**
- * Construct a ZipResource representing the specified
- * entry in the specified zipfile.
- * @param z the zipfile as File.
- * @param enc the encoding used for filenames.
- * @param e the ZipEntry.
- */
- public ZipResource(File z, String enc, ZipEntry e) {
- super(z, true);
- setEncoding(enc);
- setEntry(e);
- }
-
- /**
- * Set the zipfile that holds this ZipResource.
- * @param z the zipfile as a File.
- */
- public void setZipfile(File z) {
- setArchive(z);
- }
-
- /**
- * Get the zipfile that holds this ZipResource.
- * @return the zipfile as a File.
- */
- public File getZipfile() {
- FileProvider fp = getArchive().as(FileProvider.class);
- return fp.getFile();
- }
-
- /**
- * Sets the archive that holds this as a single element Resource
- * collection.
- * @param a the archive as a single element Resource collection.
- */
- public void addConfigured(ResourceCollection a) {
- super.addConfigured(a);
- if (!a.isFilesystemOnly()) {
- throw new BuildException("only filesystem resources are supported");
- }
- }
-
- /**
- * Set the encoding to use with the zipfile.
- * @param enc the String encoding.
- */
- public void setEncoding(String enc) {
- checkAttributesAllowed();
- encoding = enc;
- }
-
- /**
- * Get the encoding to use with the zipfile.
- * @return String encoding.
- */
- public String getEncoding() {
- return isReference()
- ? ((ZipResource) getCheckedRef()).getEncoding() : encoding;
- }
-
- /**
- * Overrides the super version.
- * @param r the Reference to set.
- */
- public void setRefid(Reference r) {
- if (encoding != null) {
- throw tooManyAttributes();
- }
- super.setRefid(r);
- }
-
- /**
- * Return an InputStream for reading the contents of this Resource.
- * @return an InputStream object.
- * @throws IOException if the zip file cannot be opened,
- * or the entry cannot be read.
- */
- public InputStream getInputStream() throws IOException {
- if (isReference()) {
- return ((Resource) getCheckedRef()).getInputStream();
- }
- final ZipFile z = new ZipFile(getZipfile(), getEncoding());
- ZipEntry ze = z.getEntry(getName());
- if (ze == null) {
- z.close();
- throw new BuildException("no entry " + getName() + " in "
- + getArchive());
- }
- return new FilterInputStream(z.getInputStream(ze)) {
- public void close() throws IOException {
- FileUtils.close(in);
- z.close();
- }
- protected void finalize() throws Throwable {
- try {
- close();
- } finally {
- super.finalize();
- }
- }
- };
- }
-
- /**
- * Get an OutputStream for the Resource.
- * @return an OutputStream to which content can be written.
- * @throws IOException if unable to provide the content of this
- * Resource as a stream.
- * @throws UnsupportedOperationException if OutputStreams are not
- * supported for this Resource type.
- */
- public OutputStream getOutputStream() throws IOException {
- if (isReference()) {
- return ((Resource) getCheckedRef()).getOutputStream();
- }
- throw new UnsupportedOperationException(
- "Use the zip task for zip output.");
- }
-
- /**
- * Retrieves extra fields.
- * @return an array of the extra fields
- * @since Ant 1.8.0
- */
- public ZipExtraField[] getExtraFields() {
- if (isReference()) {
- return ((ZipResource) getCheckedRef()).getExtraFields();
- }
- checkEntry();
- if (extras == null) {
- return new ZipExtraField[0];
- }
- return extras;
- }
-
- /**
- * The compression method that has been used.
- * @since Ant 1.8.0
- */
- public int getMethod() {
- return method;
- }
-
- /**
- * fetches information from the named entry inside the archive.
- */
- protected void fetchEntry() {
- ZipFile z = null;
- try {
- z = new ZipFile(getZipfile(), getEncoding());
- setEntry(z.getEntry(getName()));
- } catch (IOException e) {
- log(e.getMessage(), Project.MSG_DEBUG);
- throw new BuildException(e);
- } finally {
- ZipFile.closeQuietly(z);
- }
- }
-
- private void setEntry(ZipEntry e) {
- if (e == null) {
- setExists(false);
- return;
- }
- setName(e.getName());
- setExists(true);
- setLastModified(e.getTime());
- setDirectory(e.isDirectory());
- setSize(e.getSize());
- setMode(e.getUnixMode());
- extras = e.getExtraFields(true);
- method = e.getMethod();
- }
-
-}