You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2007/02/07 03:40:49 UTC
svn commit: r504418 - in /maven/components/trunk/maven-build-context/src:
main/java/org/apache/maven/context/ test/java/org/apache/maven/context/
Author: jdcasey
Date: Tue Feb 6 18:40:48 2007
New Revision: 504418
URL: http://svn.apache.org/viewvc?view=rev&rev=504418
Log:
Adding ability to reorient the build context manager to a new container context.
Modified:
maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/BuildContextManager.java
maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/DefaultBuildContextManager.java
maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/AbstractBuildContextManagerTest.java
maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/DefaultBuildContextManagerTest.java
Modified: maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/BuildContextManager.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/BuildContextManager.java?view=diff&rev=504418&r1=504417&r2=504418
==============================================================================
--- maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/BuildContextManager.java (original)
+++ maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/BuildContextManager.java Tue Feb 6 18:40:48 2007
@@ -1,5 +1,7 @@
package org.apache.maven.context;
+import org.codehaus.plexus.context.Context;
+
/**
* Manager interface used to store, read, and clear the BuildContext out of the container.
*
@@ -11,11 +13,6 @@
String ROLE = BuildContextManager.class.getName();
/**
- * Create a new instance of BuildContext
- */
- BuildContext newUnstoredInstance();
-
- /**
* Read the BuildContext from the container. If it doesn't already exist, optionally create it.
*/
BuildContext readBuildContext( boolean create );
@@ -30,5 +27,13 @@
* context.
*/
void clearBuildContext();
+
+ /**
+ * Re-orient this BuildContextManager to use the given Plexus Context instance, returning
+ * the original Context instance so it can be restored later. This can be important when the
+ * BuildContextManager is instantiated inside a Maven plugin, but the plugin needs to use the
+ * context associated with the core of Maven (in case multiple contexts are used).
+ */
+ Context reorientToContext( Context context );
}
Modified: maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/DefaultBuildContextManager.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/DefaultBuildContextManager.java?view=diff&rev=504418&r1=504417&r2=504418
==============================================================================
--- maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/DefaultBuildContextManager.java (original)
+++ maven/components/trunk/maven-build-context/src/main/java/org/apache/maven/context/DefaultBuildContextManager.java Tue Feb 6 18:40:48 2007
@@ -33,15 +33,6 @@
}
/**
- * Create a new instance of DefaultBuildContext, and return it. Each method call creates a brand
- * new instance.
- */
- public BuildContext newUnstoredInstance()
- {
- return new DefaultBuildContext();
- }
-
- /**
* Clear the contents of the build context inside the container context.
*/
public void clearBuildContext()
@@ -126,6 +117,14 @@
throws ContextException
{
this.context = context;
+ }
+
+ public Context reorientToContext( Context context )
+ {
+ Context oldContext = this.context;
+ this.context = context;
+
+ return oldContext;
}
}
Modified: maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/AbstractBuildContextManagerTest.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/AbstractBuildContextManagerTest.java?view=diff&rev=504418&r1=504417&r2=504418
==============================================================================
--- maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/AbstractBuildContextManagerTest.java (original)
+++ maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/AbstractBuildContextManagerTest.java Tue Feb 6 18:40:48 2007
@@ -9,6 +9,8 @@
protected abstract String getRoleHintBeforeSetUp();
+ protected abstract BuildContext createBuildContext();
+
protected BuildContextManager getBuildContextManager()
{
return mgr;
@@ -21,28 +23,10 @@
mgr = (BuildContextManager) lookup( BuildContextManager.ROLE, getRoleHintBeforeSetUp() );
}
- public void testNewUnstoredInstance_ShouldReturnValidContextInstance()
- {
- BuildContext context = mgr.newUnstoredInstance();
-
- assertNotNull( context );
-
- String key = "key";
- String value = "value";
-
- context.put( key, value );
-
- assertEquals( value, context.get( key ) );
-
- context.delete( key );
-
- assertNull( context.get( key ) );
- }
-
public void testNewUnstoredInstance_SuccessiveCallsShouldReturnDistinctContextInstances()
{
- BuildContext context = mgr.newUnstoredInstance();
- BuildContext context2 = mgr.newUnstoredInstance();
+ BuildContext context = createBuildContext();
+ BuildContext context2 = createBuildContext();
assertNotNull( context );
assertNotNull( context2 );
@@ -51,7 +35,7 @@
public void testStoreAndRead_ShouldRetrieveStoredValueAfterRead()
{
- BuildContext ctx = mgr.newUnstoredInstance();
+ BuildContext ctx = createBuildContext();
String key = "key";
String value = "value";
@@ -68,7 +52,7 @@
public void testStoreAndClear_ShouldNotRetrieveStoredValueAfterClear()
{
- BuildContext ctx = mgr.newUnstoredInstance();
+ BuildContext ctx = createBuildContext();
String key = "key";
String value = "value";
Modified: maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/DefaultBuildContextManagerTest.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/DefaultBuildContextManagerTest.java?view=diff&rev=504418&r1=504417&r2=504418
==============================================================================
--- maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/DefaultBuildContextManagerTest.java (original)
+++ maven/components/trunk/maven-build-context/src/test/java/org/apache/maven/context/DefaultBuildContextManagerTest.java Tue Feb 6 18:40:48 2007
@@ -9,4 +9,9 @@
return DefaultBuildContextManager.ROLE_HINT;
}
+ protected BuildContext createBuildContext()
+ {
+ return new DefaultBuildContext();
+ }
+
}