[jboss-cvs] JBossAS SVN: r99857 - in projects/kernel/branches/resolver: kernel/src/main/java/org/jboss/beans/metadata/plugins and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sun Jan 24 07:11:14 EST 2010
Author: kabir.khan at jboss.com
Date: 2010-01-24 07:11:14 -0500 (Sun, 24 Jan 2010)
New Revision: 99857
Added:
projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClearableDependencyItem.java
Modified:
projects/kernel/branches/resolver/dependency/src/main/java/org/jboss/dependency/plugins/resolver/DependencyResolverAbstractFactory.java
projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/beans/metadata/plugins/ContextualInjectionDependencyItem.java
projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/AbstractKernelControllerContext.java
projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClassDependencyItem.java
Log:
Port JBKERNEL-82 and update to use the indexing resolver
Modified: projects/kernel/branches/resolver/dependency/src/main/java/org/jboss/dependency/plugins/resolver/DependencyResolverAbstractFactory.java
===================================================================
--- projects/kernel/branches/resolver/dependency/src/main/java/org/jboss/dependency/plugins/resolver/DependencyResolverAbstractFactory.java 2010-01-24 12:04:21 UTC (rev 99856)
+++ projects/kernel/branches/resolver/dependency/src/main/java/org/jboss/dependency/plugins/resolver/DependencyResolverAbstractFactory.java 2010-01-24 12:11:14 UTC (rev 99857)
@@ -37,8 +37,8 @@
{
//TODO configure with system properties
- String name = "org.jboss.dependency.plugins.resolver.standard.StandardDependencyResolverFactory";
-// String name = "org.jboss.kernel.plugins.resolver.indexing.IndexingKernelDependencyResolverFactory";
+// String name = "org.jboss.dependency.plugins.resolver.standard.StandardDependencyResolverFactory";
+ String name = "org.jboss.kernel.plugins.resolver.indexing.IndexingKernelDependencyResolverFactory";
Class<?> clazz;
try
{
Modified: projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/beans/metadata/plugins/ContextualInjectionDependencyItem.java
===================================================================
--- projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/beans/metadata/plugins/ContextualInjectionDependencyItem.java 2010-01-24 12:04:21 UTC (rev 99856)
+++ projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/beans/metadata/plugins/ContextualInjectionDependencyItem.java 2010-01-24 12:11:14 UTC (rev 99857)
@@ -32,6 +32,7 @@
import org.jboss.dependency.spi.ControllerState;
import org.jboss.dependency.spi.graph.LookupStrategy;
import org.jboss.dependency.spi.graph.SearchInfo;
+import org.jboss.kernel.plugins.dependency.ClearableDependencyItem;
import org.jboss.kernel.plugins.dependency.QualifierKey;
/**
@@ -40,7 +41,7 @@
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
-public class ContextualInjectionDependencyItem extends AbstractDependencyItem
+public class ContextualInjectionDependencyItem extends AbstractDependencyItem implements ClearableDependencyItem
{
private LookupType type;
@@ -121,4 +122,14 @@
{
CLASS, KEY
}
+
+ /**
+ * Clear the class reference.
+ *
+ * @param controller the controller
+ */
+ public void clear(Controller controller)
+ {
+ setIDependOn(null);
+ }
}
\ No newline at end of file
Modified: projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/AbstractKernelControllerContext.java
===================================================================
--- projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/AbstractKernelControllerContext.java 2010-01-24 12:04:21 UTC (rev 99856)
+++ projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/AbstractKernelControllerContext.java 2010-01-24 12:11:14 UTC (rev 99857)
@@ -270,12 +270,12 @@
if (dependencyInfo != null)
{
// remove all dependency items that hold class ref
- Set<DependencyItem> dependencys = dependencyInfo.getIDependOn(ClassContextDependencyItem.class);
- dependencys.addAll(dependencyInfo.getIDependOn(CallbackDependencyItem.class));
+ Set<DependencyItem> dependencys = dependencyInfo.getIDependOn(ClearableDependencyItem.class);
+ dependencys.addAll(dependencyInfo.getIDependOn(ClearableDependencyItem.class));
for (DependencyItem di : dependencys)
{
// can cast because of getIDepend method impl
- ClassDependencyItem cdi = (ClassDependencyItem)di;
+ ClearableDependencyItem cdi = (ClearableDependencyItem)di;
cdi.clear(getController());
}
}
Modified: projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClassDependencyItem.java
===================================================================
--- projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClassDependencyItem.java 2010-01-24 12:04:21 UTC (rev 99856)
+++ projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClassDependencyItem.java 2010-01-24 12:11:14 UTC (rev 99857)
@@ -31,7 +31,7 @@
*
* @author <a href="ales.justin at gmail.com">Ales Justin</a>
*/
-public abstract class ClassDependencyItem extends AbstractDependencyItem
+public abstract class ClassDependencyItem extends AbstractDependencyItem implements ClearableDependencyItem
{
public ClassDependencyItem(Object name, Class<?> demandClass, ControllerState whenRequired, ControllerState dependentState)
{
Copied: projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClearableDependencyItem.java (from rev 99855, projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClearableDependencyItem.java)
===================================================================
--- projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClearableDependencyItem.java (rev 0)
+++ projects/kernel/branches/resolver/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClearableDependencyItem.java 2010-01-24 12:11:14 UTC (rev 99857)
@@ -0,0 +1,34 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.kernel.plugins.dependency;
+
+import org.jboss.dependency.spi.Controller;
+
+/**
+ *
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public interface ClearableDependencyItem
+{
+ void clear(Controller controller);
+}
More information about the jboss-cvs-commits
mailing list