You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gp...@apache.org on 2011/04/18 19:36:46 UTC

svn commit: r1094669 - in /myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src: main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/ test/java/org/apache/myface...

Author: gpetracek
Date: Mon Apr 18 17:36:45 2011
New Revision: 1094669

URL: http://svn.apache.org/viewvc?rev=1094669&view=rev
Log:
EXTCDI-170 cleanup

Added:
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/TestViewConfigExtractor.java
      - copied, changed from r1094564, myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/CustomViewConfigExtractor.java
Removed:
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/CustomViewConfigExtractor.java
Modified:
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigDescriptor.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigExtractor.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ExtractedViewConfigDefinitionEntry.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ViewConfigExtension.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/EditableViewConfigDescriptor.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/ViewConfigExtractor.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/resources/META-INF/services/org.apache.myfaces.extensions.cdi.jsf.impl.config.view.spi.ViewConfigExtractor

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigDescriptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigDescriptor.java?rev=1094669&r1=1094668&r2=1094669&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigDescriptor.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigDescriptor.java Mon Apr 18 17:36:45 2011
@@ -63,7 +63,7 @@ public class DefaultViewConfigDescriptor
     //meta-data
     private List<Annotation> metaDataList;
 
-    private boolean simpleEntryMode = false;
+    private boolean partialViewConfig = false;
 
     private transient BeanManager beanManager;
 
@@ -293,14 +293,20 @@ public class DefaultViewConfigDescriptor
         this.pageBeanDescriptors = Collections.unmodifiableList(newList);
     }
 
-    void activateSimpleEntryMode()
+    /**
+     * {@inheritDoc}
+     */
+    public void setPartialViewConfig(boolean inlinePageBean)
     {
-        this.simpleEntryMode = true;
+        this.partialViewConfig = inlinePageBean;
     }
 
-    boolean isSimpleEntryMode()
+    /**
+     * {@inheritDoc}
+     */
+    public boolean isPartialViewConfig()
     {
-        return simpleEntryMode;
+        return partialViewConfig;
     }
 
     private List<PageBeanDescriptor> findPageBeanDefinitions(Class<? extends ViewConfig> viewDefinitionClass)

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigExtractor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigExtractor.java?rev=1094669&r1=1094668&r2=1094669&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigExtractor.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/DefaultViewConfigExtractor.java Mon Apr 18 17:36:45 2011
@@ -45,7 +45,7 @@ class DefaultViewConfigExtractor impleme
     /**
      * {@inheritDoc}
      */
