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/02 16:29:47 UTC
svn commit: r374410 - in
/incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix:
framework/searchpolicy/ moduleloader/
Author: rickhall
Date: Thu Feb 2 07:29:42 2006
New Revision: 374410
URL: http://svn.apache.org/viewcvs?rev=374410&view=rev
Log:
Added ISearchPolicy.definePackage() to re-implement some functionality
in the trunk HEAD.
Modified:
incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/ContentClassLoader.java
incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/IR4SearchPolicy.java
incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicy.java
incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicyCore.java
incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/moduleloader/ISearchPolicy.java
Modified: incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/ContentClassLoader.java
URL: http://svn.apache.org/viewcvs/incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/ContentClassLoader.java?rev=374410&r1=374409&r2=374410&view=diff
==============================================================================
--- incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/ContentClassLoader.java (original)
+++ incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/ContentClassLoader.java Thu Feb 2 07:29:42 2006
@@ -109,10 +109,9 @@
{
if (getPackage(pkgName) == null)
{
- Object[] params = null;
-// TODO: FIX PACKAGE POLICY.
-// Object[] params =
-// m_mgr.getSearchPolicy().definePackage(m_module, pkgName);
+ Object[] params =
+ m_contentLoader.getSearchPolicy()
+ .definePackage(pkgName);
if (params != null)
{
definePackage(
Modified: incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/IR4SearchPolicy.java
URL: http://svn.apache.org/viewcvs/incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/IR4SearchPolicy.java?rev=374410&r1=374409&r2=374410&view=diff
==============================================================================
--- incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/IR4SearchPolicy.java (original)
+++ incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/IR4SearchPolicy.java Thu Feb 2 07:29:42 2006
@@ -18,6 +18,17 @@
import org.apache.felix.moduleloader.ISearchPolicy;
+/**
+ * <p>
+ * This interface extends the search policy interface with specific
+ * methods related to implementing an R4 search policy. For the most
+ * part, this interface is really implementation specific and should
+ * not be used by any except the R4 search policy implementation or
+ * those that are very sure they know what they are doing. For example,
+ * just blindly calling the various setter methods will likely not
+ * provide the desired results.
+ * </p>
+**/
public interface IR4SearchPolicy extends ISearchPolicy
{
public R4Export[] getExports();
Modified: incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicy.java
URL: http://svn.apache.org/viewcvs/incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicy.java?rev=374410&r1=374409&r2=374410&view=diff
==============================================================================
--- incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicy.java (original)
+++ incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicy.java Thu Feb 2 07:29:42 2006
@@ -31,6 +31,11 @@
m_module = module;
}
+ public Object[] definePackage(String name)
+ {
+ return m_policyCore.definePackage(m_module, name);
+ }
+
public Class findClass(String name)
throws ClassNotFoundException
{
Modified: incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicyCore.java
URL: http://svn.apache.org/viewcvs/incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicyCore.java?rev=374410&r1=374409&r2=374410&view=diff
==============================================================================
--- incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicyCore.java (original)
+++ incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/framework/searchpolicy/R4SearchPolicyCore.java Thu Feb 2 07:29:42 2006
@@ -231,6 +231,23 @@
data.m_resolved = resolved;
}
+ public Object[] definePackage(IModule module, String pkgName)
+ {
+ R4Package pkg = Util.getExportPackage(module, pkgName);
+ if (pkg != null)
+ {
+ return new Object[] {
+ pkgName, // Spec title.
+ pkg.getVersion().toString(), // Spec version.
+ "", // Spec vendor.
+ "", // Impl title.
+ "", // Impl version.
+ "" // Impl vendor.
+ };
+ }
+ return null;
+ }
+
public Class findClass(IModule module, String name)
throws ClassNotFoundException
{
Modified: incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/moduleloader/ISearchPolicy.java
URL: http://svn.apache.org/viewcvs/incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/moduleloader/ISearchPolicy.java?rev=374410&r1=374409&r2=374410&view=diff
==============================================================================
--- incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/moduleloader/ISearchPolicy.java (original)
+++ incubator/felix/sandbox/rickhall/framework-branch/src/main/java/org/apache/felix/moduleloader/ISearchPolicy.java Thu Feb 2 07:29:42 2006
@@ -22,6 +22,7 @@
public interface ISearchPolicy
{
+ public Object[] definePackage(String name);
public Class findClass(String name) throws ClassNotFoundException;
public URL findResource(String name) throws ResourceNotFoundException;
public String findLibrary(String name);