You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2014/08/26 19:26:20 UTC

git commit: MNG-5683: Expand session scope so that @SessionScoped components can be injected into lifecycle participants.

Repository: maven
Updated Branches:
  refs/heads/master 1ba9a6ffe -> 5fff038d7


MNG-5683: Expand session scope so that @SessionScoped components can be injected into lifecycle participants.


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/5fff038d
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/5fff038d
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/5fff038d

Branch: refs/heads/master
Commit: 5fff038d71ff931f9c712ce1d6cf3782b24f5d99
Parents: 1ba9a6f
Author: Jason van Zyl <ja...@tesla.io>
Authored: Sun Aug 10 16:55:02 2014 -0700
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Tue Aug 26 13:25:03 2014 -0400

----------------------------------------------------------------------
 .../src/main/java/org/apache/maven/DefaultMaven.java      | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/5fff038d/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
index ba62972..f2feffb 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
@@ -222,6 +222,14 @@ public class DefaultMaven
         DefaultRepositorySystemSession repoSession = (DefaultRepositorySystemSession) newRepositorySession( request );
 
         MavenSession session = new MavenSession( container, repoSession, request, result );
+        
+        //
+        // We enter the session scope right after the MavenSession creation and before any of the AbstractLifecycleParticipant lookups
+        // so that @SessionScoped components can be @Injected into AbstractLifecycleParticipants.
+        // 
+        sessionScope.enter();
+        sessionScope.seed( MavenSession.class, session );
+        
         legacySupport.setSession( session );
 
         try
@@ -278,8 +286,6 @@ public class DefaultMaven
         }
         
         WorkspaceReader reactorWorkspace;
-        sessionScope.enter();
-        sessionScope.seed( MavenSession.class, session );
         try
         {
             reactorWorkspace = container.lookup( WorkspaceReader.class, ReactorReader.HINT );