You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by ri...@apache.org on 2006/02/08 10:10:14 UTC
svn commit: r375903 - in
/incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader:
ContentDirectoryContent.java JarContent.java
Author: rickhall
Date: Wed Feb 8 01:10:13 2006
New Revision: 375903
URL: http://svn.apache.org/viewcvs?rev=375903&view=rev
Log:
Modified ContentDirectoryContent.getEntryPaths() to return entry paths
as if the path associated with the object is the root of the content; this
makes logical sense, but it really doesn't matter since no one should
actually use this method for this type of content.
Modified:
incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/ContentDirectoryContent.java
incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/JarContent.java
Modified: incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/ContentDirectoryContent.java
URL: http://svn.apache.org/viewcvs/incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/ContentDirectoryContent.java?rev=375903&r1=375902&r2=375903&view=diff
==============================================================================
--- incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/ContentDirectoryContent.java (original)
+++ incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/ContentDirectoryContent.java Wed Feb 8 01:10:13 2006
@@ -23,14 +23,14 @@
public class ContentDirectoryContent implements IContent
{
private IContent m_content = null;
- private String m_path = null;
+ private String m_rootPath = null;
private boolean m_opened = false;
public ContentDirectoryContent(IContent content, String path)
{
m_content = content;
// Add a '/' to the end if not present.
- m_path = (path.length() > 0) && (path.charAt(path.length() - 1) != '/')
+ m_rootPath = (path.length() > 0) && (path.charAt(path.length() - 1) != '/')
? path + "/" : path;
}
@@ -78,7 +78,7 @@
name = name.substring(1);
}
- return m_content.hasEntry(m_path + name);
+ return m_content.hasEntry(m_rootPath + name);
}
public synchronized byte[] getEntry(String name) throws IllegalStateException
@@ -93,7 +93,7 @@
name = name.substring(1);
}
- return m_content.getEntry(m_path + name);
+ return m_content.getEntry(m_rootPath + name);
}
public synchronized InputStream getEntryAsStream(String name)
@@ -109,7 +109,7 @@
name = name.substring(1);
}
- return m_content.getEntryAsStream(m_path + name);
+ return m_content.getEntryAsStream(m_rootPath + name);
}
public synchronized Enumeration getEntryPaths(String path)
@@ -124,11 +124,38 @@
path = path.substring(1);
}
- return m_content.getEntryPaths(m_path + path);
+System.out.println("GET ENTRY PATHS FOR " + m_rootPath + path);
+ return new WrappedEnumeration(m_content.getEntryPaths(m_rootPath + path), m_rootPath);
}
public String toString()
{
- return "CONTENT DIR " + m_path + " (" + m_content + ")";
+ return "CONTENT DIR " + m_rootPath + " (" + m_content + ")";
+ }
+
+ private static class WrappedEnumeration implements Enumeration
+ {
+ private Enumeration m_enumeration = null;
+ private String m_rootPath = null;
+
+ public WrappedEnumeration(Enumeration enumeration, String rootPath)
+ {
+ m_enumeration = enumeration;
+ m_rootPath = rootPath;
+ }
+
+ public boolean hasMoreElements()
+ {
+ return m_enumeration.hasMoreElements();
+ }
+
+ public Object nextElement()
+ {
+ // We need to treat the specified path as the root of the
+ // content, so we need to strip off the leading path from
+ // each entry because it is automatically added back on
+ // in the other calls above.
+ return ((String) m_enumeration.nextElement()).substring(m_rootPath.length());
+ }
}
}
Modified: incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/JarContent.java
URL: http://svn.apache.org/viewcvs/incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/JarContent.java?rev=375903&r1=375902&r2=375903&view=diff
==============================================================================
--- incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/JarContent.java (original)
+++ incubator/felix/trunk/org.apache.felix.framework/src/main/java/org/apache/felix/moduleloader/JarContent.java Wed Feb 8 01:10:13 2006
@@ -123,7 +123,7 @@
}
catch (IOException ex)
{
- System.err.println("JarResourceSource: " + ex);
+ System.err.println("JarContent: " + ex);
return null;
}
}
@@ -194,7 +194,7 @@
}
catch (IOException ex)
{
- System.err.println("JarResourceSource: " + ex);
+ System.err.println("JarContent: " + ex);
return null;
}
}
@@ -239,7 +239,7 @@
}
catch (IOException ex)
{
- System.err.println("JarResourceSource: " + ex);
+ System.err.println("JarContent: " + ex);
return null;
}
}