-    public ViewConfigDescriptor extractViewConfig(Class<? extends ViewConfig> viewDefinitionClass)
+    public EditableViewConfigDescriptor extractViewConfig(Class<? extends ViewConfig> viewDefinitionClass)
     {
         //use the interface to make clear which information we really need
         ViewConfigDescriptor viewConfigDescriptor = new ExtractedViewConfigDefinitionEntry(viewDefinitionClass);
@@ -64,7 +64,7 @@ class DefaultViewConfigExtractor impleme
     /**
      * {@inheritDoc}
      */
-    public ViewConfigDescriptor extractInlineViewConfig(Class<? extends ViewConfig> viewDefinitionClass)
+    public EditableViewConfigDescriptor extractInlineViewConfig(Class<? extends ViewConfig> viewDefinitionClass)
     {
         Class viewConfigRootMarker = ViewConfigCache.getInlineViewConfigRootMarker();
 
@@ -95,8 +95,8 @@ class DefaultViewConfigExtractor impleme
         return extractViewConfigDescriptor(viewDefinitionClass, viewConfigDescriptor);
     }
 
-    private ViewConfigDescriptor extractViewConfigDescriptor(Class<? extends ViewConfig> viewDefinitionClass,
-                                                             ViewConfigDescriptor viewConfigDescriptor)
+    private EditableViewConfigDescriptor extractViewConfigDescriptor(Class<? extends ViewConfig> viewDefinitionClass,
+                                                                     ViewConfigDescriptor viewConfigDescriptor)
     {
         scanViewConfigClass(viewDefinitionClass, (ExtractedViewConfigDefinitionEntry)viewConfigDescriptor);
 
@@ -111,12 +111,12 @@ class DefaultViewConfigExtractor impleme
         }
 
         return new DefaultViewConfigDescriptor(viewConfigDescriptor.getViewId(),
-                                          viewDefinitionClass,
-                                          viewConfigDescriptor.getNavigationMode(),
-                                          viewParameterMode,
-                                          viewConfigDescriptor.getAccessDecisionVoters(),
-                                          errorView,
-                                          viewConfigDescriptor.getMetaData());
+                                               viewDefinitionClass,
+                                               viewConfigDescriptor.getNavigationMode(),
+                                               viewParameterMode,
+                                               viewConfigDescriptor.getAccessDecisionVoters(),
+                                               errorView,
+                                               viewConfigDescriptor.getMetaData());
     }
 
     private Collection<Annotation> extractViewMetaData(

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ExtractedViewConfigDefinitionEntry.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ExtractedViewConfigDefinitionEntry.java?rev=1094669&r1=1094668&r2=1094669&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ExtractedViewConfigDefinitionEntry.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ExtractedViewConfigDefinitionEntry.java Mon Apr 18 17:36:45 2011
@@ -412,6 +412,22 @@ class ExtractedViewConfigDefinitionEntry
     }
 
     /**
+     * not available
+     */
+    public void setPartialViewConfig(boolean partialMode)
+    {
+        throw new IllegalStateException(NOT_IMPLEMENTED_MESSAGE);
+    }
+
+    /**
+     * not available
+     */
+    public boolean isPartialViewConfig()
+    {
+        throw new IllegalStateException(NOT_IMPLEMENTED_MESSAGE);
+    }
+
+    /**
      * Forces to block the given meta-data for new scanning processes
      * @param metaDataClass meta-data which should be blocked
      */

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ViewConfigExtension.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ViewConfigExtension.java?rev=1094669&r1=1094668&r2=1094669&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ViewConfigExtension.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/ViewConfigExtension.java Mon Apr 18 17:36:45 2011
@@ -137,9 +137,8 @@ public class ViewConfigExtension impleme
         {
             ViewConfigDescriptor existingDescriptor = ViewConfigCache.getViewConfigDescriptor(newEntry.getViewConfig());
 
-            //TODO introduce an SPI with a better name
-            if(/*viewConfigDescriptor != null*/existingDescriptor instanceof DefaultViewConfigDescriptor
-                    && ((DefaultViewConfigDescriptor)existingDescriptor).isSimpleEntryMode())
+            if(existingDescriptor instanceof EditableViewConfigDescriptor
+                    && ((EditableViewConfigDescriptor)existingDescriptor).isPartialViewConfig())
             {
                 //in this case the alternative view-controller approach which just adds page-beans was invoked before
                 //-> we just have to use the page bean of the existing entry
@@ -223,13 +222,9 @@ public class ViewConfigExtension impleme
                     if(entry instanceof EditableViewConfigDescriptor)
                     {
                         ((EditableViewConfigDescriptor)entry).addPageBean(annotatedType.getJavaClass());
+                        ((EditableViewConfigDescriptor)entry).setPartialViewConfig(true);
                     }
 
-                    if(entry instanceof DefaultViewConfigDescriptor)
-                    {
-                        //TODO introduce an SPI with a better name
-                        ((DefaultViewConfigDescriptor)entry).activateSimpleEntryMode();
-                    }
                     ViewConfigCache.addViewConfigDescriptor(entry.getViewId(), entry);
                 }
             }

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/EditableViewConfigDescriptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/EditableViewConfigDescriptor.java?rev=1094669&r1=1094668&r2=1094669&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/EditableViewConfigDescriptor.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/EditableViewConfigDescriptor.java Mon Apr 18 17:36:45 2011
@@ -50,6 +50,19 @@ public interface EditableViewConfigDescr
     void addPageBean(Class pageBeanClass);
 
     /**
+     * Allows to mark the current descriptor as partial config e.g. due to inline configs with
+     * {@link org.apache.myfaces.extensions.cdi.core.api.config.view.View}
+     * @param partialMode indicates if the entry is in the partial view-config mode
+     */
+    void setPartialViewConfig(boolean partialMode);
+
+    /**
+     * Exposes if the current view-config represents a partial config which isn't created based on a central config
+     * @return true if it is a partial config, false otherwise
+     */
+    boolean isPartialViewConfig();
+
+    /**
      * Invokes the methods annotated with {@link org.apache.myfaces.extensions.cdi.jsf.api.config.view.InitView}
      */
     void invokeInitViewMethods();

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/ViewConfigExtractor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/ViewConfigExtractor.java?rev=1094669&r1=1094668&r2=1094669&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/ViewConfigExtractor.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/config/view/spi/ViewConfigExtractor.java Mon Apr 18 17:36:45 2011
@@ -19,7 +19,6 @@
 package org.apache.myfaces.extensions.cdi.jsf.impl.config.view.spi;
 
 import org.apache.myfaces.extensions.cdi.core.api.config.view.ViewConfig;
-import org.apache.myfaces.extensions.cdi.jsf.api.config.view.ViewConfigDescriptor;
 
 import java.io.Serializable;
 
