0,0 → 1,83 |
/* |
* Copyright 2010 Brian Rosenberger (Brutex Network) |
* |
* Licensed 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 net.brutex.xservices.types; |
|
import java.io.File; |
import javax.xml.bind.annotation.XmlElement; |
import javax.xml.bind.annotation.XmlEnum; |
import javax.xml.bind.annotation.XmlRootElement; |
import org.apache.tools.ant.Project; |
import org.apache.tools.ant.types.Resource; |
import org.apache.tools.ant.types.resources.BZip2Resource; |
import org.apache.tools.ant.types.resources.GZipResource; |
import org.apache.tools.ant.types.resources.URLResource; |
|
/** |
* |
* @author Brian Rosenberger, bru@brutex.de |
*/ |
@XmlRootElement(namespace="http://ws.xservices.brutex.net") |
public class FileResource |
implements ResourceInterface { |
|
@XmlElement(defaultValue = "FILE", nillable = false, required = true) |
public Type type = Type.FILE; |
@XmlElement(nillable = false, required = true) |
public String uri; |
|
@XmlEnum(String.class) |
public enum Type { |
|
FILE, URL, GZIP, BZIP2 |
} |
|
public FileResource(Type type, String uri) { |
this.type = type; |
this.uri = uri; |
} |
|
public FileResource() { |
} |
|
public Resource getAntResource(Project p) { |
Resource res = null; |
switch (type) { |
case URL: |
URLResource ures = new URLResource(uri); |
res = ures; |
break; |
|
case GZIP: |
GZipResource gres = new GZipResource( |
new org.apache.tools.ant.types.resources.FileResource(new File(uri))); |
res = gres; |
break; |
|
case BZIP2: |
BZip2Resource bres = new BZip2Resource( |
new org.apache.tools.ant.types.resources.FileResource(new File(uri))); |
res = bres; |
break; |
|
default: |
//Default is Type FILE |
res = new org.apache.tools.ant.types.resources.FileResource(new File(uri)); |
} |
res.setProject(p); |
return res; |
} |
} |