aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/Unpack.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/Unpack.java')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/Unpack.java195
1 files changed, 0 insertions, 195 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/Unpack.java b/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/Unpack.java
deleted file mode 100644
index 8640f8fb..00000000
--- a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/Unpack.java
+++ /dev/null
@@ -1,195 +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.taskdefs;
-
-
-import java.io.File;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-import org.apache.tools.ant.types.Resource;
-import org.apache.tools.ant.types.ResourceCollection;
-import org.apache.tools.ant.types.resources.FileProvider;
-import org.apache.tools.ant.types.resources.FileResource;
-
-/**
- * Abstract Base class for unpack tasks.
- *
- * @since Ant 1.5
- */
-
-public abstract class Unpack extends Task {
- // CheckStyle:VisibilityModifier OFF - bc
- protected File source;
- protected File dest;
- protected Resource srcResource;
- // CheckStyle:VisibilityModifier ON
-
- /**
- * @deprecated since 1.5.x.
- * setSrc(String) is deprecated and is replaced with
- * setSrc(File) to make Ant's Introspection
- * mechanism do the work and also to encapsulate operations on
- * the type in its own class.
- * @ant.attribute ignore="true"
- * @param src a <code>String</code> value
- */
- public void setSrc(String src) {
- log("DEPRECATED - The setSrc(String) method has been deprecated."
- + " Use setSrc(File) instead.");
- setSrc(getProject().resolveFile(src));
- }
-
- /**
- * @deprecated since 1.5.x.
- * setDest(String) is deprecated and is replaced with
- * setDest(File) to make Ant's Introspection
- * mechanism do the work and also to encapsulate operations on
- * the type in its own class.
- * @ant.attribute ignore="true"
- * @param dest a <code>String</code> value
- */
- public void setDest(String dest) {
- log("DEPRECATED - The setDest(String) method has been deprecated."
- + " Use setDest(File) instead.");
- setDest(getProject().resolveFile(dest));
- }
-
- /**
- * The file to expand; required.
- * @param src file to expand
- */
- public void setSrc(File src) {
- setSrcResource(new FileResource(src));
- }
-
- /**
- * The resource to expand; required.
- * @param src resource to expand
- */
- public void setSrcResource(Resource src) {
- if (!src.isExists()) {
- throw new BuildException(
- "the archive " + src.getName() + " doesn't exist");
- }
- if (src.isDirectory()) {
- throw new BuildException(
- "the archive " + src.getName() + " can't be a directory");
- }
- FileProvider fp = src.as(FileProvider.class);
- if (fp != null) {
- source = fp.getFile();
- } else if (!supportsNonFileResources()) {
- throw new BuildException(
- "The source " + src.getName()
- + " is not a FileSystem "
- + "Only FileSystem resources are"
- + " supported.");
- }
- srcResource = src;
- }
-
- /**
- * Set the source Archive resource.
- * @param a the archive as a single element Resource collection.
- */
- public void addConfigured(ResourceCollection a) {
- if (a.size() != 1) {
- throw new BuildException("only single argument resource collections"
- + " are supported as archives");
- }
- setSrcResource(a.iterator().next());
- }
-
- /**
- * The destination file or directory; optional.
- * @param dest destination file or directory
- */
- public void setDest(File dest) {
- this.dest = dest;
- }
-
- private void validate() throws BuildException {
- if (srcResource == null) {
- throw new BuildException("No Src specified", getLocation());
- }
-
- if (dest == null) {
- dest = new File(source.getParent());
- }
-
- if (dest.isDirectory()) {
- String defaultExtension = getDefaultExtension();
- createDestFile(defaultExtension);
- }
- }
-
- private void createDestFile(String defaultExtension) {
- String sourceName = source.getName();
- int len = sourceName.length();
- if (defaultExtension != null
- && len > defaultExtension.length()
- && defaultExtension.equalsIgnoreCase(
- sourceName.substring(len - defaultExtension.length()))) {
- dest = new File(dest, sourceName.substring(0,
- len - defaultExtension.length()));
- } else {
- dest = new File(dest, sourceName);
- }
- }
-
- /**
- * Execute the task.
- * @throws BuildException on error
- */
- public void execute() throws BuildException {
- File savedDest = dest; // may be altered in validate
- try {
- validate();
- extract();
- } finally {
- dest = savedDest;
- }
- }
-
- /**
- * Get the extension.
- * This is to be overridden by subclasses.
- * @return the default extension.
- */
- protected abstract String getDefaultExtension();
-
- /**
- * Do the uncompressing.
- * This is to be overridden by subclasses.
- */
- protected abstract void extract();
-
- /**
- * Whether this task can deal with non-file resources.
- *
- * <p>This implementation returns false.</p>
- * @return false for this task.
- * @since Ant 1.7
- */
- protected boolean supportsNonFileResources() {
- return false;
- }
-
-}