@@ -29,11 +28,11 @@ import java.io.Serializable;
 public interface ViewConfigExtractor extends Serializable
 {
     /**
-     * Creates a {@link ViewConfigDescriptor} for the given view-config class
+     * Creates a {@link EditableViewConfigDescriptor} for the given view-config class
      * @param viewDefinitionClass current view-config class
      * @return descriptor which represents the view-config for the given config class
      */
-    ViewConfigDescriptor extractViewConfig(Class<? extends ViewConfig> viewDefinitionClass);
+    EditableViewConfigDescriptor extractViewConfig(Class<? extends ViewConfig> viewDefinitionClass);
 
     /**
      * Evaluates if the given view-config class is an inline conifg - that means if it is a resolvable (page-)bean
@@ -43,9 +42,9 @@ public interface ViewConfigExtractor ext
     boolean isInlineViewConfig(Class<? extends ViewConfig> viewDefinitionClass);
 
     /**
-     * Creates a {@link ViewConfigDescriptor} for the given inline view-config class
+     * Creates a {@link EditableViewConfigDescriptor} for the given inline view-config class
      * @param viewDefinitionClass current view-config class
      * @return descriptor which represents the view-config for the given config class
      */
-    ViewConfigDescriptor extractInlineViewConfig(Class<? extends ViewConfig> viewDefinitionClass);
+    EditableViewConfigDescriptor extractInlineViewConfig(Class<? extends ViewConfig> viewDefinitionClass);
 }

Copied: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/TestViewConfigExtractor.java (from r1094564, myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/CustomViewConfigExtractor.java)
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/TestViewConfigExtractor.java?p2=myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/TestViewConfigExtractor.java&p1=myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/CustomViewConfigExtractor.java&r1=1094564&r2=1094669&rev=1094669&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/CustomViewConfigExtractor.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/java/org/apache/myfaces/extensions/cdi/jsf/test/impl/config/view/TestViewConfigExtractor.java Mon Apr 18 17:36:45 2011
@@ -20,18 +20,20 @@ package org.apache.myfaces.extensions.cd
 
 import org.apache.myfaces.extensions.cdi.core.api.Advanced;
 import org.apache.myfaces.extensions.cdi.core.api.config.view.ViewConfig;
-import org.apache.myfaces.extensions.cdi.jsf.api.config.view.ViewConfigDescriptor;
+import org.apache.myfaces.extensions.cdi.jsf.impl.config.view.spi.EditableViewConfigDescriptor;
 import org.apache.myfaces.extensions.cdi.jsf.impl.config.view.spi.ViewConfigExtractor;
 
 /**
  * @author Gerhard Petracek
  */
 @Advanced
-public class CustomViewConfigExtractor implements ViewConfigExtractor
+public class TestViewConfigExtractor implements ViewConfigExtractor
 {
+    private static final long serialVersionUID = -1714138861845603400L;
+
     private ViewConfigExtractor defaultViewConfigExtractor;
 
-    public ViewConfigDescriptor extractViewConfig(Class<? extends ViewConfig> viewDefinitionClass)
+    public EditableViewConfigDescriptor extractViewConfig(Class<? extends ViewConfig> viewDefinitionClass)
     {
         return defaultViewConfigExtractor.extractViewConfig(viewDefinitionClass);
     }
@@ -41,7 +43,7 @@ public class CustomViewConfigExtractor i
         return defaultViewConfigExtractor.isInlineViewConfig(viewDefinitionClass);
     }
 
-    public ViewConfigDescriptor extractInlineViewConfig(Class<? extends ViewConfig> viewDefinitionClass)
+    public EditableViewConfigDescriptor extractInlineViewConfig(Class<? extends ViewConfig> viewDefinitionClass)
     {
         return defaultViewConfigExtractor.extractInlineViewConfig(viewDefinitionClass);
     }

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/resources/META-INF/services/org.apache.myfaces.extensions.cdi.jsf.impl.config.view.spi.ViewConfigExtractor
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/resources/META-INF/services/org.apache.myfaces.extensions.cdi.jsf.impl.config.view.spi.ViewConfigExtractor?rev=1094669&r1=1094668&r2=1094669&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/resources/META-INF/services/org.apache.myfaces.extensions.cdi.jsf.impl.config.view.spi.ViewConfigExtractor (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/test/resources/META-INF/services/org.apache.myfaces.extensions.cdi.jsf.impl.config.view.spi.ViewConfigExtractor Mon Apr 18 17:36:45 2011
@@ -17,4 +17,4 @@
 # under the License.
 #####################################################################################
 
-org.apache.myfaces.extensions.cdi.jsf.test.impl.config.view.CustomViewConfigExtractor
\ No newline at end of file
+org.apache.myfaces.extensions.cdi.jsf.test.impl.config.view.TestViewConfigExtractor
\ No newline at end of file