[jboss-cvs] JBossAS SVN: r75543 - in projects/microcontainer/trunk: dependency/src/main/org/jboss/dependency/plugins/graph and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jul 9 08:01:03 EDT 2008
Author: alesj
Date: 2008-07-09 08:01:02 -0400 (Wed, 09 Jul 2008)
New Revision: 75543
Added:
projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentLookupStrategy.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/ScopeHierarchyBuilder.java
Modified:
projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/AbstractController.java
projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentOnlyLookupStrategy.java
projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/Search.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/InstallScopeAction.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/PreInstallAction.java
projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/test/search/AbstractSearchAnnotationSupportTest.java
projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/test/search/OrderSearchAnnotationSupportTestCase.java
Log:
Do controller hierarchy properly - build missing scopes.
Modified: projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/AbstractController.java
===================================================================
--- projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/AbstractController.java 2008-07-09 11:49:34 UTC (rev 75542)
+++ projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/AbstractController.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -341,7 +341,18 @@
lockRead();
try
{
- return allContexts.isEmpty() == false;
+ // is this active
+ if (allContexts.isEmpty() == false)
+ return true;
+
+ // any of the children still active
+ for (AbstractController child : getControllers())
+ {
+ if (child.isActive())
+ return true;
+ }
+
+ return false;
}
finally
{
Copied: projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentLookupStrategy.java (from rev 75493, projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentOnlyLookupStrategy.java)
===================================================================
--- projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentLookupStrategy.java (rev 0)
+++ projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentLookupStrategy.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.dependency.plugins.graph;
+
+import org.jboss.dependency.plugins.AbstractController;
+import org.jboss.dependency.spi.ControllerContext;
+import org.jboss.dependency.spi.ControllerState;
+
+/**
+ * Check parent.
+ * Return null if there is no parent.
+ *
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class ParentLookupStrategy extends AbstractLookupStrategy
+{
+ protected ControllerContext getContextInternal(AbstractController controller, Object name, ControllerState state)
+ {
+ AbstractController parent = controller.getParentController();
+ if (parent != null)
+ return parent.getContext(name, state);
+ else
+ return null;
+ }
+}
\ No newline at end of file
Modified: projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentOnlyLookupStrategy.java
===================================================================
--- projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentOnlyLookupStrategy.java 2008-07-09 11:49:34 UTC (rev 75542)
+++ projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/ParentOnlyLookupStrategy.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -31,13 +31,13 @@
*
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
-public class ParentOnlyLookupStrategy extends AbstractLookupStrategy
+public class ParentOnlyLookupStrategy extends HierarchyLookupStrategy
{
protected ControllerContext getContextInternal(AbstractController controller, Object name, ControllerState state)
{
AbstractController parent = controller.getParentController();
if (parent != null)
- return parent.getContext(name, state);
+ return getLocalContext(parent, name, state);
else
return null;
}
Modified: projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/Search.java
===================================================================
--- projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/Search.java 2008-07-09 11:49:34 UTC (rev 75542)
+++ projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/plugins/graph/Search.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -34,7 +34,8 @@
DEFAULT(new DefaultSearchInfoWrapper()),
LOCAL(new LocalLookupStrategy()),
TOP(new TopLevelLookupStrategy()),
- PARENT(new ParentOnlyLookupStrategy()),
+ PARENT_ONLY(new ParentOnlyLookupStrategy()),
+ PARENT(new ParentLookupStrategy()),
DEPTH(new DepthLookupStrategy()),
LEAVES(new LeavesFirstLookupStrategy()),
WIDTH(new WidthLookupStrategy()),
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/InstallScopeAction.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/InstallScopeAction.java 2008-07-09 11:49:34 UTC (rev 75542)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/InstallScopeAction.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -26,11 +26,7 @@
import org.jboss.dependency.spi.ControllerContext;
import org.jboss.kernel.spi.dependency.KernelController;
import org.jboss.kernel.spi.metadata.KernelMetaDataRepository;
-import org.jboss.metadata.plugins.loader.memory.MemoryMetaDataLoader;
-import org.jboss.metadata.spi.MutableMetaData;
import org.jboss.metadata.spi.repository.MutableMetaDataRepository;
-import org.jboss.metadata.spi.retrieval.MetaDataItem;
-import org.jboss.metadata.spi.retrieval.MetaDataRetrieval;
import org.jboss.metadata.spi.scope.ScopeKey;
/**
@@ -48,51 +44,17 @@
if (scopeKey != null)
{
Controller controller = context.getController();
- if (controller instanceof KernelController == false)
- throw new IllegalArgumentException("Can only handle kernel controller: " + controller);
+ if (controller instanceof AbstractKernelController == false)
+ throw new IllegalArgumentException("Can only handle AbstractKernelController: " + controller);
- KernelController kernelController = (KernelController)controller;
+ AbstractKernelController kernelController = (AbstractKernelController)controller;
KernelMetaDataRepository repository = kernelController.getKernel().getMetaDataRepository();
-
MutableMetaDataRepository mmdr = repository.getMetaDataRepository();
- MetaDataRetrieval mdr = mmdr.getMetaDataRetrieval(scopeKey);
- if (mdr == null)
- {
- mdr = new MemoryMetaDataLoader(scopeKey);
- mmdr.addMetaDataRetrieval(mdr);
- }
- MetaDataItem<ScopedKernelController> controllerItem = mdr.retrieveMetaData(ScopedKernelController.class);
- ScopedKernelController scopedController;
- if (controllerItem != null)
- {
- scopedController = controllerItem.getValue();
- }
- else
- {
- AbstractController parentController = null;
- ScopeKey parentKey = scopeKey.getParent();
- while (parentController == null && parentKey != null)
- {
- MetaDataRetrieval pmdr = mmdr.getMetaDataRetrieval(parentKey);
- if (pmdr != null)
- {
- MetaDataItem<ScopedKernelController> pci = pmdr.retrieveMetaData(ScopedKernelController.class);
- if (pci != null)
- {
- parentController = pci.getValue();
- }
- }
- parentKey = parentKey.getParent();
- }
- if (parentController == null)
- {
- if (kernelController instanceof AbstractController == false)
- throw new IllegalArgumentException("Underlying controller not AbstractController instance!");
- parentController = (AbstractController)kernelController;
- }
- scopedController = new ScopedKernelController(kernelController.getKernel(), parentController, scopeKey);
- ((MutableMetaData)mdr).addMetaData(scopedController, ScopedKernelController.class);
- }
+ AbstractController abstractController = ScopeHierarchyBuilder.buildControllerHierarchy(kernelController, mmdr, scopeKey);
+ if (abstractController instanceof ScopedKernelController == false)
+ throw new IllegalArgumentException("Should be ScopedKernelController instance: " + abstractController);
+
+ ScopedKernelController scopedController = (ScopedKernelController)abstractController;
scopedController.addScopedControllerContext(context);
}
}
@@ -111,29 +73,7 @@
// find scoped controller
MutableMetaDataRepository mmdr = repository.getMetaDataRepository();
- MetaDataRetrieval mdr = mmdr.getMetaDataRetrieval(scopeKey);
- if (mdr == null)
- {
- throw new IllegalArgumentException("Expecting MetaDataRetrieval instance in scope: " + scopeKey);
- }
- MetaDataItem<ScopedKernelController> controllerItem = mdr.retrieveMetaData(ScopedKernelController.class);
- if (controllerItem == null)
- {
- throw new IllegalArgumentException("Expecting ScopedKernelController instance in scope:" + scopeKey);
- }
- ScopedKernelController scopedController = controllerItem.getValue();
- scopedController.removeScopedControllerContext(context);
- if (scopedController.isActive() == false)
- {
- try
- {
- ((MutableMetaData)mdr).removeMetaData(ScopedKernelController.class);
- }
- finally
- {
- scopedController.release();
- }
- }
+ ScopeHierarchyBuilder.cleanControllerHierarchy(mmdr, scopeKey, context);
}
}
}
\ No newline at end of file
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/PreInstallAction.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/PreInstallAction.java 2008-07-09 11:49:34 UTC (rev 75542)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/PreInstallAction.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -37,12 +37,8 @@
import org.jboss.kernel.spi.dependency.KernelController;
import org.jboss.kernel.spi.dependency.KernelControllerContext;
import org.jboss.kernel.spi.metadata.KernelMetaDataRepository;
-import org.jboss.metadata.plugins.loader.memory.MemoryMetaDataLoader;
import org.jboss.metadata.spi.MetaData;
-import org.jboss.metadata.spi.MutableMetaData;
import org.jboss.metadata.spi.repository.MutableMetaDataRepository;
-import org.jboss.metadata.spi.retrieval.MetaDataItem;
-import org.jboss.metadata.spi.retrieval.MetaDataRetrieval;
import org.jboss.metadata.spi.scope.Scope;
import org.jboss.metadata.spi.scope.ScopeFactory;
import org.jboss.metadata.spi.scope.ScopeFactoryLookup;
@@ -161,45 +157,15 @@
scopeKey.freeze();
context.getScopeInfo().setInstallScope(scopeKey);
+ if (controller instanceof AbstractKernelController == false)
+ throw new IllegalArgumentException("Can only handle AbstractKernelController: " + controller);
+
MutableMetaDataRepository mmdr = repository.getMetaDataRepository();
- MetaDataRetrieval mdr = mmdr.getMetaDataRetrieval(scopeKey);
- if (mdr == null)
- {
- mdr = new MemoryMetaDataLoader(scopeKey);
- mmdr.addMetaDataRetrieval(mdr);
- }
- MetaDataItem<ScopedKernelController> controllerItem = mdr.retrieveMetaData(ScopedKernelController.class);
- ScopedKernelController scopedController;
- if (controllerItem != null)
- {
- scopedController = controllerItem.getValue();
- }
- else
- {
- AbstractController parentController = null;
- ScopeKey parentKey = scopeKey.getParent();
- while (parentController == null && parentKey != null)
- {
- MetaDataRetrieval pmdr = mmdr.getMetaDataRetrieval(parentKey);
- if (pmdr != null)
- {
- MetaDataItem<ScopedKernelController> pci = pmdr.retrieveMetaData(ScopedKernelController.class);
- if (pci != null)
- {
- parentController = pci.getValue();
- }
- }
- parentKey = parentKey.getParent();
- }
- if (parentController == null)
- {
- if (controller instanceof AbstractController == false)
- throw new IllegalArgumentException("Underlying controller not AbstractController instance!");
- parentController = (AbstractController) controller;
- }
- scopedController = new ScopedKernelController(controller.getKernel(), parentController, scopeKey);
- ((MutableMetaData)mdr).addMetaData(scopedController, ScopedKernelController.class);
- }
+ AbstractController abstractController = ScopeHierarchyBuilder.buildControllerHierarchy((AbstractKernelController)controller, mmdr, scopeKey);
+ if (abstractController instanceof ScopedKernelController == false)
+ throw new IllegalArgumentException("Should be ScopedKernelController instance: " + abstractController);
+
+ ScopedKernelController scopedController = (ScopedKernelController)abstractController;
scopedController.addScopedControllerContext(context);
}
}
@@ -213,29 +179,7 @@
KernelMetaDataRepository repository = controller.getKernel().getMetaDataRepository();
// find scoped controller
MutableMetaDataRepository mmdr = repository.getMetaDataRepository();
- MetaDataRetrieval mdr = mmdr.getMetaDataRetrieval(scopeKey);
- if (mdr == null)
- {
- throw new IllegalArgumentException("Expecting MetaDataRetrieval instance in scope: " + scopeKey);
- }
- MetaDataItem<ScopedKernelController> controllerItem = mdr.retrieveMetaData(ScopedKernelController.class);
- if (controllerItem == null)
- {
- throw new IllegalArgumentException("Expecting ScopedKernelController instance in scope:" + scopeKey);
- }
- ScopedKernelController scopedController = controllerItem.getValue();
- scopedController.removeScopedControllerContext(context);
- if (scopedController.isActive() == false)
- {
- try
- {
- ((MutableMetaData)mdr).removeMetaData(ScopedKernelController.class);
- }
- finally
- {
- scopedController.release();
- }
- }
+ ScopeHierarchyBuilder.cleanControllerHierarchy(mmdr, scopeKey, context);
}
}
Copied: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/ScopeHierarchyBuilder.java (from rev 75298, projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/PreInstallAction.java)
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/ScopeHierarchyBuilder.java (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/ScopeHierarchyBuilder.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -0,0 +1,115 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.plugins.AbstractController;
+import org.jboss.dependency.spi.ControllerContext;
+import org.jboss.metadata.spi.MutableMetaData;
+import org.jboss.metadata.spi.repository.MutableMetaDataRepository;
+import org.jboss.metadata.spi.retrieval.MetaDataItem;
+import org.jboss.metadata.spi.retrieval.MetaDataRetrieval;
+import org.jboss.metadata.spi.scope.ScopeKey;
+import org.jboss.metadata.plugins.loader.memory.MemoryMetaDataLoader;
+
+/**
+ * ScopeHierarchyBuilder.
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public final class ScopeHierarchyBuilder
+{
+ /**
+ * Create whole hierarchy.
+ * Fill in missing controllers.
+ *
+ * @param top the top controller
+ * @param mmdr the mutable metadata repository
+ * @param scopeKey the current scope key
+ * @return controller for current scope key
+ * @throws Throwable for any error
+ */
+ public static AbstractController buildControllerHierarchy(AbstractKernelController top, MutableMetaDataRepository mmdr, ScopeKey scopeKey) throws Throwable
+ {
+ if (scopeKey == null)
+ return top;
+
+ MetaDataRetrieval mdr = mmdr.getMetaDataRetrieval(scopeKey);
+ if (mdr != null)
+ {
+ MetaDataItem<ScopedKernelController> mdi = mdr.retrieveMetaData(ScopedKernelController.class);
+ if (mdi != null)
+ return mdi.getValue();
+ }
+ else
+ {
+ mdr = new MemoryMetaDataLoader(scopeKey);
+ mmdr.addMetaDataRetrieval(mdr);
+ }
+
+ AbstractController parentController = buildControllerHierarchy(top, mmdr, scopeKey.getParent());
+ ScopedKernelController scopedKernelController = new ScopedKernelController(top.getKernel(), parentController, scopeKey);
+ ((MutableMetaData)mdr).addMetaData(scopedKernelController, ScopedKernelController.class);
+
+ return scopedKernelController;
+ }
+
+ /**
+ * Clean controller hierarchy.
+ *
+ * @param mmdr the mutable metadata repository
+ * @param scopeKey the current scope key
+ * @param context the context to remove
+ */
+ public static void cleanControllerHierarchy(MutableMetaDataRepository mmdr, ScopeKey scopeKey, ControllerContext context)
+ {
+ if (scopeKey == null)
+ return;
+
+ MetaDataRetrieval mdr = mmdr.getMetaDataRetrieval(scopeKey);
+ if (mdr == null)
+ {
+ throw new IllegalArgumentException("Expecting MetaDataRetrieval instance in scope: " + scopeKey);
+ }
+ MetaDataItem<ScopedKernelController> controllerItem = mdr.retrieveMetaData(ScopedKernelController.class);
+ if (controllerItem == null)
+ {
+ throw new IllegalArgumentException("Expecting ScopedKernelController instance in scope:" + scopeKey);
+ }
+ ScopedKernelController scopedController = controllerItem.getValue();
+ if (context != null)
+ scopedController.removeScopedControllerContext(context);
+
+ if (scopedController.isActive() == false)
+ {
+ try
+ {
+ ((MutableMetaData)mdr).removeMetaData(ScopedKernelController.class);
+ }
+ finally
+ {
+ scopedController.release();
+ }
+ }
+
+ cleanControllerHierarchy(mmdr, scopeKey.getParent(), null);
+ }
+}
\ No newline at end of file
Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/test/search/AbstractSearchAnnotationSupportTest.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/test/search/AbstractSearchAnnotationSupportTest.java 2008-07-09 11:49:34 UTC (rev 75542)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/test/search/AbstractSearchAnnotationSupportTest.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -21,8 +21,6 @@
*/
package org.jboss.test.kernel.annotations.test.search;
-import java.util.UUID;
-
import org.jboss.beans.metadata.api.annotations.Aliases;
import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
import org.jboss.dependency.spi.ControllerContext;
@@ -44,6 +42,8 @@
*/
public abstract class AbstractSearchAnnotationSupportTest extends AbstractBeanAnnotationAdapterTest
{
+ protected static int counter = 0;
+
protected AbstractSearchAnnotationSupportTest(String name)
{
super(name);
@@ -78,7 +78,7 @@
protected ControllerContext install(String scope, String app, String deployment, int id) throws Throwable
{
- BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(UUID.randomUUID().toString(), ScopeTester.class.getName());
+ BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder("tester" + (++counter), ScopeTester.class.getName());
builder.addConstructorParameter(String.class.getName(), scope);
builder.addAnnotation("@" + Aliases.class.getName() + "({\"bean\"})");
Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/test/search/OrderSearchAnnotationSupportTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/test/search/OrderSearchAnnotationSupportTestCase.java 2008-07-09 11:49:34 UTC (rev 75542)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/test/search/OrderSearchAnnotationSupportTestCase.java 2008-07-09 12:01:02 UTC (rev 75543)
@@ -58,10 +58,11 @@
List<ControllerContext> contexts = new ArrayList<ControllerContext>();
try
{
+ contexts.add(install("child", "main", "core", 1));
+ contexts.add(install("parent", "main", null, -1));
+ contexts.add(install("local", "main", "core", -1));
contexts.add(install("top", null, null, -1));
- contexts.add(install("local", "main", "core", -1));
- contexts.add(install("child", "main", "core", 1));
// here we need a little push - since by default we only do parent hierarchy resolution
controller.change(context, ControllerState.INSTALLED);
@@ -73,7 +74,8 @@
ListIterator<ControllerContext> iter = contexts.listIterator(contexts.size());
while (iter.hasPrevious())
{
- getController().uninstall(iter.previous().getName());
+ Object name = iter.previous().getName();
+ getController().uninstall(name);
}
}
}
@@ -83,7 +85,7 @@
SearchInjection si = (SearchInjection)target;
// ony check exact one's
assertScopeTester(si.getTop(), "top");
- assertScopeTester(si.getParent(), "top");
+ assertScopeTester(si.getParent(), "parent");
assertScopeTester(si.getLocal(), "local");
assertScopeTester(si.getChildrenOnly(), "child");
assertScopeTester(si.getLeaves(), "child");
More information about the jboss-cvs-commits
mailing list