DNA SVN: r428 - in trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java: metadata and 1 other directory.
by dna-commits@lists.jboss.org
Author: spagop
Date: 2008-08-14 17:40:16 -0400 (Thu, 14 Aug 2008)
New Revision: 428
Removed:
trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java
Modified:
trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java
trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java
trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java
Log:
support for sequencing constructors/methods with or without primitive type parameters, return primitive type
Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java 2008-08-14 21:02:38 UTC (rev 427)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java 2008-08-14 21:40:16 UTC (rev 428)
@@ -58,7 +58,7 @@
import org.jboss.dna.sequencer.java.metadata.PackageMetadata;
import org.jboss.dna.sequencer.java.metadata.ParameterizedFieldMetadata;
import org.jboss.dna.sequencer.java.metadata.PrimitiveFieldMetadata;
-import org.jboss.dna.sequencer.java.metadata.ReturnType;
+import org.jboss.dna.sequencer.java.metadata.ReferenceFieldMetadata;
import org.jboss.dna.sequencer.java.metadata.SimpleFieldMetadata;
import org.jboss.dna.sequencer.java.metadata.SingleImportMetadata;
import org.jboss.dna.sequencer.java.metadata.SingleMemberAnnotationMetadata;
@@ -275,16 +275,15 @@
private void processReturnTypeOfMethodDeclaration( MethodDeclaration methodDeclaration,
MethodMetadata methodMetadata ) {
Type type = methodDeclaration.getReturnType2();
- ReturnType returnType = null;
if(type.isPrimitiveType()) {
- returnType = new ReturnType();
- returnType.setName(((PrimitiveType)type).getPrimitiveTypeCode().toString());
- methodMetadata.setReturnType(returnType);
+ PrimitiveFieldMetadata primitive = new PrimitiveFieldMetadata();
+ primitive.setType(((PrimitiveType)type).getPrimitiveTypeCode().toString());
+ methodMetadata.setReturnType(primitive);
}
if(type.isSimpleType()) {
- returnType = new ReturnType();
- returnType.setName(JavaMetadataUtil.getName(((SimpleType)type).getName()));
- methodMetadata.setReturnType(returnType);
+ ReferenceFieldMetadata referenceFieldMetadata = new ReferenceFieldMetadata();
+ referenceFieldMetadata.setType(JavaMetadataUtil.getName(((SimpleType)type).getName()));
+ methodMetadata.setReturnType(referenceFieldMetadata);
}
}
Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java 2008-08-14 21:02:38 UTC (rev 427)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java 2008-08-14 21:40:16 UTC (rev 428)
@@ -184,9 +184,10 @@
// parameter
public static final String JAVA_PARAMETER = "java:parameter";
public static final String JAVA_FORMAL_PARAMETER = "java:formalParameter";
-
public static final String JAVA_PARAMETER_NAME = "java:parameterName";
+ public static final String JAVA_RETURN_TYPE = "java:resultType";
+
/**
* {@inheritDoc}
*
@@ -435,24 +436,27 @@
modifierMetadata.getName());
constructorModifierIndex++;
}
- // parameters
- List<FieldMetadata> params = constructorMetadata.getParameters();
+
+ // constructor parameters
int constructorParameterIndex = 1;
- for (FieldMetadata fieldMetadata2 : params) {
- String constructorParameterPath = createPathWithIndex(constructorRootPath.toString() + SLASH
- + JAVA_PARAMETER + SLASH
- + JAVA_FORMAL_PARAMETER,
- constructorParameterIndex).toString();
+ for (FieldMetadata fieldMetadata2 : constructorMetadata.getParameters()) {
+
+ String constructorParameterRootPath = createPathWithIndex(constructorRootPath.toString() + SLASH
+ + JAVA_PARAMETER + SLASH
+ + JAVA_FORMAL_PARAMETER,
+ constructorParameterIndex).toString();
+
if (fieldMetadata2 instanceof PrimitiveFieldMetadata) {
+
PrimitiveFieldMetadata primitive = (PrimitiveFieldMetadata)fieldMetadata2;
- String constructPrimitiveFormalParamRootPath = createPath(constructorParameterPath + SLASH
- + JAVA_TYPE_CHILD_NODE + SLASH
+ String constructPrimitiveFormalParamRootPath = createPath(constructorParameterRootPath
+ + SLASH + JAVA_TYPE_CHILD_NODE
+ + SLASH
+ JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
- List<Variable> paramterVariables = primitive.getVariables();
String constructorPrimitiveParamVariablePath = createPath(constructPrimitiveFormalParamRootPath
+ SLASH + JAVA_VARIABLE).toString();
Path constructorParamChildNode = pathFactory.create(constructorPrimitiveParamVariablePath);
- for (Variable variable : paramterVariables) {
+ for (Variable variable : primitive.getVariables()) {
// name
output.setProperty(constructorParamChildNode,
nameFactory.create(JAVA_VARIABLE_NAME),
@@ -465,8 +469,9 @@
primitive.getType());
}
-
- // TODO for reference types
+
+ // TODO parameter reference types
+
constructorParameterIndex++;
}
@@ -486,6 +491,77 @@
output.setProperty(methodChildNode,
nameFactory.create(JAVA_METHOD_NAME),
methodTypeMemberMetadata.getName());
+
+ // method modifiers
+ int methodModierIndex = 1;
+ for (ModifierMetadata modifierMetadata : methodTypeMemberMetadata.getModifiers()) {
+ String methodModifierPath = createPathWithIndex(methodRootPath.toString() + SLASH
+ + JAVA_MODIFIER_CHILD_NODE + SLASH
+ + JAVA_MODIFIER_DECLARATION_CHILD_NODE,
+ methodModierIndex).toString();
+ Path methodModifierChildNode = pathFactory.create(methodModifierPath);
+ output.setProperty(methodModifierChildNode,
+ nameFactory.create(JAVA_MODIFIER_NAME),
+ modifierMetadata.getName());
+ methodModierIndex++;
+ }
+
+ int methodParameterIndex = 1;
+ for (FieldMetadata fieldMetadata : methodMetadata.getParameters()) {
+
+ String methodPrimitiveParamRootPath = createPathWithIndex(methodRootPath.toString() + SLASH
+ + JAVA_PARAMETER + SLASH
+ + JAVA_FORMAL_PARAMETER,
+ methodParameterIndex).toString();
+
+ if (fieldMetadata instanceof PrimitiveFieldMetadata) {
+
+ PrimitiveFieldMetadata primitive = (PrimitiveFieldMetadata)fieldMetadata;
+
+ String methodPrimitiveFormalParamRootPath = createPath(methodPrimitiveParamRootPath + SLASH
+ + JAVA_TYPE_CHILD_NODE + SLASH
+ + JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
+
+ String methodPrimitiveParamVariablePath = createPath(methodPrimitiveFormalParamRootPath
+ + SLASH + JAVA_VARIABLE).toString();
+
+ Path methodParamChildNode = pathFactory.create(methodPrimitiveParamVariablePath);
+ for (Variable variable : primitive.getVariables()) {
+ // name
+ output.setProperty(methodParamChildNode,
+ nameFactory.create(JAVA_VARIABLE_NAME),
+ variable.getName());
+ }
+ // type
+ Path methodPrimitiveTypeParamChildNode = pathFactory.create(methodPrimitiveFormalParamRootPath);
+ output.setProperty(methodPrimitiveTypeParamChildNode,
+ nameFactory.create(JAVA_TYPE),
+ primitive.getType());
+
+ }
+
+ // TODO parameter reference types
+
+ methodParameterIndex++;
+ }
+
+ // method return type
+ FieldMetadata methodReturnType = methodTypeMemberMetadata.getReturnType();
+
+ if (methodReturnType instanceof PrimitiveFieldMetadata) {
+ PrimitiveFieldMetadata methodReturnPrimitiveType = (PrimitiveFieldMetadata)methodReturnType;
+ String methodReturnPrimitiveTypePath = createPath(methodRootPath.toString() + SLASH
+ + JAVA_RETURN_TYPE + SLASH
+ + JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
+ Path methodReturnPrimitiveTypeChildNode = pathFactory.create(methodReturnPrimitiveTypePath);
+ output.setProperty(methodReturnPrimitiveTypeChildNode,
+ nameFactory.create(JAVA_TYPE),
+ methodReturnPrimitiveType.getType());
+
+ }
+
+ // TODO method return reference type
+
methodIndex++;
}
}
Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java 2008-08-14 21:02:38 UTC (rev 427)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java 2008-08-14 21:40:16 UTC (rev 428)
@@ -31,7 +31,7 @@
private String name;
- private ReturnType returnType;
+ private FieldMetadata returnType;
public abstract boolean isContructor();
@@ -84,14 +84,14 @@
/**
* @return returnType
*/
- public ReturnType getReturnType() {
+ public FieldMetadata getReturnType() {
return returnType;
}
/**
* @param returnType Sets returnType to the specified value.
*/
- public void setReturnType( ReturnType returnType ) {
+ public void setReturnType( FieldMetadata returnType ) {
this.returnType = returnType;
}
}
Deleted: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java 2008-08-14 21:02:38 UTC (rev 427)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java 2008-08-14 21:40:16 UTC (rev 428)
@@ -1,43 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, 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.dna.sequencer.java.metadata;
-
-/**
- *
- */
-public class ReturnType {
- private String name;
-
- /**
- * @return name
- */
- public String getName() {
- return name;
- }
-
- /**
- * @param name Sets name to the specified value.
- */
- public void setName( String name ) {
- this.name = name;
- }
-}
15 years, 10 months
DNA SVN: r427 - trunk/dna-common/src/test/java/org/jboss/dna/common/collection.
by dna-commits@lists.jboss.org
Author: rhauch
Date: 2008-08-14 17:02:38 -0400 (Thu, 14 Aug 2008)
New Revision: 427
Added:
trunk/dna-common/src/test/java/org/jboss/dna/common/collection/IsIteratorContaining.java
Log:
Added new matcher for use in asserting that iterators return specific items
Added: trunk/dna-common/src/test/java/org/jboss/dna/common/collection/IsIteratorContaining.java
===================================================================
--- trunk/dna-common/src/test/java/org/jboss/dna/common/collection/IsIteratorContaining.java (rev 0)
+++ trunk/dna-common/src/test/java/org/jboss/dna/common/collection/IsIteratorContaining.java 2008-08-14 21:02:38 UTC (rev 427)
@@ -0,0 +1,88 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.common.collection;
+
+import static org.hamcrest.core.AllOf.allOf;
+import static org.hamcrest.core.IsEqual.equalTo;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import org.hamcrest.Description;
+import org.hamcrest.Factory;
+import org.hamcrest.Matcher;
+import org.junit.matchers.TypeSafeMatcher;
+
+/**
+ * @author Randall Hauch
+ * @param <T>
+ */
+public class IsIteratorContaining<T> extends TypeSafeMatcher<Iterator<T>> {
+ private final Matcher<? extends T> elementMatcher;
+
+ public IsIteratorContaining( Matcher<? extends T> elementMatcher ) {
+ this.elementMatcher = elementMatcher;
+ }
+
+ @Override
+ public boolean matchesSafely( Iterator<T> iterator ) {
+ while (iterator.hasNext()) {
+ T item = iterator.next();
+ if (elementMatcher.matches(item)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ public void describeTo( Description description ) {
+ description.appendText("a iterator containing ").appendDescriptionOf(elementMatcher);
+ }
+
+ @Factory
+ public static <T> Matcher<Iterator<T>> hasItem( Matcher<? extends T> elementMatcher ) {
+ return new IsIteratorContaining<T>(elementMatcher);
+ }
+
+ @Factory
+ public static <T> Matcher<Iterator<T>> hasItem( T element ) {
+ return hasItem(equalTo(element));
+ }
+
+ @Factory
+ public static <T> Matcher<Iterator<T>> hasItems( Matcher<? extends T>... elementMatchers ) {
+ Collection<Matcher<? extends Iterator<T>>> all = new ArrayList<Matcher<? extends Iterator<T>>>(elementMatchers.length);
+ for (Matcher<? extends T> elementMatcher : elementMatchers) {
+ all.add(hasItem(elementMatcher));
+ }
+ return allOf(all);
+ }
+
+ @Factory
+ public static <T> Matcher<Iterator<T>> hasItems( T... elements ) {
+ Collection<Matcher<? extends Iterator<T>>> all = new ArrayList<Matcher<? extends Iterator<T>>>(elements.length);
+ for (T element : elements) {
+ all.add(hasItem(element));
+ }
+ return allOf(all);
+ }
+
+}
15 years, 10 months
DNA SVN: r426 - trunk.
by dna-commits@lists.jboss.org
Author: rhauch
Date: 2008-08-14 17:01:22 -0400 (Thu, 14 Aug 2008)
New Revision: 426
Modified:
trunk/eclipse-preferences.epf
Log:
Added several new favorites for static imports
Modified: trunk/eclipse-preferences.epf
===================================================================
--- trunk/eclipse-preferences.epf 2008-08-13 21:39:12 UTC (rev 425)
+++ trunk/eclipse-preferences.epf 2008-08-14 21:01:22 UTC (rev 426)
@@ -72,7 +72,7 @@
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.source=1.5
-/instance/org.eclipse.jdt.ui/content_assist_favorite_static_members=org.junit.Assert.*;org.hamcrest.core.IsEqual.*;org.junit.matchers.JUnitMatchers.*;org.hamcrest.core.AllOf.*;org.hamcrest.core.AnyOf.*;org.hamcrest.core.IsInstanceOf.*;org.hamcrest.core.IsNot.*;org.hamcrest.core.IsNull.*;org.hamcrest.core.IsSame.*;org.hamcrest.core.DescribedAs.*;org.junit.matchers.IsCollectionContaining.*;org.junit.matchers.StringContains.*;org.hamcrest.core.Is.is;org.hamcrest.core.IsNot.not;org.hamcrest.core.IsNull.nullValue;org.hamcrest.core.IsNull.notNullValue;org.hamcrest.core.IsSame.sameInstance;org.hamcrest.core.IsInstanceOf.instanceOf;org.hamcrest.core.IsEqual.equalTo;org.hamcrest.core.IsAnything.anything;org.hamcrest.core.IsAnything.any;org.hamcrest.core.DescribedAs.describedAs;org.hamcrest.core.AnyOf.anyOf;org.hamcrest.core.AllOf.allOf;org.junit.matchers.IsCollectionContaining.hasItem;org.junit.matchers.IsCollectionContaining.hasItems;org.junit.matchers.Each.each;org.junit.matchers.!
JUnitMatchers.hasItem;org.junit.matchers.JUnitMatchers.hasItems;org.junit.matchers.JUnitMatchers.containsString;org.junit.matchers.JUnitMatchers.each;org.junit.matchers.JUnitMatchers.both;org.junit.matchers.JUnitMatchers.either;org.junit.matchers.StringContains.containsString;org.junit.matchers.TypeSafeMatcher.matches;org.hamcrest.collection.IsArray.*;org.hamcrest.collection.IsArrayContaining.*;org.hamcrest.number.IsCloseTo.*;org.mockito.Mockito.mock;org.mockito.Mockito.stub;org.mockito.Mockito.verify;org.mockito.Mockito.atLeastOnce;org.mockito.Mockito.inOrder;org.mockito.Mockito.never;org.mockito.Mockito.stubVoid;org.mockito.Mockito.times;org.mockito.Matchers;org.mockito.Matchers.anyBoolean;org.mockito.Matchers.anyByte;org.mockito.Matchers.anyChar;org.mockito.Matchers.anyDouble;org.mockito.Matchers.anyFloat;org.mockito.Matchers.anyInt;org.mockito.Matchers.anyLong;org.mockito.Matchers.anyObject;org.mockito.Matchers.anyShort;org.mockito.Matchers.anyString;org.mockito.Matcher!
s.argThat;org.mockito.Matchers.booleanThat;org.mockito.Matchers.byteTh
at;org.mockito.Matchers.charThat;org.mockito.Matchers.contains;org.mockito.Matchers.doubleThat;org.mockito.Matchers.endsWith;org.mockito.Matchers.eq;org.mockito.Matchers.floatThat;org.mockito.Matchers.intThat;org.mockito.Matchers.isA;org.mockito.Matchers.isNull;org.mockito.Matchers.longThat;org.mockito.Matchers.matches;org.mockito.Matchers.notNull;org.mockito.Matchers.refEq;org.mockito.Matchers.same;org.mockito.Matchers.shortThat;org.mockito.Matchers.startsWith;org.jboss.dna.common.text.StringMatcher.startsWith;org.jboss.dna.spi.graph.connection.RepositorySourceLoadHarness.runLoadTest
+/instance/org.eclipse.jdt.ui/content_assist_favorite_static_members=org.junit.Assert.*;org.hamcrest.core.IsEqual.*;org.junit.matchers.JUnitMatchers.*;org.hamcrest.core.AllOf.*;org.hamcrest.core.AnyOf.*;org.hamcrest.core.IsInstanceOf.*;org.hamcrest.core.IsNot.*;org.hamcrest.core.IsNull.*;org.hamcrest.core.IsSame.*;org.hamcrest.core.DescribedAs.*;org.junit.matchers.IsCollectionContaining.*;org.junit.matchers.StringContains.*;org.hamcrest.core.Is.is;org.hamcrest.core.IsNot.not;org.hamcrest.core.IsNull.nullValue;org.hamcrest.core.IsNull.notNullValue;org.hamcrest.core.IsSame.sameInstance;org.hamcrest.core.IsInstanceOf.instanceOf;org.hamcrest.core.IsEqual.equalTo;org.hamcrest.core.IsAnything.anything;org.hamcrest.core.IsAnything.any;org.hamcrest.core.DescribedAs.describedAs;org.hamcrest.core.AnyOf.anyOf;org.hamcrest.core.AllOf.allOf;org.junit.matchers.IsCollectionContaining.hasItem;org.junit.matchers.IsCollectionContaining.hasItems;org.junit.matchers.Each.each;org.junit.matchers.!
JUnitMatchers.hasItem;org.junit.matchers.JUnitMatchers.hasItems;org.junit.matchers.JUnitMatchers.containsString;org.junit.matchers.JUnitMatchers.each;org.junit.matchers.JUnitMatchers.both;org.junit.matchers.JUnitMatchers.either;org.junit.matchers.StringContains.containsString;org.junit.matchers.TypeSafeMatcher.matches;org.hamcrest.collection.IsArray.*;org.hamcrest.collection.IsArrayContaining.*;org.hamcrest.number.IsCloseTo.*;org.mockito.Mockito.mock;org.mockito.Mockito.stub;org.mockito.Mockito.verify;org.mockito.Mockito.atLeastOnce;org.mockito.Mockito.inOrder;org.mockito.Mockito.never;org.mockito.Mockito.stubVoid;org.mockito.Mockito.times;org.mockito.Matchers;org.mockito.Matchers.anyBoolean;org.mockito.Matchers.anyByte;org.mockito.Matchers.anyChar;org.mockito.Matchers.anyDouble;org.mockito.Matchers.anyFloat;org.mockito.Matchers.anyInt;org.mockito.Matchers.anyLong;org.mockito.Matchers.anyObject;org.mockito.Matchers.anyShort;org.mockito.Matchers.anyString;org.mockito.Matcher!
s.argThat;org.mockito.Matchers.booleanThat;org.mockito.Matchers.byteTh
at;org.mockito.Matchers.charThat;org.mockito.Matchers.contains;org.mockito.Matchers.doubleThat;org.mockito.Matchers.endsWith;org.mockito.Matchers.eq;org.mockito.Matchers.floatThat;org.mockito.Matchers.intThat;org.mockito.Matchers.isA;org.mockito.Matchers.isNull;org.mockito.Matchers.longThat;org.mockito.Matchers.matches;org.mockito.Matchers.notNull;org.mockito.Matchers.refEq;org.mockito.Matchers.same;org.mockito.Matchers.shortThat;org.mockito.Matchers.startsWith;org.jboss.dna.common.text.StringMatcher.startsWith;org.jboss.dna.spi.graph.connection.RepositorySourceLoadHarness.runLoadTest;org.mockito.Mockito.verifyNoMoreInteractions;org.mockito.Mockito.verifyZeroInteractions;org.jboss.dna.common.collection.IsIteratorContaining.hasItems;org.jboss.dna.common.collection.IsIteratorContaining.hasItem.*
/instance/org.eclipse.jdt.ui/org.eclipse.jdt.ui.gettersetter.use.is=true
/instance/org.eclipse.jdt.ui/org.eclipse.jdt.ui.ignorelowercasenames=true
/instance/org.eclipse.jdt.ui/org.eclipse.jdt.ui.importorder=\#;java;javax;org;com;
15 years, 10 months
DNA SVN: r425 - trunk/extensions/dna-sequencer-java/src/test/java/org/jboss/dna/sequencer/java.
by dna-commits@lists.jboss.org
Author: spagop
Date: 2008-08-13 17:39:12 -0400 (Wed, 13 Aug 2008)
New Revision: 425
Modified:
trunk/extensions/dna-sequencer-java/src/test/java/org/jboss/dna/sequencer/java/JavaMetadataSequencerTest.java
Log:
more sequencin for constructors, methods, wthi/without primitive params and more test units
Modified: trunk/extensions/dna-sequencer-java/src/test/java/org/jboss/dna/sequencer/java/JavaMetadataSequencerTest.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/test/java/org/jboss/dna/sequencer/java/JavaMetadataSequencerTest.java 2008-08-13 21:38:45 UTC (rev 424)
+++ trunk/extensions/dna-sequencer-java/src/test/java/org/jboss/dna/sequencer/java/JavaMetadataSequencerTest.java 2008-08-13 21:39:12 UTC (rev 425)
@@ -85,7 +85,9 @@
sequencer.sequence(content, output, context, progress);
assertThat(output.getPropertyValues("java:compilationUnit", "jcr:primaryType"), is(new Object[] {"java:compilationUnit"}));
- // sequencing package
+ // support sequencing package declaration( FQL name of the package). Not supported is to get information for package
+ // annotation
+ // from package-info.java
assertThat(output.getPropertyValues("java:compilationUnit/java:package/java:packageDeclaration", "java:packageName"),
is(new Object[] {"org.acme"}));
@@ -95,7 +97,7 @@
// "java:typeName"),
// is(new Object[] {"org.acme.annotation.MyPackageAnnotation"}));
- // sequence imports
+ // support for sequencing imports (single import and import on demand)
assertThat(output.getPropertyValues("java:compilationUnit/java:import/java:importDeclaration/java:singleImport/java:singleTypeImportDeclaration[1]",
"java:typeName"),
is(new Object[] {"org.acme.annotation.MyClassAnnotation"}));
@@ -103,24 +105,49 @@
"java:typeName"),
is(new Object[] {"java.util"}));
- // sequence class definition
+ // support for sequencing class definition (moodifiers, class name)
assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:modifier/java:modifierDeclaration[1]",
- "java:name"),
+ "java:modifierName"),
is(new Object[] {"public"}));
assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration",
"java:name"),
is(new Object[] {"MySource"}));
- // sequence fields
+ // support for primitive type sequencing (modifiers, types, variables).Not supported is the javadoc
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[1]/java:modifier/java:modifierDeclaration[1]",
+ "java:modifierName"),
+ is(new Object[] {"private"}));
+
assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[1]",
- "java:name"),
+ "java:typeName"),
+ is(new Object[] {"int"}));
+
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[1]/java:variable[1]",
+ "java:variableName"),
is(new Object[] {"i"}));
+
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[1]/java:variable[2]",
+ "java:variableName"),
+ is(new Object[] {"j"}));
+
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[2]/java:modifier/java:modifierDeclaration[1]",
+ "java:modifierName"),
+ is(new Object[] {"private"}));
+
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[2]/java:modifier/java:modifierDeclaration[2]",
+ "java:modifierName"),
+ is(new Object[] {"static"}));
+
assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[2]",
- "java:name"),
- is(new Object[] {"j"}));
- assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[3]",
- "java:name"),
+ "java:typeName"),
+ is(new Object[] {"double"}));
+
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:primitiveType[2]/java:variable[1]",
+ "java:variableName"),
is(new Object[] {"a"}));
+
+ // support for reference type sequencing ()
+
// assertThat(output.getPropertyValues("java:compilationUnit/java:type/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:field/java:fieldType/java:type/java:referenceType",
// "java:name"),
// is(new Object[] {"l"}));
@@ -131,10 +158,32 @@
// "java:name"),
// is(new Object[] {"x"}));
+ // support for methods sequencing (modifiers, return type, method name, parameters).Not supported are javadoc
assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:constructor/java:constructorDeclaration[1]",
"java:name"),
is(new Object[] {"MySource"}));
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:constructor/java:constructorDeclaration[2]/java:modifier/java:modifierDeclaration[1]",
+ "java:modifierName"),
+ is(new Object[] {"public"}));
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:constructor/java:constructorDeclaration[2]",
+ "java:name"),
+ is(new Object[] {"MySource"}));
+
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:constructor/java:constructorDeclaration[2]/java:parameter/java:formalParameter[1]/java:type/java:primitiveType",
+ "java:typeName"),
+ is(new Object[] {"int"}));
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:constructor/java:constructorDeclaration[2]/java:parameter/java:formalParameter[1]/java:type/java:primitiveType/java:variable",
+ "java:variableName"),
+ is(new Object[] {"i"}));
+
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:constructor/java:constructorDeclaration[2]/java:parameter/java:formalParameter[1]/java:type/java:primitiveType",
+ "java:typeName"),
+ is(new Object[] {"int"}));
+ assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:constructor/java:constructorDeclaration[2]/java:parameter/java:formalParameter[2]/java:type/java:primitiveType/java:variable",
+ "java:variableName"),
+ is(new Object[] {"j"}));
+
assertThat(output.getPropertyValues("java:compilationUnit/java:unitType/java:classDeclaration/java:normalClass/java:normalClassDeclaration/java:method/java:methodDeclaration[1]",
"java:name"),
is(new Object[] {"getI"}));
15 years, 10 months
DNA SVN: r424 - trunk/extensions/dna-sequencer-java/src/main/resources/org/jboss/dna/sequencer/java.
by dna-commits@lists.jboss.org
Author: spagop
Date: 2008-08-13 17:38:45 -0400 (Wed, 13 Aug 2008)
New Revision: 424
Modified:
trunk/extensions/dna-sequencer-java/src/main/resources/org/jboss/dna/sequencer/java/java-source-artifact.cnd
Log:
more sequencin for constructors, methods, wthi/without primitive params
Modified: trunk/extensions/dna-sequencer-java/src/main/resources/org/jboss/dna/sequencer/java/java-source-artifact.cnd
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/resources/org/jboss/dna/sequencer/java/java-source-artifact.cnd 2008-08-13 21:38:27 UTC (rev 423)
+++ trunk/extensions/dna-sequencer-java/src/main/resources/org/jboss/dna/sequencer/java/java-source-artifact.cnd 2008-08-13 21:38:45 UTC (rev 424)
@@ -50,6 +50,12 @@
*/
[java:elementValue] > nt:unstructured
+ java:kindOfvalues (java:conditionalExpression, java:annotationType, java:elementValueArrayInitializer) mandatory
+
+/**
+ * Modifiers
+ */
+[java:modifierDeclaration] > nt:unstructured
+ - java:name (string) mandatory
/**
* Expression element-value type
@@ -105,7 +111,6 @@
* Formal parameter
*/
[java:formalParameter] > nt:unstructured
- - java:name (string)
+ java:type (java:primitiveType, java:referenceType) mandatory multiple
/**
@@ -117,23 +122,20 @@
*/
[java:primitiveType] > nt:unstructured
- java:description (string)
- - java:modifier (string)
- < 'public', 'protected', 'private'
- - java:declaredAs (string) multiple
- < 'static','final', 'transient', 'volatile'
- - java:type (string)
+ + java:modifier (java:modifierDeclaration) = java:modifierDeclaration
+ - java:typeName (string)
< 'byte','short','char','int,'long','float','double','boolean','void'
- - java:name (string) mandatory
+ + java:variable (java:variable) = java:variable
+ [java:variable] > nt:unstructured
+ - java:variableName (string)
+
/**
* Reference type (TODO to enhance)
- */
+ */
[java:referenceType] > nt:unstructured
-- java:description (string)
- - java:modifier (string)
- < 'public', 'protected', 'private'
- - java:declaredAs (string) multiple
- < 'static','final', 'transient', 'volatile'
+ - java:description (string)
+ + java:modifier (java:modifierDeclaration) = java:modifierDeclaration
- java:name (string) mandatory
/**
@@ -147,12 +149,9 @@
*/
[java:methodDeclaration] > nt:unstructured
- java:description (string)
- - java:modifier (string)
- < 'public', 'protected', 'private'
+ + java:modifier (java:modifierDeclaration) = java:modifierDeclaration
+ java:resultType (java:primitiveType, java:referenceType) mandatory
- java:name (string) mandatory
- - java:declaredAs (string) multiple
- < 'static','final', 'native', 'strictfp', 'synchronized'
+ java:parameter (java:formalParameter) multiple
/**
@@ -160,8 +159,7 @@
*/
[java:constructorDeclaration] > nt:unstructured
- java:description (string)
- - java:modifier (string)
- < 'public', 'protected', 'private'
+ + java:modifier (java:modifierDeclaration) = java:modifierDeclaration
- java:name (string) mandatory
+ java:parameter (java:formalParameter)
@@ -192,8 +190,6 @@
+ java:singleImport (java:singleTypeImportDeclaration) = java:singleTypeImportDeclaration
+ java:importOnDemand (java:typeImportOnDemandDeclaration) = java:typeImportOnDemandDeclaration
- [java:modifierDeclaration] > nt:unstructured
- - java:name (string) mandatory
/**
* Class declaration
15 years, 10 months
DNA SVN: r423 - in trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java: metadata and 1 other directory.
by dna-commits@lists.jboss.org
Author: spagop
Date: 2008-08-13 17:38:27 -0400 (Wed, 13 Aug 2008)
New Revision: 423
Modified:
trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java
trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java
trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/AnnotationMetadata.java
trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java
Log:
more sequencin for constructors, methods, wthi/without primitive params
Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java 2008-08-13 17:54:03 UTC (rev 422)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java 2008-08-13 21:38:27 UTC (rev 423)
@@ -276,12 +276,12 @@
MethodMetadata methodMetadata ) {
Type type = methodDeclaration.getReturnType2();
ReturnType returnType = null;
- if (type.isPrimitiveType()) {
+ if(type.isPrimitiveType()) {
returnType = new ReturnType();
returnType.setName(((PrimitiveType)type).getPrimitiveTypeCode().toString());
methodMetadata.setReturnType(returnType);
}
- if (type.isSimpleType()) {
+ if(type.isSimpleType()) {
returnType = new ReturnType();
returnType.setName(JavaMetadataUtil.getName(((SimpleType)type).getName()));
methodMetadata.setReturnType(returnType);
@@ -375,6 +375,7 @@
* @param fieldDeclaration - the declaration.
* @return fieldMetadata - meta data.
*/
+ @SuppressWarnings( "unchecked" )
private FieldMetadata getFieldMetadataFrom( FieldDeclaration fieldDeclaration ) {
if (fieldDeclaration != null && fieldDeclaration.getType() != null && (!fieldDeclaration.fragments().isEmpty())) {
// type
Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java 2008-08-13 17:54:03 UTC (rev 422)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java 2008-08-13 21:38:27 UTC (rev 423)
@@ -157,9 +157,12 @@
public static final String JAVA_CLASS_NAME = "java:name";
public static final String JAVA_MODIFIER_CHILD_NODE = "java:modifier";
public static final String JAVA_MODIFIER_DECLARATION_CHILD_NODE = "java:modifierDeclaration";
- public static final String JAVA_MODIFIER_NAME = "java:name";
+ public static final String JAVA_MODIFIER_NAME = "java:modifierName";
- public static final String JAVA_TYPE_NAME = "java:name";
+ public static final String JAVA_VARIABLE = "java:variable";
+ public static final String JAVA_VARIABLE_NAME = "java:variableName";
+ public static final String JAVA_TYPE = "java:typeName";
+
// primitive type
public static final String JAVA_FIELD_CHILD_NODE = "java:field";
public static final String JAVA_FIELD_TYPE_CHILD_NODE = "java:fieldType";
@@ -174,11 +177,16 @@
public static final String JAVA_METHOD_DECLARATION_CHILD_NODE = "java:methodDeclaration";
public static final String JAVA_METHOD_NAME = "java:name";
+ // constructor
public static final String JAVA_CONSTRUCTOR_CHILD_NODE = "java:constructor";
public static final String JAVA_CONSTRUCTOR_DECLARATION_CHILD_NODE = "java:constructorDeclaration";
-
+ // parameter
+ public static final String JAVA_PARAMETER = "java:parameter";
+ public static final String JAVA_FORMAL_PARAMETER = "java:formalParameter";
+ public static final String JAVA_PARAMETER_NAME = "java:parameterName";
+
/**
* {@inheritDoc}
*
@@ -324,39 +332,68 @@
List<ModifierMetadata> classModifiers = classMetadata.getModifiers();
int modifierIndex = 1;
for (ModifierMetadata modifierMetadata : classModifiers) {
-
+
Path classModifierChildNode = pathFactory.create(JAVA_COMPILATION_UNIT_NODE + SLASH
- + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
- + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
- + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
- + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
- + JAVA_MODIFIER_CHILD_NODE + SLASH + JAVA_MODIFIER_DECLARATION_CHILD_NODE + "["
- + modifierIndex + "]");
-
- output.setProperty(classModifierChildNode, nameFactory.create(JAVA_MODIFIER_NAME), modifierMetadata.getName());
+ + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
+ + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
+ + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
+ + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
+ + JAVA_MODIFIER_CHILD_NODE + SLASH
+ + JAVA_MODIFIER_DECLARATION_CHILD_NODE + "["
+ + modifierIndex + "]");
+
+ output.setProperty(classModifierChildNode,
+ nameFactory.create(JAVA_MODIFIER_NAME),
+ modifierMetadata.getName());
}
-
+
// process fields of the class unit.
List<FieldMetadata> fields = classMetadata.getFields();
int primitiveIndex = 1;
for (FieldMetadata fieldMetadata : fields) {
if (fieldMetadata instanceof PrimitiveFieldMetadata) {
PrimitiveFieldMetadata primitiveFieldMetadata = (PrimitiveFieldMetadata)fieldMetadata;
+ StringBuffer primitiveFieldRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
+ + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
+ + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
+ + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
+ + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE
+ + SLASH + JAVA_FIELD_CHILD_NODE + SLASH
+ + JAVA_FIELD_TYPE_CHILD_NODE + SLASH
+ + JAVA_TYPE_CHILD_NODE + SLASH
+ + JAVA_PRIMITIVE_TYPE_CHILD_NODE,
+ primitiveIndex);
+ // type
+ Path primitiveTypeChildNode = pathFactory.create(primitiveFieldRootPath);
+ output.setProperty(primitiveTypeChildNode,
+ nameFactory.create(JAVA_TYPE),
+ primitiveFieldMetadata.getType());
+ // modifiers
+ List<ModifierMetadata> modifiers = primitiveFieldMetadata.getModifiers();
+ int primitiveModifierIndex = 1;
+ for (ModifierMetadata modifierMetadata2 : modifiers) {
+ String modifierPath = createPathWithIndex(primitiveFieldRootPath.toString() + SLASH
+ + JAVA_MODIFIER_CHILD_NODE + SLASH
+ + JAVA_MODIFIER_DECLARATION_CHILD_NODE,
+ primitiveModifierIndex).toString();
+ Path modifierChildNode = pathFactory.create(modifierPath);
+ output.setProperty(modifierChildNode,
+ nameFactory.create(JAVA_MODIFIER_NAME),
+ modifierMetadata2.getName());
+ primitiveModifierIndex++;
+ }
+ // variables
List<Variable> variables = primitiveFieldMetadata.getVariables();
+ int primitiveVariableIndex = 1;
for (Variable variable : variables) {
- Path primitiveChildNode = pathFactory.create(JAVA_COMPILATION_UNIT_NODE + SLASH
- + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
- + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
- + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
- + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
- + JAVA_FIELD_CHILD_NODE + SLASH
- + JAVA_FIELD_TYPE_CHILD_NODE + SLASH
- + JAVA_TYPE_CHILD_NODE + SLASH
- + JAVA_PRIMITIVE_TYPE_CHILD_NODE + "["
- + primitiveIndex + "]");
- output.setProperty(primitiveChildNode, nameFactory.create(JAVA_TYPE_NAME), variable.getName());
- primitiveIndex++;
+ String variablePath = createPathWithIndex(primitiveFieldRootPath.toString() + SLASH
+ + JAVA_VARIABLE,
+ primitiveVariableIndex).toString();
+ Path primitiveChildNode = pathFactory.create(variablePath);
+ output.setProperty(primitiveChildNode, nameFactory.create(JAVA_VARIABLE_NAME), variable.getName());
+ primitiveVariableIndex++;
}
+ primitiveIndex++;
}
if (fieldMetadata instanceof ReferenceFieldMetadata) {
// ReferenceFieldMetadata parameterizedFieldMetadata = (ReferenceFieldMetadata)fieldMetadata;
@@ -372,31 +409,80 @@
if (methodMetadata.isContructor()) {
// process contructor
ConstructorMetadata constructorMetadata = (ConstructorMetadata)methodMetadata;
-
- Path constructorChildNode = pathFactory.create(JAVA_COMPILATION_UNIT_NODE + SLASH
- + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
- + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
- + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
- + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
- + JAVA_CONSTRUCTOR_CHILD_NODE + SLASH
- + JAVA_CONSTRUCTOR_DECLARATION_CHILD_NODE + "["
- + constructorIndex + "]");
+ StringBuffer constructorRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
+ + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
+ + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
+ + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
+ + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE
+ + SLASH + JAVA_CONSTRUCTOR_CHILD_NODE + SLASH
+ + JAVA_CONSTRUCTOR_DECLARATION_CHILD_NODE,
+ constructorIndex);
+ Path constructorChildNode = pathFactory.create(constructorRootPath.toString());
output.setProperty(constructorChildNode,
nameFactory.create(JAVA_METHOD_NAME),
constructorMetadata.getName());
+ List<ModifierMetadata> modifiers = constructorMetadata.getModifiers();
+ // modifiers
+ int constructorModifierIndex = 1;
+ for (ModifierMetadata modifierMetadata : modifiers) {
+ String contructorModifierPath = createPathWithIndex(constructorRootPath.toString() + SLASH
+ + JAVA_MODIFIER_CHILD_NODE + SLASH
+ + JAVA_MODIFIER_DECLARATION_CHILD_NODE,
+ constructorModifierIndex).toString();
+ Path constructorModifierChildNode = pathFactory.create(contructorModifierPath);
+ output.setProperty(constructorModifierChildNode,
+ nameFactory.create(JAVA_MODIFIER_NAME),
+ modifierMetadata.getName());
+ constructorModifierIndex++;
+ }
+ // parameters
+ List<FieldMetadata> params = constructorMetadata.getParameters();
+ int constructorParameterIndex = 1;
+ for (FieldMetadata fieldMetadata2 : params) {
+ String constructorParameterPath = createPathWithIndex(constructorRootPath.toString() + SLASH
+ + JAVA_PARAMETER + SLASH
+ + JAVA_FORMAL_PARAMETER,
+ constructorParameterIndex).toString();
+ if (fieldMetadata2 instanceof PrimitiveFieldMetadata) {
+ PrimitiveFieldMetadata primitive = (PrimitiveFieldMetadata)fieldMetadata2;
+ String constructPrimitiveFormalParamRootPath = createPath(constructorParameterPath + SLASH
+ + JAVA_TYPE_CHILD_NODE + SLASH
+ + JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
+ List<Variable> paramterVariables = primitive.getVariables();
+ String constructorPrimitiveParamVariablePath = createPath(constructPrimitiveFormalParamRootPath
+ + SLASH + JAVA_VARIABLE).toString();
+ Path constructorParamChildNode = pathFactory.create(constructorPrimitiveParamVariablePath);
+ for (Variable variable : paramterVariables) {
+ // name
+ output.setProperty(constructorParamChildNode,
+ nameFactory.create(JAVA_VARIABLE_NAME),
+ variable.getName());
+ }
+ // type
+ Path constructPrimitiveTypeParamChildNode = pathFactory.create(constructPrimitiveFormalParamRootPath);
+ output.setProperty(constructPrimitiveTypeParamChildNode,
+ nameFactory.create(JAVA_TYPE),
+ primitive.getType());
+
+ }
+
+ // TODO for reference types
+ constructorParameterIndex++;
+ }
+
constructorIndex++;
} else {
// normal method
MethodTypeMemberMetadata methodTypeMemberMetadata = (MethodTypeMemberMetadata)methodMetadata;
- Path methodChildNode = pathFactory.create(JAVA_COMPILATION_UNIT_NODE + SLASH
- + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
- + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
- + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
- + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
- + JAVA_METHOD_CHILD_NODE + SLASH
- + JAVA_METHOD_DECLARATION_CHILD_NODE + "[" + methodIndex
- + "]");
+ StringBuffer methodRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
+ + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
+ + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
+ + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
+ + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
+ + JAVA_METHOD_CHILD_NODE + SLASH
+ + JAVA_METHOD_DECLARATION_CHILD_NODE, methodIndex);
+ Path methodChildNode = pathFactory.create(methodRootPath.toString());
output.setProperty(methodChildNode,
nameFactory.create(JAVA_METHOD_NAME),
methodTypeMemberMetadata.getName());
@@ -412,4 +498,38 @@
progressMonitor.done();
}
+
+ /**
+ * Create a path for the tree with index.
+ *
+ * @param path - the path.
+ * @param index - the index begin with 1.
+ * @return {@link StringBuffer}
+ */
+ private StringBuffer createPathWithIndex( String path,
+ int index ) {
+ StringBuffer rootPath = new StringBuffer();
+
+ if (StringUtils.isEmpty(path)) {
+ throw new IllegalArgumentException("path has to be unique and not empty");
+ }
+ if (index < 1) {
+ throw new IllegalArgumentException("index must begin with 1");
+ }
+ rootPath.append(path + "[" + index + "]");
+ return rootPath;
+ }
+
+ /**
+ * Create a path for the tree without index.
+ *
+ * @param path - the path.
+ * @return a {@link StringBuffer}
+ */
+ private StringBuffer createPath( String path ) {
+ if (StringUtils.isEmpty(path)) {
+ throw new IllegalArgumentException("path has to be unique and not empty");
+ }
+ return new StringBuffer().append(path);
+ }
}
Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/AnnotationMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/AnnotationMetadata.java 2008-08-13 17:54:03 UTC (rev 422)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/AnnotationMetadata.java 2008-08-13 21:38:27 UTC (rev 423)
@@ -29,7 +29,8 @@
private String name;
/**
- * @return name
+ * Get the name of the modifier.
+ * @return name of the modifier.
*/
public String getName() {
return name;
Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java 2008-08-13 17:54:03 UTC (rev 422)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java 2008-08-13 21:38:27 UTC (rev 423)
@@ -25,7 +25,7 @@
import java.util.List;
/**
- * MethodMetadata
+ * Represent the {@link MethodMetadata}
*/
public abstract class MethodMetadata {
15 years, 10 months
DNA SVN: r422 - trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor.
by dna-commits@lists.jboss.org
Author: rhauch
Date: 2008-08-13 13:54:03 -0400 (Wed, 13 Aug 2008)
New Revision: 422
Added:
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ActsOnProjectedPathCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyNodeCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedDeleteBranchCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetChildrenCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetPropertiesCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedMoveBranchCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedRecordBranchCommandTest.java
trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommandTest.java
Log:
DNA-188 - Complete the federating command executor
http://jira.jboss.com/jira/browse/DNA-188
Added tests for the projection commands.
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ActsOnProjectedPathCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ActsOnProjectedPathCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ActsOnProjectedPathCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,101 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.commands.GetNodeCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ActsOnProjectedPathCommandTest {
+
+ private ActsOnProjectedPathCommand<GetNodeCommand> command;
+ @Mock
+ private GetNodeCommand wrapped;
+ @Mock
+ private Path projectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ActsOnProjectedPathCommand<GetNodeCommand>(wrapped, projectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ActsOnProjectedPathCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,108 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.commands.CopyBranchCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedCopyBranchCommandTest {
+ private ProjectedCopyBranchCommand command;
+ @Mock
+ private CopyBranchCommand wrapped;
+ @Mock
+ private Path projectedPath;
+ @Mock
+ private Path newProjectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedCopyBranchCommand(wrapped, projectedPath, newProjectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+ @Test
+ public void shouldReturnNewProjectedPathForNewPath() {
+ assertThat(command.getNewPath(), is(sameInstance(newProjectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyNodeCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyNodeCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyNodeCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,108 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.commands.CopyNodeCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedCopyNodeCommandTest {
+ private ProjectedCopyNodeCommand command;
+ @Mock
+ private CopyNodeCommand wrapped;
+ @Mock
+ private Path projectedPath;
+ @Mock
+ private Path newProjectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedCopyNodeCommand(wrapped, projectedPath, newProjectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+ @Test
+ public void shouldReturnNewProjectedPathForNewPath() {
+ assertThat(command.getNewPath(), is(sameInstance(newProjectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedCopyNodeCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedDeleteBranchCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedDeleteBranchCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedDeleteBranchCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,100 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.commands.DeleteBranchCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedDeleteBranchCommandTest {
+ private ProjectedDeleteBranchCommand command;
+ @Mock
+ private DeleteBranchCommand wrapped;
+ @Mock
+ private Path projectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedDeleteBranchCommand(wrapped, projectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedDeleteBranchCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetChildrenCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetChildrenCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetChildrenCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,123 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.cache.CachePolicy;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.Property;
+import org.jboss.dna.spi.graph.commands.GetChildrenCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedGetChildrenCommandTest {
+ private ProjectedGetChildrenCommand command;
+ @Mock
+ private GetChildrenCommand wrapped;
+ @Mock
+ private Path projectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedGetChildrenCommand(wrapped, projectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+ @Test
+ public void shouldSetCachePolicyOnOriginalCommand() {
+ CachePolicy value = mock(CachePolicy.class);
+ command.setCachePolicy(value);
+ verify(wrapped).setCachePolicy(value);
+ }
+
+ @Test
+ public void shouldSetNoChildrenOnOriginalCommand() {
+ command.setNoChildren();
+ verify(wrapped).setNoChildren();
+ }
+
+ @Test
+ public void shouldAddChildrenOnOriginalCommand() {
+ Path.Segment segment = mock(Path.Segment.class);
+ Property[] properties = new Property[] {};
+ command.addChild(segment, properties);
+ verify(wrapped).addChild(segment, properties);
+ }
+
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetChildrenCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,129 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.cache.CachePolicy;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.Property;
+import org.jboss.dna.spi.graph.commands.GetNodeCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedGetNodeCommandTest {
+ private ProjectedGetNodeCommand command;
+ @Mock
+ private GetNodeCommand wrapped;
+ @Mock
+ private Path projectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedGetNodeCommand(wrapped, projectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+ @Test
+ public void shouldSetCachePolicyOnOriginalCommand() {
+ CachePolicy value = mock(CachePolicy.class);
+ command.setCachePolicy(value);
+ verify(wrapped).setCachePolicy(value);
+ }
+
+ @Test
+ public void shouldSetPropertyOnOriginalCommand() {
+ Property property = mock(Property.class);
+ command.setProperty(property);
+ verify(wrapped).setProperty(property);
+ }
+
+ @Test
+ public void shouldSetNoChildrenOnOriginalCommand() {
+ command.setNoChildren();
+ verify(wrapped).setNoChildren();
+ }
+
+ @Test
+ public void shouldAddChildrenOnOriginalCommand() {
+ Path.Segment segment = mock(Path.Segment.class);
+ Property[] properties = new Property[] {};
+ command.addChild(segment, properties);
+ verify(wrapped).addChild(segment, properties);
+ }
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetPropertiesCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetPropertiesCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetPropertiesCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,115 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.cache.CachePolicy;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.Property;
+import org.jboss.dna.spi.graph.commands.GetPropertiesCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedGetPropertiesCommandTest {
+ private ProjectedGetPropertiesCommand command;
+ @Mock
+ private GetPropertiesCommand wrapped;
+ @Mock
+ private Path projectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedGetPropertiesCommand(wrapped, projectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+ @Test
+ public void shouldSetCachePolicyOnOriginalCommand() {
+ CachePolicy value = mock(CachePolicy.class);
+ command.setCachePolicy(value);
+ verify(wrapped).setCachePolicy(value);
+ }
+
+ @Test
+ public void shouldSetPropertyOnOriginalCommand() {
+ Property property = mock(Property.class);
+ command.setProperty(property);
+ verify(wrapped).setProperty(property);
+ }
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedGetPropertiesCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedMoveBranchCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedMoveBranchCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedMoveBranchCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,108 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.commands.MoveBranchCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedMoveBranchCommandTest {
+ private ProjectedMoveBranchCommand command;
+ @Mock
+ private MoveBranchCommand wrapped;
+ @Mock
+ private Path projectedPath;
+ @Mock
+ private Path newProjectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedMoveBranchCommand(wrapped, projectedPath, newProjectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+ @Test
+ public void shouldReturnNewProjectedPathForNewPath() {
+ assertThat(command.getNewPath(), is(sameInstance(newProjectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedMoveBranchCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedRecordBranchCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedRecordBranchCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedRecordBranchCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,100 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.commands.RecordBranchCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedRecordBranchCommandTest {
+ private ProjectedRecordBranchCommand command;
+ @Mock
+ private RecordBranchCommand wrapped;
+ @Mock
+ private Path projectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedRecordBranchCommand(wrapped, projectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedRecordBranchCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommandTest.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommandTest.java (rev 0)
+++ trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommandTest.java 2008-08-13 17:54:03 UTC (rev 422)
@@ -0,0 +1,110 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.dna.connector.federation.executor;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsSame.sameInstance;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.stub;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import java.util.ArrayList;
+import java.util.Collection;
+import org.jboss.dna.spi.graph.Path;
+import org.jboss.dna.spi.graph.Property;
+import org.jboss.dna.spi.graph.commands.SetPropertiesCommand;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.mockito.MockitoAnnotations.Mock;
+
+/**
+ * @author Randall Hauch
+ */
+public class ProjectedSetPropertiesCommandTest {
+ private ProjectedSetPropertiesCommand command;
+ @Mock
+ private SetPropertiesCommand wrapped;
+ @Mock
+ private Path projectedPath;
+
+ @Before
+ public void beforeEach() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ command = new ProjectedSetPropertiesCommand(wrapped, projectedPath);
+ }
+
+ @Test
+ public void shouldReturnProjectedPath() {
+ assertThat(command.getPath(), is(sameInstance(projectedPath)));
+ verifyZeroInteractions(wrapped);
+ }
+
+ @Test
+ public void shouldReturnErrorFromWrappedCommands() {
+ Throwable error = mock(Throwable.class);
+ stub(wrapped.getError()).toReturn(error);
+ assertThat(command.getError(), is(error));
+ verify(wrapped).getError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForError() {
+ assertThat(command.hasError(), is(false));
+ verify(wrapped).hasError();
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForNoError() {
+ stub(wrapped.hasNoError()).toReturn(true);
+ assertThat(command.hasNoError(), is(true));
+ verify(wrapped).hasNoError();
+ }
+
+ @Test
+ public void shouldSetErrorOnWrappedCommand() {
+ Throwable error = mock(Throwable.class);
+ command.setError(error);
+ verify(wrapped).setError(error);
+ }
+
+ @Test
+ public void shouldCheckWrappedCommandForCancellation() {
+ stub(wrapped.isCancelled()).toReturn(true);
+ assertThat(command.isCancelled(), is(true));
+ verify(wrapped).isCancelled();
+ }
+
+ @Test
+ public void shouldReturnWrappedCommandAsOriginalCommand() {
+ assertThat(command.getOriginalCommand(), is(sameInstance(wrapped)));
+ }
+
+ @Test
+ public void shouldReturnPropertyIteratorFromOriginalCommand() {
+ Collection<Property> properties = new ArrayList<Property>();
+ stub(wrapped.getProperties()).toReturn(properties);
+ assertThat(command.getProperties(), is(sameInstance(properties)));
+ verify(wrapped).getProperties();
+ }
+}
Property changes on: trunk/extensions/dna-connector-federation/src/test/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommandTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
15 years, 10 months
DNA SVN: r421 - in trunk: dna-repository/src/main/java/org/jboss/dna/repository and 7 other directories.
by dna-commits@lists.jboss.org
Author: rhauch
Date: 2008-08-13 13:53:15 -0400 (Wed, 13 Aug 2008)
New Revision: 421
Modified:
trunk/dna-jcr/src/main/java/org/jboss/dna/jcr/GraphTools.java
trunk/dna-repository/src/main/java/org/jboss/dna/repository/RepositoryService.java
trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/ActsOnProperties.java
trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/CreateNodeCommand.java
trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicCreateNodeCommand.java
trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicGetNodeCommand.java
trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicGetPropertiesCommand.java
trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicSetPropertiesCommand.java
trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/FederatedRepositorySource.java
trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/FederatingCommandExecutor.java
trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommand.java
trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedCreateNodeCommand.java
trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommand.java
trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommand.java
trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/merge/OneContributionMergeStrategy.java
trunk/extensions/dna-connector-inmemory/src/main/java/org/jboss/dna/connector/inmemory/InMemoryRepository.java
trunk/extensions/dna-connector-jbosscache/src/main/java/org/jboss/dna/connector/jbosscache/JBossCacheConnection.java
Log:
Changed the 'getPropertyIterator()' command of the ActsOnPath interface to be 'getProperties()', since it returned Iterable<Property> (not Iterator<Properties>). Also changed return type to be Collection<Property>, allowing the ability to get the number of properties.
Modified: trunk/dna-jcr/src/main/java/org/jboss/dna/jcr/GraphTools.java
===================================================================
--- trunk/dna-jcr/src/main/java/org/jboss/dna/jcr/GraphTools.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/dna-jcr/src/main/java/org/jboss/dna/jcr/GraphTools.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -82,21 +82,21 @@
execute(getRootNodeCommand);
// Get primary type
NameFactory nameFactory = valueFactories.getNameFactory();
- org.jboss.dna.spi.graph.Property primaryTypeProp = getRootNodeCommand.getProperties().get(nameFactory.create("jcr:primaryType"));
+ org.jboss.dna.spi.graph.Property primaryTypeProp = getRootNodeCommand.getPropertiesByName().get(nameFactory.create("jcr:primaryType"));
org.jboss.dna.spi.graph.ValueFactory<String> stringFactory = valueFactories.getStringFactory();
String primaryType = stringFactory.create(primaryTypeProp.getValues()).next();
// Process node's properties
NodeContent content = new NodeContent();
org.jboss.dna.spi.graph.ValueFactory<Boolean> booleanFactory = valueFactories.getBooleanFactory();
- for (org.jboss.dna.spi.graph.Property prop : getRootNodeCommand.getPropertyIterator()) {
+ for (org.jboss.dna.spi.graph.Property prop : getRootNodeCommand.getProperties()) {
// Get property definition from node's primary type
BasicGetNodeCommand getPropDefCommand = new BasicGetNodeCommand(pathFactory.create("/dna:system/dna:jcr/"
+ primaryType + "/"
+ prop.getName()));
execute(getPropDefCommand);
// Create either a single- or multiple-valued property, as defined by the property definition
- org.jboss.dna.spi.graph.Property isMultipleProp = getPropDefCommand.getProperties().get(nameFactory.create("jcr:multiple"));
- org.jboss.dna.spi.graph.Property requiredTypeProp = getPropDefCommand.getProperties().get(nameFactory.create("jcr:requiredType"));
+ org.jboss.dna.spi.graph.Property isMultipleProp = getPropDefCommand.getPropertiesByName().get(nameFactory.create("jcr:multiple"));
+ org.jboss.dna.spi.graph.Property requiredTypeProp = getPropDefCommand.getPropertiesByName().get(nameFactory.create("jcr:requiredType"));
String type = stringFactory.create(requiredTypeProp.getValues()).next();
if (booleanFactory.create(isMultipleProp.getValues()).next().booleanValue()) {
// jcrProps.add(new JcrMultiValuedProperty(dnaProp.getName(), type, dnaProp.getValues()));
Modified: trunk/dna-repository/src/main/java/org/jboss/dna/repository/RepositoryService.java
===================================================================
--- trunk/dna-repository/src/main/java/org/jboss/dna/repository/RepositoryService.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/dna-repository/src/main/java/org/jboss/dna/repository/RepositoryService.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -237,7 +237,7 @@
BasicGetNodeCommand getSourceCommand = (BasicGetNodeCommand)command;
if (getSourceCommand.hasNoError()) {
RepositorySource source = createRepositorySource(getSourceCommand.getPath(),
- getSourceCommand.getProperties(),
+ getSourceCommand.getPropertiesByName(),
problems);
if (source != null) sources.addSource(source);
}
Modified: trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/ActsOnProperties.java
===================================================================
--- trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/ActsOnProperties.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/ActsOnProperties.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -21,6 +21,7 @@
*/
package org.jboss.dna.spi.graph.commands;
+import java.util.Collection;
import org.jboss.dna.spi.cache.Cacheable;
import org.jboss.dna.spi.graph.Property;
@@ -38,6 +39,6 @@
*
* @return the properties
*/
- Iterable<Property> getPropertyIterator();
+ Collection<Property> getProperties();
}
Modified: trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/CreateNodeCommand.java
===================================================================
--- trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/CreateNodeCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/CreateNodeCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -21,6 +21,7 @@
*/
package org.jboss.dna.spi.graph.commands;
+import java.util.Collection;
import java.util.Iterator;
import org.jboss.dna.spi.graph.Property;
@@ -38,7 +39,7 @@
*
* @return the property iterator; never null, but possibly empty
*/
- Iterable<Property> getPropertyIterator();
+ Collection<Property> getProperties();
/**
* Get the desired behavior when a node at the target {@link ActsOnPath#getPath() path} already exists.
Modified: trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicCreateNodeCommand.java
===================================================================
--- trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicCreateNodeCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicCreateNodeCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -77,7 +77,7 @@
/**
* {@inheritDoc}
*/
- public Iterable<Property> getPropertyIterator() {
+ public Collection<Property> getProperties() {
return properties;
}
@@ -153,7 +153,7 @@
sb.append(" at ");
sb.append(this.getPath());
boolean firstProperty = true;
- for (Property property : this.getPropertyIterator()) {
+ for (Property property : this.getProperties()) {
if (property.isEmpty()) continue;
if (firstProperty) {
sb.append(" { ");
Modified: trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicGetNodeCommand.java
===================================================================
--- trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicGetNodeCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicGetNodeCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -21,6 +21,7 @@
*/
package org.jboss.dna.spi.graph.commands.impl;
+import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -67,11 +68,11 @@
*
* @return the map of property name to values
*/
- public Iterable<Property> getPropertyIterator() {
+ public Collection<Property> getProperties() {
return this.properties.values();
}
- public Map<Name, Property> getProperties() {
+ public Map<Name, Property> getPropertiesByName() {
return this.properties;
}
@@ -87,7 +88,7 @@
sb.append(" at ");
sb.append(this.getPath());
boolean firstProperty = true;
- for (Property property : this.getPropertyIterator()) {
+ for (Property property : this.getProperties()) {
if (property.isEmpty()) continue;
if (firstProperty) {
sb.append(" { ");
Modified: trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicGetPropertiesCommand.java
===================================================================
--- trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicGetPropertiesCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicGetPropertiesCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -74,11 +74,11 @@
*
* @return the map of property name to values
*/
- public Iterable<Property> getPropertyIterator() {
+ public Iterable<Property> getProperties() {
return this.properties.values();
}
- public Map<Name, Property> getProperties() {
+ public Map<Name, Property> getPropertiesByName() {
return this.properties;
}
@@ -129,7 +129,7 @@
sb.append(" at ");
sb.append(this.getPath());
boolean firstProperty = true;
- for (Property property : this.getPropertyIterator()) {
+ for (Property property : this.getProperties()) {
if (property.isEmpty()) continue;
if (firstProperty) {
sb.append(" { ");
Modified: trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicSetPropertiesCommand.java
===================================================================
--- trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicSetPropertiesCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/dna-spi/src/main/java/org/jboss/dna/spi/graph/commands/impl/BasicSetPropertiesCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -21,6 +21,7 @@
*/
package org.jboss.dna.spi.graph.commands.impl;
+import java.util.Collection;
import java.util.List;
import net.jcip.annotations.NotThreadSafe;
import org.jboss.dna.common.util.StringUtil;
@@ -63,7 +64,7 @@
/**
* {@inheritDoc}
*/
- public Iterable<Property> getPropertyIterator() {
+ public Collection<Property> getProperties() {
return properties;
}
@@ -79,7 +80,7 @@
sb.append(" at ");
sb.append(this.getPath());
boolean firstProperty = true;
- for (Property property : this.getPropertyIterator()) {
+ for (Property property : this.getProperties()) {
if (property.isEmpty()) continue;
if (firstProperty) {
sb.append(" { ");
Modified: trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/FederatedRepositorySource.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/FederatedRepositorySource.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/FederatedRepositorySource.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -776,7 +776,7 @@
Projection cacheProjection = createProjection(context,
projectionParser,
getCacheRegion.getPath(),
- getCacheRegion.getProperties(),
+ getCacheRegion.getPropertiesByName(),
problems);
if (getCacheRegion.hasError()) {
@@ -812,7 +812,7 @@
Projection projection = createProjection(context,
projectionParser,
getProjectionCommand.getPath(),
- getProjectionCommand.getProperties(),
+ getProjectionCommand.getPropertiesByName(),
problems);
if (projection != null) sourceProjections.add(projection);
}
@@ -821,7 +821,7 @@
// Look for the default cache policy ...
BasicCachePolicy cachePolicy = new BasicCachePolicy();
- Property timeToLiveProperty = getRepository.getProperties().get(nameFactory.create(CACHE_POLICY_TIME_TO_LIVE_CONFIG_PROPERTY_NAME));
+ Property timeToLiveProperty = getRepository.getPropertiesByName().get(nameFactory.create(CACHE_POLICY_TIME_TO_LIVE_CONFIG_PROPERTY_NAME));
if (timeToLiveProperty != null && !timeToLiveProperty.isEmpty()) {
cachePolicy.setTimeToLive(longFactory.create(timeToLiveProperty.getValues().next()));
}
Modified: trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/FederatingCommandExecutor.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/FederatingCommandExecutor.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/FederatingCommandExecutor.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -199,7 +199,7 @@
@Override
public void execute( GetNodeCommand command ) throws RepositorySourceException, InterruptedException {
BasicGetNodeCommand nodeInfo = getNode(command.getPath());
- for (Property property : nodeInfo.getProperties().values()) {
+ for (Property property : nodeInfo.getProperties()) {
command.setProperty(property);
}
for (Segment child : nodeInfo.getChildren()) {
@@ -215,7 +215,7 @@
@Override
public void execute( GetPropertiesCommand command ) throws RepositorySourceException, InterruptedException {
BasicGetNodeCommand nodeInfo = getNode(command.getPath());
- for (Property property : nodeInfo.getProperties().values()) {
+ for (Property property : nodeInfo.getProperties()) {
command.setProperty(property);
}
}
@@ -355,7 +355,7 @@
BasicGetNodeCommand fromSource = new BasicGetNodeCommand(pathInSource);
sourceConnection.execute(getExecutionContext(), fromSource);
if (!fromSource.hasError()) {
- Collection<Property> properties = fromSource.getProperties().values();
+ Collection<Property> properties = fromSource.getProperties();
Collection<Segment> children = fromSource.getChildren();
DateTime expTime = fromSource.getCachePolicy() == null ? expirationTime : timeFactory.create(getCurrentTimeInUtc(),
fromSource.getCachePolicy().getTimeToLive());
@@ -371,7 +371,7 @@
sourceConnection.execute(context, fromSourceCommands);
for (BasicGetNodeCommand fromSource : fromSourceCommands) {
if (fromSource.hasError()) continue;
- Collection<Property> properties = fromSource.getProperties().values();
+ Collection<Property> properties = fromSource.getProperties();
Collection<Segment> children = fromSource.getChildren();
DateTime expTime = fromSource.getCachePolicy() == null ? expirationTime : timeFactory.create(getCurrentTimeInUtc(),
fromSource.getCachePolicy().getTimeToLive());
@@ -398,7 +398,7 @@
}
protected MergePlan getMergePlan( BasicGetNodeCommand command ) {
- Property mergePlanProperty = command.getProperties().get(mergePlanPropertyName);
+ Property mergePlanProperty = command.getPropertiesByName().get(mergePlanPropertyName);
if (mergePlanProperty == null || mergePlanProperty.isEmpty()) {
return null;
}
@@ -412,7 +412,7 @@
final Path path = mergedNode.getPath();
NodeConflictBehavior conflictBehavior = NodeConflictBehavior.UPDATE;
- BasicCreateNodeCommand newNode = new BasicCreateNodeCommand(path, mergedNode.getProperties().values(), conflictBehavior);
+ BasicCreateNodeCommand newNode = new BasicCreateNodeCommand(path, mergedNode.getProperties(), conflictBehavior);
newNode.setProperty(new BasicSingleValueProperty(this.uuidPropertyName, mergedNode.getUuid()));
List<Segment> children = mergedNode.getChildren();
GraphCommand[] intoCache = new GraphCommand[1 + children.size()];
Modified: trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommand.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedCopyBranchCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -27,11 +27,24 @@
/**
* @author Randall Hauch
*/
-public class ProjectedCopyBranchCommand extends ProjectedCopyNodeCommand implements CopyBranchCommand {
+public class ProjectedCopyBranchCommand extends ActsOnProjectedPathCommand<CopyBranchCommand> implements CopyBranchCommand {
+ private final Path newProjectedPath;
+
public ProjectedCopyBranchCommand( CopyBranchCommand delegate,
Path projectedPath,
Path newProjectedPath ) {
- super(delegate, projectedPath, newProjectedPath);
+ super(delegate, projectedPath);
+ assert newProjectedPath != null;
+ this.newProjectedPath = newProjectedPath;
}
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.jboss.dna.spi.graph.commands.CopyBranchCommand#getNewPath()
+ */
+ public Path getNewPath() {
+ return newProjectedPath;
+ }
}
Modified: trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedCreateNodeCommand.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedCreateNodeCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedCreateNodeCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -21,6 +21,7 @@
*/
package org.jboss.dna.connector.federation.executor;
+import java.util.Collection;
import org.jboss.dna.spi.graph.Path;
import org.jboss.dna.spi.graph.Property;
import org.jboss.dna.spi.graph.commands.CreateNodeCommand;
@@ -48,10 +49,10 @@
/**
* {@inheritDoc}
*
- * @see org.jboss.dna.spi.graph.commands.CreateNodeCommand#getPropertyIterator()
+ * @see org.jboss.dna.spi.graph.commands.CreateNodeCommand#getProperties()
*/
- public Iterable<Property> getPropertyIterator() {
- return getOriginalCommand().getPropertyIterator();
+ public Collection<Property> getProperties() {
+ return getOriginalCommand().getProperties();
}
/**
Modified: trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommand.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedGetNodeCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -21,21 +21,23 @@
*/
package org.jboss.dna.connector.federation.executor;
+import org.jboss.dna.spi.cache.CachePolicy;
+import org.jboss.dna.spi.graph.DateTime;
import org.jboss.dna.spi.graph.Path;
import org.jboss.dna.spi.graph.Property;
-import org.jboss.dna.spi.graph.commands.GetChildrenCommand;
+import org.jboss.dna.spi.graph.Path.Segment;
import org.jboss.dna.spi.graph.commands.GetNodeCommand;
/**
* @author Randall Hauch
*/
-public class ProjectedGetNodeCommand extends ProjectedGetChildrenCommand implements GetNodeCommand {
+public class ProjectedGetNodeCommand extends ActsOnProjectedPathCommand<GetNodeCommand> implements GetNodeCommand {
/**
*/
private static final long serialVersionUID = 1L;
- public ProjectedGetNodeCommand( GetChildrenCommand delegate,
+ public ProjectedGetNodeCommand( GetNodeCommand delegate,
Path projectedPath ) {
super(delegate, projectedPath);
}
@@ -43,10 +45,57 @@
/**
* {@inheritDoc}
*
+ * @see org.jboss.dna.spi.graph.commands.GetChildrenCommand#addChild(org.jboss.dna.spi.graph.Path.Segment,
+ * org.jboss.dna.spi.graph.Property[])
+ */
+ public void addChild( Segment nameOfChild,
+ Property... identityProperties ) {
+ getOriginalCommand().addChild(nameOfChild, identityProperties);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.jboss.dna.spi.graph.commands.GetChildrenCommand#setNoChildren()
+ */
+ public void setNoChildren() {
+ getOriginalCommand().setNoChildren();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.jboss.dna.spi.cache.Cacheable#getCachePolicy()
+ */
+ public CachePolicy getCachePolicy() {
+ return getOriginalCommand().getCachePolicy();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.jboss.dna.spi.cache.Cacheable#getTimeLoaded()
+ */
+ public DateTime getTimeLoaded() {
+ return getOriginalCommand().getTimeLoaded();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.jboss.dna.spi.cache.Cacheable#setCachePolicy(org.jboss.dna.spi.cache.CachePolicy)
+ */
+ public void setCachePolicy( CachePolicy cachePolicy ) {
+ getOriginalCommand().setCachePolicy(cachePolicy);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
* @see org.jboss.dna.spi.graph.commands.GetPropertiesCommand#setProperty(org.jboss.dna.spi.graph.Property)
*/
public void setProperty( Property property ) {
- ((GetNodeCommand)getOriginalCommand()).setProperty(property);
+ getOriginalCommand().setProperty(property);
}
}
Modified: trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommand.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommand.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/executor/ProjectedSetPropertiesCommand.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -21,6 +21,7 @@
*/
package org.jboss.dna.connector.federation.executor;
+import java.util.Collection;
import org.jboss.dna.spi.graph.Path;
import org.jboss.dna.spi.graph.Property;
import org.jboss.dna.spi.graph.commands.SetPropertiesCommand;
@@ -39,10 +40,10 @@
/**
* {@inheritDoc}
*
- * @see org.jboss.dna.spi.graph.commands.ActsOnProperties#getPropertyIterator()
+ * @see org.jboss.dna.spi.graph.commands.ActsOnProperties#getProperties()
*/
- public Iterable<Property> getPropertyIterator() {
- return getOriginalCommand().getPropertyIterator();
+ public Collection<Property> getProperties() {
+ return getOriginalCommand().getProperties();
}
}
Modified: trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/merge/OneContributionMergeStrategy.java
===================================================================
--- trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/merge/OneContributionMergeStrategy.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-federation/src/main/java/org/jboss/dna/connector/federation/merge/OneContributionMergeStrategy.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -57,7 +57,7 @@
children.add(child);
}
// Copy the properties ...
- Map<Name, Property> properties = federatedNode.getProperties();
+ Map<Name, Property> properties = federatedNode.getPropertiesByName();
properties.clear();
Iterator<Property> propertyIterator = contribution.getProperties();
while (propertyIterator.hasNext()) {
Modified: trunk/extensions/dna-connector-inmemory/src/main/java/org/jboss/dna/connector/inmemory/InMemoryRepository.java
===================================================================
--- trunk/extensions/dna-connector-inmemory/src/main/java/org/jboss/dna/connector/inmemory/InMemoryRepository.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-inmemory/src/main/java/org/jboss/dna/connector/inmemory/InMemoryRepository.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -352,7 +352,7 @@
throw new PathNotFoundException(path, lowestExisting, InMemoryConnectorI18n.nodeDoesNotExist.text(parent));
}
UUID uuid = null;
- for (Property property : command.getPropertyIterator()) {
+ for (Property property : command.getProperties()) {
if (property.getName().equals(uuidPropertyName)) {
uuid = getExecutionContext().getValueFactories().getUuidFactory().create(property.getValues().next());
break;
@@ -360,7 +360,7 @@
}
Node node = createNode(getExecutionContext(), parentNode, path.getLastSegment().getName(), uuid);
// Now add the properties to the supplied node ...
- for (Property property : command.getPropertyIterator()) {
+ for (Property property : command.getProperties()) {
Name propName = property.getName();
if (property.size() == 0) {
node.getProperties().remove(propName);
@@ -397,7 +397,7 @@
public void execute( SetPropertiesCommand command ) {
Node node = getTargetNode(command);
// Now set (or remove) the properties to the supplied node ...
- for (Property property : command.getPropertyIterator()) {
+ for (Property property : command.getProperties()) {
Name propName = property.getName();
if (property.size() == 0) {
node.getProperties().remove(propName);
Modified: trunk/extensions/dna-connector-jbosscache/src/main/java/org/jboss/dna/connector/jbosscache/JBossCacheConnection.java
===================================================================
--- trunk/extensions/dna-connector-jbosscache/src/main/java/org/jboss/dna/connector/jbosscache/JBossCacheConnection.java 2008-08-13 15:51:18 UTC (rev 420)
+++ trunk/extensions/dna-connector-jbosscache/src/main/java/org/jboss/dna/connector/jbosscache/JBossCacheConnection.java 2008-08-13 17:53:15 UTC (rev 421)
@@ -478,7 +478,7 @@
node.put(uuidPropertyName, generateUuid());
}
// Now add the properties to the supplied node ...
- for (Property property : command.getPropertyIterator()) {
+ for (Property property : command.getProperties()) {
if (property.size() == 0) continue;
Name propName = property.getName();
Object value = null;
@@ -530,7 +530,7 @@
public void execute( SetPropertiesCommand command ) {
Node<Name, Object> node = getNode(command.getPath());
// Now set (or remove) the properties to the supplied node ...
- for (Property property : command.getPropertyIterator()) {
+ for (Property property : command.getProperties()) {
Name propName = property.getName();
// Don't allow the child list property to be removed or changed
if (propName.equals(JBossCacheLexicon.CHILD_PATH_SEGMENT_LIST)) continue;
15 years, 10 months
DNA SVN: r420 - trunk.
by dna-commits@lists.jboss.org
Author: rhauch
Date: 2008-08-13 11:51:18 -0400 (Wed, 13 Aug 2008)
New Revision: 420
Modified:
trunk/pom.xml
Log:
Changed default version of Mockito from version 1.3 to 1.5
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2008-08-13 05:45:21 UTC (rev 419)
+++ trunk/pom.xml 2008-08-13 15:51:18 UTC (rev 420)
@@ -412,7 +412,7 @@
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
- <version>1.3</version>
+ <version>1.5</version>
<scope>test</scope>
</dependency>
<!-- Logging (require SLF4J API for compiling, but use Log4J and its SLF4J binding for testing) -->
15 years, 10 months
DNA SVN: r419 - trunk/docs/reference/en.
by dna-commits@lists.jboss.org
Author: spagop
Date: 2008-08-13 01:45:21 -0400 (Wed, 13 Aug 2008)
New Revision: 419
Modified:
trunk/docs/reference/en/Author_Group.xml
trunk/docs/reference/en/master.xml
Log:
start with java sequencer doc part
Modified: trunk/docs/reference/en/Author_Group.xml
===================================================================
--- trunk/docs/reference/en/Author_Group.xml 2008-08-12 19:26:21 UTC (rev 418)
+++ trunk/docs/reference/en/Author_Group.xml 2008-08-13 05:45:21 UTC (rev 419)
@@ -25,4 +25,5 @@
<!DOCTYPE authorgroup PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
<authorgroup>
<corpauthor>Randall Hauch</corpauthor>
+ <corpauthor>Serge Emmanuel Pagop</corpauthor>
</authorgroup>
\ No newline at end of file
Modified: trunk/docs/reference/en/master.xml
===================================================================
--- trunk/docs/reference/en/master.xml 2008-08-12 19:26:21 UTC (rev 418)
+++ trunk/docs/reference/en/master.xml 2008-08-13 05:45:21 UTC (rev 419)
@@ -509,7 +509,12 @@
</sect2>
<sect2 id="dna-sequencer-java">
<title>Java source sequencer</title>
- <para></para>
+ <para>The JBoss DNA makes somes extensions available to clients and one of these extensions is the <emphasis role="strong">dna-sequence-java</emphasis>,
+ the sequencer tool for java source.
+ The Java source sequencer sequences any kind of java source with "*.java" extension and extras meaningful informations from this
+ file. The tool may have the ability to sequence any type of java compilation units (class declaration, interface declaration,
+ and enum declaration), that are stored in a content repository.
+ </para>
</sect2>
<sect2 id="dna-sequencer-mp3">
<title>MP3 audio file sequencer</title>
15 years, 10 months