Repository: ant
Updated Branches:
  refs/heads/master bd82d189a -> 57895fd06


http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/resources/TarResource.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/types/resources/TarResource.java 
b/src/main/org/apache/tools/ant/types/resources/TarResource.java
index 9bed83c..3b6892a 100644
--- a/src/main/org/apache/tools/ant/types/resources/TarResource.java
+++ b/src/main/org/apache/tools/ant/types/resources/TarResource.java
@@ -77,7 +77,7 @@ public class TarResource extends ArchiveResource {
     @Override
     public InputStream getInputStream() throws IOException {
         if (isReference()) {
-            return getCheckedRef().getInputStream();
+            return getRef().getInputStream();
         }
         Resource archive = getArchive();
         final TarInputStream i = new TarInputStream(archive.getInputStream());
@@ -104,7 +104,7 @@ public class TarResource extends ArchiveResource {
     @Override
     public OutputStream getOutputStream() throws IOException {
         if (isReference()) {
-            return getCheckedRef().getOutputStream();
+            return getRef().getOutputStream();
         }
         throw new UnsupportedOperationException(
             "Use the tar task for tar output.");
@@ -115,7 +115,7 @@ public class TarResource extends ArchiveResource {
      */
     public String getUserName() {
         if (isReference()) {
-            return getCheckedRef().getUserName();
+            return getRef().getUserName();
         }
         checkEntry();
         return userName;
@@ -126,7 +126,7 @@ public class TarResource extends ArchiveResource {
      */
     public String getGroup() {
         if (isReference()) {
-            return getCheckedRef().getGroup();
+            return getRef().getGroup();
         }
         checkEntry();
         return groupName;
@@ -138,7 +138,7 @@ public class TarResource extends ArchiveResource {
      */
     public long getLongUid() {
         if (isReference()) {
-            return getCheckedRef().getLongUid();
+            return getRef().getLongUid();
         }
         checkEntry();
         return uid;
@@ -158,7 +158,7 @@ public class TarResource extends ArchiveResource {
      */
     public long getLongGid() {
         if (isReference()) {
-            return getCheckedRef().getLongGid();
+            return getRef().getLongGid();
         }
         checkEntry();
         return gid;
@@ -194,8 +194,8 @@ public class TarResource extends ArchiveResource {
     }
 
     @Override
-    protected TarResource getCheckedRef() {
-        return (TarResource) super.getCheckedRef();
+    protected TarResource getRef() {
+        return getCheckedRef(TarResource.class);
     }
 
     private void setEntry(TarEntry e) {

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/resources/URLResource.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/types/resources/URLResource.java 
b/src/main/org/apache/tools/ant/types/resources/URLResource.java
index 3328356..bf0214b 100644
--- a/src/main/org/apache/tools/ant/types/resources/URLResource.java
+++ b/src/main/org/apache/tools/ant/types/resources/URLResource.java
@@ -143,7 +143,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized URL getURL() {
         if (isReference()) {
-            return ((URLResource) getCheckedRef()).getURL();
+            return getRef().getURL();
         }
         if (url == null) {
             if (baseURL != null) {
@@ -180,7 +180,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized String getName() {
         if (isReference()) {
-            return getCheckedRef().getName();
+            return getRef().getName();
         }
         String name = getURL().getFile();
         return name.isEmpty() ? name : name.substring(1);
@@ -192,7 +192,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized String toString() {
         return isReference()
-            ? getCheckedRef().toString() : String.valueOf(getURL());
+            ? getRef().toString() : String.valueOf(getURL());
     }
 
     /**
@@ -201,7 +201,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized boolean isExists() {
         if (isReference()) {
-            return getCheckedRef().isExists();
+            return getRef().isExists();
         }
         return isExists(false);
     }
@@ -262,7 +262,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized long getLastModified() {
         if (isReference()) {
-            return getCheckedRef().getLastModified();
+            return getRef().getLastModified();
         }
         if (!isExists(false)) {
             return UNKNOWN_DATETIME;
@@ -276,7 +276,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized boolean isDirectory() {
         return isReference()
-            ? getCheckedRef().isDirectory()
+            ? getRef().isDirectory()
             : getName().endsWith("/");
     }
 
@@ -287,7 +287,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized long getSize() {
         if (isReference()) {
-            return getCheckedRef().getSize();
+            return getRef().getSize();
         }
         if (!isExists(false)) {
             return 0L;
@@ -305,7 +305,7 @@ public class URLResource extends Resource implements 
URLProvider {
             return true;
         }
         if (isReference()) {
-            return getCheckedRef().equals(another);
+            return getRef().equals(another);
         }
         if (another == null || another.getClass() != getClass()) {
             return false;
@@ -322,7 +322,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized int hashCode() {
         if (isReference()) {
-            return getCheckedRef().hashCode();
+            return getRef().hashCode();
         }
         return MAGIC * ((getURL() == null) ? NULL_URL : getURL().hashCode());
     }
@@ -337,7 +337,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized InputStream getInputStream() throws IOException {
         if (isReference()) {
-            return getCheckedRef().getInputStream();
+            return getRef().getInputStream();
         }
         connect();
         try {
@@ -358,7 +358,7 @@ public class URLResource extends Resource implements 
URLProvider {
      */
     public synchronized OutputStream getOutputStream() throws IOException {
         if (isReference()) {
-            return getCheckedRef().getOutputStream();
+            return getRef().getOutputStream();
         }
         connect();
         try {
@@ -401,6 +401,11 @@ public class URLResource extends Resource implements 
URLProvider {
         }
     }
 
+    @Override
+    protected URLResource getRef() {
+        return getCheckedRef(URLResource.class);
+    }
+
     /**
      * Closes the URL connection if:
      * - it is opened (i.e. the field conn is not null)

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/resources/Union.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/types/resources/Union.java 
b/src/main/org/apache/tools/ant/types/resources/Union.java
index 43c1b57..337287f 100644
--- a/src/main/org/apache/tools/ant/types/resources/Union.java
+++ b/src/main/org/apache/tools/ant/types/resources/Union.java
@@ -82,7 +82,7 @@ public class Union extends BaseResourceCollectionContainer {
      */
     public String[] list() {
         if (isReference()) {
-            return getCheckedRef(Union.class, getDataTypeName()).list();
+            return getRef().list();
         }
         return streamResources().map(Object::toString).toArray(String[]::new);
     }
@@ -93,7 +93,7 @@ public class Union extends BaseResourceCollectionContainer {
      */
     public Resource[] listResources() {
         if (isReference()) {
-            return getCheckedRef(Union.class, 
getDataTypeName()).listResources();
+            return getRef().listResources();
         }
         return streamResources().toArray(Resource[]::new);
     }
@@ -139,6 +139,10 @@ public class Union extends BaseResourceCollectionContainer 
{
             .collect(Collectors.toCollection(LinkedHashSet::new));
     }
 
+    private Union getRef() {
+        return getCheckedRef(Union.class);
+    }
+
     private Stream<? extends Resource> streamResources() {
         return streamResources(Function.identity());
     }

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/resources/ZipResource.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/types/resources/ZipResource.java 
b/src/main/org/apache/tools/ant/types/resources/ZipResource.java
index acd2ed4..c420113 100644
--- a/src/main/org/apache/tools/ant/types/resources/ZipResource.java
+++ b/src/main/org/apache/tools/ant/types/resources/ZipResource.java
@@ -105,7 +105,7 @@ public class ZipResource extends ArchiveResource {
      */
     public String getEncoding() {
         return isReference()
-            ? ((ZipResource) getCheckedRef()).getEncoding() : encoding;
+            ? getRef().getEncoding() : encoding;
     }
 
     /**
@@ -127,7 +127,7 @@ public class ZipResource extends ArchiveResource {
      */
     public InputStream getInputStream() throws IOException {
         if (isReference()) {
-            return getCheckedRef().getInputStream();
+            return getRef().getInputStream();
         }
         return getZipEntryStream(new ZipFile(getZipfile(), getEncoding()), 
getName());
     }
@@ -142,7 +142,7 @@ public class ZipResource extends ArchiveResource {
      */
     public OutputStream getOutputStream() throws IOException {
         if (isReference()) {
-            return getCheckedRef().getOutputStream();
+            return getRef().getOutputStream();
         }
         throw new UnsupportedOperationException(
             "Use the zip task for zip output.");
@@ -155,7 +155,7 @@ public class ZipResource extends ArchiveResource {
      */
     public ZipExtraField[] getExtraFields() {
         if (isReference()) {
-            return ((ZipResource) getCheckedRef()).getExtraFields();
+            return getRef().getExtraFields();
         }
         checkEntry();
         if (extras == null) {
@@ -219,6 +219,11 @@ public class ZipResource extends ArchiveResource {
         }
     }
 
+    @Override
+    protected ZipResource getRef() {
+        return getCheckedRef(ZipResource.class);
+    }
+
     private void setEntry(ZipEntry e) {
         if (e == null) {
             setExists(false);

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/resources/comparators/DelegatedResourceComparator.java
----------------------------------------------------------------------
diff --git 
a/src/main/org/apache/tools/ant/types/resources/comparators/DelegatedResourceComparator.java
 
b/src/main/org/apache/tools/ant/types/resources/comparators/DelegatedResourceComparator.java
index 6f25370..949531a 100644
--- 
a/src/main/org/apache/tools/ant/types/resources/comparators/DelegatedResourceComparator.java
+++ 
b/src/main/org/apache/tools/ant/types/resources/comparators/DelegatedResourceComparator.java
@@ -54,7 +54,7 @@ public class DelegatedResourceComparator extends 
ResourceComparator {
 
     /**
      * Equality method based on the vector of resources,
-     * or if a reference, the referredto object.
+     * or if a reference, the referred to object.
      * @param o the object to check against.
      * @return true if there is equality.
      */
@@ -64,7 +64,7 @@ public class DelegatedResourceComparator extends 
ResourceComparator {
             return true;
         }
         if (isReference()) {
-            return getCheckedRef().equals(o);
+            return getCheckedRef(DelegatedResourceComparator.class).equals(o);
         }
         if (o instanceof DelegatedResourceComparator) {
             List<ResourceComparator> ov = ((DelegatedResourceComparator) 
o).resourceComparators;
@@ -80,7 +80,7 @@ public class DelegatedResourceComparator extends 
ResourceComparator {
     @Override
     public synchronized int hashCode() {
         if (isReference()) {
-            return getCheckedRef().hashCode();
+            return getCheckedRef(DelegatedResourceComparator.class).hashCode();
         }
         return resourceComparators == null ? 0 : 
resourceComparators.hashCode();
     }

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/resources/comparators/ResourceComparator.java
----------------------------------------------------------------------
diff --git 
a/src/main/org/apache/tools/ant/types/resources/comparators/ResourceComparator.java
 
b/src/main/org/apache/tools/ant/types/resources/comparators/ResourceComparator.java
index b565fef..e24477e 100644
--- 
a/src/main/org/apache/tools/ant/types/resources/comparators/ResourceComparator.java
+++ 
b/src/main/org/apache/tools/ant/types/resources/comparators/ResourceComparator.java
@@ -39,7 +39,7 @@ public abstract class ResourceComparator extends DataType 
implements Comparator<
     @Override
     public final int compare(Resource foo, Resource bar) {
         dieOnCircularReference();
-        ResourceComparator c = isReference() ? getCheckedRef() : this;
+        ResourceComparator c = isReference() ? getRef() : this;
         return c.resourceCompare(foo, bar);
     }
 
@@ -51,7 +51,7 @@ public abstract class ResourceComparator extends DataType 
implements Comparator<
     @Override
     public boolean equals(Object o) {
         if (isReference()) {
-            return getCheckedRef().equals(o);
+            return getRef().equals(o);
         }
         return o != null && (o == this || o.getClass().equals(getClass()));
     }
@@ -63,7 +63,7 @@ public abstract class ResourceComparator extends DataType 
implements Comparator<
     @Override
     public synchronized int hashCode() {
         if (isReference()) {
-            return getCheckedRef().hashCode();
+            return getRef().hashCode();
         }
         return getClass().hashCode();
     }
@@ -77,8 +77,7 @@ public abstract class ResourceComparator extends DataType 
implements Comparator<
      */
     protected abstract int resourceCompare(Resource foo, Resource bar);
 
-    @Override
-    protected ResourceComparator getCheckedRef() {
-        return (ResourceComparator) super.getCheckedRef();
+    private ResourceComparator getRef() {
+        return getCheckedRef(ResourceComparator.class);
     }
 }

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java
----------------------------------------------------------------------
diff --git 
a/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java 
b/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java
index 14076a5..61170b1 100644
--- a/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java
+++ b/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java
@@ -100,7 +100,7 @@ public class Compare extends DataType implements 
ResourceSelector {
     /** {@inheritDoc} */
     public synchronized boolean isSelected(Resource r) {
         if (isReference()) {
-            return ((ResourceSelector) getCheckedRef()).isSelected(r);
+            return getRef().isSelected(r);
         }
         if (control == null) {
             throw oneControl();
@@ -140,6 +140,10 @@ public class Compare extends DataType implements 
ResourceSelector {
         }
     }
 
+    private ResourceSelector getRef() {
+        return getCheckedRef(ResourceSelector.class);
+    }
+
     private BuildException oneControl() {
         return new BuildException("%s the <control> element should be 
specified exactly once.",
                 super.toString());

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/resources/selectors/ResourceSelectorContainer.java
----------------------------------------------------------------------
diff --git 
a/src/main/org/apache/tools/ant/types/resources/selectors/ResourceSelectorContainer.java
 
b/src/main/org/apache/tools/ant/types/resources/selectors/ResourceSelectorContainer.java
index 9ac639c..c82defe 100644
--- 
a/src/main/org/apache/tools/ant/types/resources/selectors/ResourceSelectorContainer.java
+++ 
b/src/main/org/apache/tools/ant/types/resources/selectors/ResourceSelectorContainer.java
@@ -72,7 +72,7 @@ public class ResourceSelectorContainer extends DataType {
      */
     public boolean hasSelectors() {
         if (isReference()) {
-            return getCheckedRef().hasSelectors();
+            return getRef().hasSelectors();
         }
         dieOnCircularReference();
         return !resourceSelectors.isEmpty();
@@ -84,7 +84,7 @@ public class ResourceSelectorContainer extends DataType {
      */
     public int selectorCount() {
         if (isReference()) {
-            return getCheckedRef().selectorCount();
+            return getRef().selectorCount();
         }
         dieOnCircularReference();
         return resourceSelectors.size();
@@ -96,7 +96,7 @@ public class ResourceSelectorContainer extends DataType {
      */
     public Iterator<ResourceSelector> getSelectors() {
         if (isReference()) {
-            return getCheckedRef().getSelectors();
+            return getRef().getSelectors();
         }
         return getResourceSelectors().iterator();
     }
@@ -107,7 +107,7 @@ public class ResourceSelectorContainer extends DataType {
      */
     public List<ResourceSelector> getResourceSelectors() {
         if (isReference()) {
-            return getCheckedRef().getResourceSelectors();
+            return getRef().getResourceSelectors();
         }
         dieOnCircularReference();
         return Collections.unmodifiableList(resourceSelectors);
@@ -136,8 +136,7 @@ public class ResourceSelectorContainer extends DataType {
         }
     }
 
-    @Override
-    protected ResourceSelectorContainer getCheckedRef() {
-        return (ResourceSelectorContainer) super.getCheckedRef();
+    private ResourceSelectorContainer getRef() {
+        return getCheckedRef(ResourceSelectorContainer.class);
     }
 }

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/selectors/AbstractSelectorContainer.java
----------------------------------------------------------------------
diff --git 
a/src/main/org/apache/tools/ant/types/selectors/AbstractSelectorContainer.java 
b/src/main/org/apache/tools/ant/types/selectors/AbstractSelectorContainer.java
index f8f9b19..b02ee39 100644
--- 
a/src/main/org/apache/tools/ant/types/selectors/AbstractSelectorContainer.java
+++ 
b/src/main/org/apache/tools/ant/types/selectors/AbstractSelectorContainer.java
@@ -50,7 +50,7 @@ public abstract class AbstractSelectorContainer extends 
DataType
     @Override
     public boolean hasSelectors() {
         if (isReference()) {
-            return getCheckedRef().hasSelectors();
+            return getRef().hasSelectors();
         }
         dieOnCircularReference();
         return !selectorsList.isEmpty();
@@ -62,7 +62,7 @@ public abstract class AbstractSelectorContainer extends 
DataType
      */
     public int selectorCount() {
         if (isReference()) {
-            return getCheckedRef().selectorCount();
+            return getRef().selectorCount();
         }
         dieOnCircularReference();
         return selectorsList.size();
@@ -75,8 +75,7 @@ public abstract class AbstractSelectorContainer extends 
DataType
      */
     public FileSelector[] getSelectors(Project p) {
         if (isReference()) {
-            return getCheckedRef(AbstractSelectorContainer.class,
-                getDataTypeName(), p).getSelectors(p);
+            return getRef(p).getSelectors(p);
         }
         dieOnCircularReference(p);
         return selectorsList.toArray(new FileSelector[selectorsList.size()]);
@@ -88,7 +87,7 @@ public abstract class AbstractSelectorContainer extends 
DataType
      */
     public Enumeration<FileSelector> selectorElements() {
         if (isReference()) {
-            return getCheckedRef().selectorElements();
+            return getRef().selectorElements();
         }
         dieOnCircularReference();
         return Collections.enumeration(selectorsList);
@@ -137,7 +136,7 @@ public abstract class AbstractSelectorContainer extends 
DataType
      */
     public void validate() {
         if (isReference()) {
-            getCheckedRef().validate();
+            getRef().validate();
         }
         dieOnCircularReference();
         selectorsList.stream().filter(BaseSelector.class::isInstance)
@@ -367,7 +366,7 @@ public abstract class AbstractSelectorContainer extends 
DataType
 
     public synchronized Object clone() {
         if (isReference()) {
-            return getCheckedRef().clone();
+            return getRef().clone();
         }
         try {
             AbstractSelectorContainer sc =
@@ -379,9 +378,13 @@ public abstract class AbstractSelectorContainer extends 
DataType
         }
     }
 
-    @Override
-    protected AbstractSelectorContainer getCheckedRef() {
-        return (AbstractSelectorContainer) super.getCheckedRef();
+
+    private AbstractSelectorContainer getRef(Project p) {
+        return getCheckedRef(AbstractSelectorContainer.class, 
getDataTypeName(), p);
+    }
+
+    private AbstractSelectorContainer getRef() {
+        return getCheckedRef(AbstractSelectorContainer.class);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/selectors/BaseSelector.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/types/selectors/BaseSelector.java 
b/src/main/org/apache/tools/ant/types/selectors/BaseSelector.java
index 7ae6d80..fbd37e4 100644
--- a/src/main/org/apache/tools/ant/types/selectors/BaseSelector.java
+++ b/src/main/org/apache/tools/ant/types/selectors/BaseSelector.java
@@ -80,7 +80,7 @@ public abstract class BaseSelector extends DataType 
implements FileSelector {
      */
     public void verifySettings() {
         if (isReference()) {
-            getCheckedRef().verifySettings();
+            getRef().verifySettings();
         }
     }
 
@@ -114,9 +114,8 @@ public abstract class BaseSelector extends DataType 
implements FileSelector {
     public abstract boolean isSelected(File basedir, String filename,
                                        File file);
 
-    @Override
-    protected BaseSelector getCheckedRef() {
-        return (BaseSelector) super.getCheckedRef();
+    private BaseSelector getRef() {
+        return getCheckedRef(BaseSelector.class);
     }
 }
 

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/main/org/apache/tools/ant/types/selectors/SelectSelector.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/types/selectors/SelectSelector.java 
b/src/main/org/apache/tools/ant/types/selectors/SelectSelector.java
index 82afd06..e63fe93 100644
--- a/src/main/org/apache/tools/ant/types/selectors/SelectSelector.java
+++ b/src/main/org/apache/tools/ant/types/selectors/SelectSelector.java
@@ -66,7 +66,7 @@ public class SelectSelector extends BaseSelectorContainer {
      * referenced Selector.
      */
     private SelectSelector getRef() {
-        return getCheckedRef(this.getClass(), "SelectSelector");
+        return getCheckedRef(SelectSelector.class);
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/ant/blob/57895fd0/src/tests/junit/org/apache/tools/ant/taskdefs/TarTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/TarTest.java 
b/src/tests/junit/org/apache/tools/ant/taskdefs/TarTest.java
index d3f583a..09bec7d 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/TarTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/TarTest.java
@@ -182,5 +182,8 @@ public class TarTest {
                 FileUtilities.getFileContents(new 
File(buildRule.getProject().getProperty("output"), "untar/asf-logo.gif.gz")));
     }
 
-
+    @Test
+    public void testtestTarFilesetWithReference() {
+        buildRule.executeTarget("testTarFilesetWithReference");
+    }
 }

Reply via email to