myfaces-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sless...@apache.org
Subject svn commit: r761981 [6/7] - in /myfaces/core/branches/2_0_0/api/src/main/java/javax/faces: ./ application/ component/ component/behavior/ component/visit/ context/ convert/ event/ model/ render/ validator/ view/ view/facelets/ webapp/ webapp/pdl/
Date Sat, 04 Apr 2009 18:44:19 GMT
Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/event/PreRenderViewEvent.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/event/PreRenderViewEvent.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/event/PreRenderViewEvent.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/event/PreRenderViewEvent.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.event;
+
+import javax.faces.component.UIViewRoot;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-14 20:04:33 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public class PreRenderViewEvent extends ComponentSystemEvent
+{
+    /**
+     * @param root
+     */
+    public PreRenderViewEvent(UIViewRoot root)
+    {
+        super(root);
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/event/PreValidateEvent.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/event/PreValidateEvent.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/event/PreValidateEvent.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/event/PreValidateEvent.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.event;
+
+import javax.faces.component.UIComponent;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-14 20:05:19 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public class PreValidateEvent extends ComponentSystemEvent
+{
+    /**
+     * @param component
+     */
+    public PreValidateEvent(UIComponent component)
+    {
+        super(component);
+    }
+}

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ArrayDataModel.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ArrayDataModel.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ArrayDataModel.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ArrayDataModel.java Sat Apr  4 18:44:14 2009
@@ -110,7 +110,6 @@
     @Override
     public void setWrappedData(Object data)
     {
-        // TODO: Check with EG why data argument is not of type E
         _data = (E[])data;
         int rowIndex = _data != null ? 0 : -1;
         setRowIndex(rowIndex);

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/CustomScoped.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/CustomScoped.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/CustomScoped.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/CustomScoped.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,39 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.model;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-21 09:35:26 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+@Target(value=ElementType.TYPE)
+@Retention(value=RetentionPolicy.RUNTIME)
+@Inherited
+public @interface CustomScoped
+{
+    public String value() default "";
+}

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/DataModel.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/DataModel.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/DataModel.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/DataModel.java Sat Apr  4 18:44:14 2009
@@ -131,7 +131,7 @@
      */
     public Iterator<E> iterator()
     {
-        return new DataModelIterator<E>();
+        return new DataModelIterator();
     }
 
     public void removeDataModelListener(DataModelListener listener)
@@ -159,10 +159,9 @@
      *
      * @param data The object to be wrapped.
      */
-    // TODO: Check with EG why data argument is not of type E
     abstract public void setWrappedData(Object data);
     
-    private class DataModelIterator<E> implements Iterator<E>
+    private class DataModelIterator implements Iterator<E>
     {
         private int nextRowIndex = 0;
         

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ListDataModel.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ListDataModel.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ListDataModel.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ListDataModel.java Sat Apr  4 18:44:14 2009
@@ -113,7 +113,6 @@
     @Override
     public void setWrappedData(Object data)
     {
-        // TODO: Check with EG why data is not of type E
         _data = (List<E>)data;
         int rowIndex = _data != null ? 0 : -1;
         setRowIndex(rowIndex);

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ManagedBean.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ManagedBean.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ManagedBean.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ManagedBean.java Sat Apr  4 18:44:14 2009
@@ -19,6 +19,7 @@
 package javax.faces.model;
 
 import java.lang.annotation.ElementType;
+import java.lang.annotation.Inherited;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
@@ -31,6 +32,7 @@
  */
 @Retention(RetentionPolicy.RUNTIME)
 @Target(ElementType.TYPE)
+@Inherited
 public @interface ManagedBean
 {
     /**

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ResultDataModel.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ResultDataModel.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ResultDataModel.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ResultDataModel.java Sat Apr  4 18:44:14 2009
@@ -80,7 +80,6 @@
     }
 
     @Override
-    // TODO: Check with EG why data argument is not of type Result
     public Object getWrappedData()
     {
         return _data;
@@ -121,7 +120,6 @@
         return _data.getRows();
     }
 
-    // TODO: Check with EG why data argument is not of type Result
     @Override
     public void setWrappedData(Object data)
     {

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ScalarDataModel.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ScalarDataModel.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ScalarDataModel.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/ScalarDataModel.java Sat Apr  4 18:44:14 2009
@@ -104,7 +104,6 @@
     @Override
     public void setWrappedData(Object data)
     {
-        // TODO: Check with EG why data argument is not of type E
         _data = (E) data;
         int rowIndex = _data != null ? 0 : -1;
         setRowIndex(rowIndex);

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/SelectItem.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/SelectItem.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/SelectItem.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/model/SelectItem.java Sat Apr  4 18:44:14 2009
@@ -22,7 +22,7 @@
 
 /**
  * see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
- *
+ * 
  * @author Thomas Spiegl (latest modification by $Author$)
  * @version $Revision$ $Date$
  */
@@ -35,66 +35,75 @@
     private String _description;
     private boolean _disabled;
     private boolean _escape;
+    private boolean _noSelectionOption;
 
     // CONSTRUCTORS
     public SelectItem()
     {
+        this(null);
     }
 
     public SelectItem(Object value)
     {
-        _value = value;
-        _label = value == null ? null : value.toString();
-        _description = null;
-        _disabled = false;
-        _escape=true;
+        this(value, value == null ? null : value.toString());
     }
 
     public SelectItem(Object value, String label)
     {
-        _value = value;
-        _label = label;
-        _description = null;
-        _disabled = false;
-        _escape = true;
+        this(value, label, null);
     }
 
     public SelectItem(Object value, String label, String description)
     {
-        _value = value;
-        _label = label;
-        _description = description;
-        _disabled = false;
-        _escape = true;
+        this(value, label, description, false);
     }
 
     public SelectItem(Object value, String label, String description, boolean disabled)
     {
-        _value = value;
-        _label = label;
-        _description = description;
-        _disabled = disabled;
-        _escape = true;
+        this(value, label, description, disabled, true);
     }
 
     public SelectItem(Object value, String label, String description, boolean disabled, boolean escape)
     {
+        this(value, label, description, disabled, escape, false);
+    }
+
+    /**
+     * 
+     * @param value
+     * @param label
+     * @param description
+     * @param disabled
+     * @param escape
+     * @param noSelectionOption
+     * 
+     * @since 2.0
+     */
+    public SelectItem(Object value, String label, String description, boolean disabled, boolean escape,
+                      boolean noSelectionOption)
+    {
         _value = value;
         _label = label;
         _description = description;
         _disabled = disabled;
-        this._escape = escape;
+        _escape = escape;
+        _noSelectionOption = noSelectionOption;
     }
-    
+
     // METHODS
     public String getDescription()
     {
         return _description;
     }
 
-    public void setDescription(String description)
+    public String getLabel()
     {
-        _description = description;
+        return _label;
+    }
+
+    public Object getValue()
+    {
+        return _value;
     }
 
     public boolean isDisabled()
@@ -102,26 +111,53 @@
         return _disabled;
     }
 
+    public boolean isEscape()
+    {
+        return _escape;
+    }
+
+    /**
+     * 
+     * @return
+     * 
+     * @since 2.0
+     */
+    public boolean isNoSelectionOption()
+    {
+        return _noSelectionOption;
+    }
+
+    public void setDescription(String description)
+    {
+        _description = description;
+    }
+
     public void setDisabled(boolean disabled)
     {
         _disabled = disabled;
     }
 
-    public String getLabel()
+    public void setEscape(boolean escape)
     {
-        return _label;
+        _escape = escape;
     }
 
     public void setLabel(String label)
     {
         if (label == null)
-          throw new NullPointerException("label");
+            throw new NullPointerException("label");
         _label = label;
     }
 
-    public Object getValue()
+    /**
+     * 
+     * @param noSelectionOption
+     * 
+     * @since 2.0
+     */
+    public void setNoSelectionOption(boolean noSelectionOption)
     {
-        return _value;
+        _noSelectionOption = noSelectionOption;
     }
 
     public void setValue(Object value)
@@ -129,14 +165,4 @@
         _value = value;
     }
 
-    public boolean isEscape()
-    {
-        return _escape;
-    }
-
-    public void setEscape(boolean escape)
-    {
-        this._escape = escape;
-    }
-    
 }

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.render;
+
+import javax.faces.component.UIComponent;
+import javax.faces.component.behavior.ClientBehavior;
+import javax.faces.component.behavior.ClientBehaviorContext;
+import javax.faces.context.FacesContext;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-14 15:47:36 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public abstract class ClientBehaviorRenderer
+{
+    public void decode(FacesContext context, UIComponent component, ClientBehavior behavior)
+    {
+        // TODO: IMPLEMENT HERE
+    }
+
+    public String getScript(ClientBehaviorContext behaviorContext, ClientBehavior behavior)
+    {
+        // TODO: IMPLEMENT HERE
+        return null;
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/FacesBehaviorRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/FacesBehaviorRenderer.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/FacesBehaviorRenderer.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/FacesBehaviorRenderer.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.render;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-14 15:49:11 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+@Target(value=ElementType.TYPE)
+@Retention(value=RetentionPolicy.RUNTIME)
+@Inherited
+public @interface FacesBehaviorRenderer
+{
+    /**
+     * The value of this annotation attribute is taken to be the <i>renderer-type</i> which, in combination with
+     * {@link #componentFamily()} can be used to obtain a reference to an instance of this {@link Renderer} by calling
+     * {@link RenderKit#getRenderer(java.lang.String, java.lang.String)}.
+     */
+    public String rendererType();
+
+    /**
+     * The value of this annotation attribute is taken to be the <i>render-kit-id</i> in which an instance of this class
+     * of {@link Renderer} must be installed.
+     */
+    public String renderKitId() default RenderKitFactory.HTML_BASIC_RENDER_KIT;
+}

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/FacesRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/FacesRenderer.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/FacesRenderer.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/FacesRenderer.java Sat Apr  4 18:44:14 2009
@@ -18,10 +18,19 @@
  */
 package javax.faces.render;
 
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
 /**
  * @author Simon Lessard (latest modification by $Author: slessard $)
  * @version $Revision: 696523 $ $Date: 2008-09-24 18:52:14 -0400 (mer., 17 sept. 2008) $
  */
+@Target(value=ElementType.TYPE)
+@Retention(value=RetentionPolicy.RUNTIME)
+@Inherited
 public @interface FacesRenderer
 {
     /**
@@ -42,5 +51,5 @@
      * The value of this annotation attribute is taken to be the <i>render-kit-id</i> in which an instance of this class
      * of {@link Renderer} must be installed.
      */
-    public String renderKitId() default "HTML_BASIC";
+    public String renderKitId() default RenderKitFactory.HTML_BASIC_RENDER_KIT;
 }

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/RenderKit.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/RenderKit.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/RenderKit.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/render/RenderKit.java Sat Apr  4 18:44:14 2009
@@ -29,27 +29,47 @@
 
 /**
  * see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
- *
+ * 
  * @author Manfred Geiler (latest modification by $Author$)
  * @version $Revision$ $Date$
  */
 public abstract class RenderKit
 {
-    public abstract void addRenderer(String family,
-                                     String rendererType,
-                                     Renderer renderer);
+    public void addBehaviorRenderer(String type, ClientBehaviorRenderer renderer)
+    {
+        // TODO: IMPLEMENT IMPL
+        throw new UnsupportedOperationException();
+    }
+
+    public abstract void addRenderer(String family, String rendererType, Renderer renderer);
 
     public abstract ResponseStream createResponseStream(OutputStream out);
 
-    public abstract ResponseWriter createResponseWriter(Writer writer,
-                                                        String contentTypeList,
-                                                        String characterEncoding);
+    public abstract ResponseWriter createResponseWriter(Writer writer, String contentTypeList, String characterEncoding);
+    
+    public ClientBehaviorRenderer getBehaviorRenderer(String type)
+    {
+        // TODO: IMPLEMENT IMPL
+        throw new UnsupportedOperationException();
+    }
     
+    public Iterator<String> getBehaviorRendererTypes()
+    {
+        // TODO: IMPLEMENT IMPL
+        List<String> emptyList = Collections.emptyList();
+
+        return emptyList.iterator();
+    }
+
     /**
-     * <p>Return an <code>Iterator</code> over the component-family entries supported by this 
-     * <code>RenderKit</code> instance.</p>
-     * 
-     * <p>The default implementation of this method returns an empty <code>Iterator</code></p>
+     * <p>
+     * Return an <code>Iterator</code> over the component-family entries supported by this <code>RenderKit</code>
+     * instance.
+     * </p>
+     * 
+     * <p>
+     * The default implementation of this method returns an empty <code>Iterator</code>
+     * </p>
      * 
      * @return an iterator over the component families supported by this <code>RenderKit</code>.
      * 
@@ -57,24 +77,30 @@
      */
     public Iterator<String> getComponentFamilies()
     {
+        // TODO: IMPLEMENT IMPL
         List<String> emptyList = Collections.emptyList();
-        
+
         return emptyList.iterator();
     }
 
-    public abstract Renderer getRenderer(String family,
-                                         String rendererType);
-    
+    public abstract Renderer getRenderer(String family, String rendererType);
+
     /**
-     * <p>Return an <code>Iterator</code> over the renderer-type entries for the given component-family.</p>
-     * 
-     * <p>If the specified <code>componentFamily</code> is not known to this <code>RenderKit</code> implementation, 
-     * return an empty <code>Iterator</code></p>
+     * <p>
+     * Return an <code>Iterator</code> over the renderer-type entries for the given component-family.
+     * </p>
+     * 
+     * <p>
+     * If the specified <code>componentFamily</code> is not known to this <code>RenderKit</code> implementation, return
+     * an empty <code>Iterator</code>
+     * </p>
+     * 
+     * <p>
+     * The default implementation of this method returns an empty <code>Iterator</code>
+     * </p>
      * 
-     * <p>The default implementation of this method returns an empty <code>Iterator</code> </p>
-     * 
-     * @param componentFamily one of the members of the <code>Iterator</code> returned by 
-     *                        {@link #getComponentFamilies()}
+     * @param componentFamily
+     *            one of the members of the <code>Iterator</code> returned by {@link #getComponentFamilies()}
      * 
      * @return an iterator over the renderer-type entries for the given component-family.
      * 
@@ -82,8 +108,9 @@
      */
     public Iterator<String> getRendererTypes(String componentFamily)
     {
+        // TODO: IMPLEMENT IMPL
         List<String> emptyList = Collections.emptyList();
-        
+
         return emptyList.iterator();
     }
 

Modified: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/validator/FacesValidator.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/validator/FacesValidator.java?rev=761981&r1=761980&r2=761981&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/validator/FacesValidator.java (original)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/validator/FacesValidator.java Sat Apr  4 18:44:14 2009
@@ -19,6 +19,7 @@
 package javax.faces.validator;
 
 import java.lang.annotation.ElementType;
+import java.lang.annotation.Inherited;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
@@ -31,6 +32,7 @@
  */
 @Retention(RetentionPolicy.RUNTIME)
 @Target(ElementType.TYPE)
+@Inherited
 public @interface FacesValidator
 {
     /**

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ActionSource2AttachedObjectHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ActionSource2AttachedObjectHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ActionSource2AttachedObjectHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ActionSource2AttachedObjectHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+/**
+ * A PDL handler that exposes {@link javax.faces.event.ActionListener ActionListener} to a <em>page author</em>. The
+ * default implementation of Facelets must provide an implemention of this in the handler for the
+ * <code>&lt;f:actionListener&gt;</code> tag.
+ * 
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:04:31 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public interface ActionSource2AttachedObjectHandler extends AttachedObjectHandler
+{
+
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ActionSource2AttachedObjectTarget.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ActionSource2AttachedObjectTarget.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ActionSource2AttachedObjectTarget.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ActionSource2AttachedObjectTarget.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+/**
+ * A marker interface for PDL tags that represent <code>&lt;composite:actionSource/&gt;</code> for use by the
+ * <em>composite component page author</em>.
+ * 
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:21:19 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public interface ActionSource2AttachedObjectTarget extends AttachedObjectTarget
+{
+
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/AttachedObjectHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/AttachedObjectHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/AttachedObjectHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/AttachedObjectHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+
+/**
+ * The abstract base interface for a handler representing an <em>attached object</em> in a PDL page. Subinterfaces are
+ * provided for the common attached objects that expose {@link javax.faces.convert.Converter Converter},
+ * {@link javax.faces.validator.Validator Validator}, {@link javax.faces.event.ValueChangeEvent ValueChangeEvent}, and
+ * {@link javax.faces.event.ActionListener ActionListener} for use by <em>page authors</em>.
+ * 
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:06:57 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public interface AttachedObjectHandler
+{
+    /**
+     * Take the argument <code>parent</code> and apply this attached <code>object</code> to it. The action taken varies
+     * with class that implements one of the subinterfaces of this interface.
+     * 
+     * @param context
+     *            The <code>FacesContext</code> for this request
+     * @param parent
+     *            The <code>UIComponent</code> to which this particular attached object must be applied.
+     */
+    public void applyAttachedObject(FacesContext context, UIComponent parent);
+
+    /**
+     * Return the value of the "for" attribute specified by the <em>page author</em> on the tag for this
+     * <code>AttachedObjectHandler</code>.
+     * 
+     * @return the value of the "for" attribute specified by the <em>page author</em> on the tag for this
+     *         <code>AttachedObjectHandler</code>.
+     */
+    public String getFor();
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/AttachedObjectTarget.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/AttachedObjectTarget.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/AttachedObjectTarget.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/AttachedObjectTarget.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,42 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+import java.util.List;
+
+import javax.faces.component.UIComponent;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:18:02 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public interface AttachedObjectTarget
+{
+    /**
+     * The key in the value set of the <em>composite component</em> <code>BeanDescriptor</code>, the value for which is
+     * a <code>List&lt;AttachedObjectTarget&gt;</code>.
+     */
+    public static final String ATTACHED_OBJECT_TARGETS_KEY = "javax.faces.view.AttachedObjectTargets";
+
+    public String getName();
+
+    public List<UIComponent> getTargets();
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/BehaviorHolderAttachedObjectHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/BehaviorHolderAttachedObjectHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/BehaviorHolderAttachedObjectHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/BehaviorHolderAttachedObjectHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-14 20:08:26 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public interface BehaviorHolderAttachedObjectHandler extends AttachedObjectHandler
+{
+
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/BehaviorHolderAttachedObjectTarget.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/BehaviorHolderAttachedObjectTarget.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/BehaviorHolderAttachedObjectTarget.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/BehaviorHolderAttachedObjectTarget.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-04-04 14:34:08 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public interface BehaviorHolderAttachedObjectTarget extends AttachedObjectTarget
+{
+    public boolean isDefaultEvent();
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/EditableValueHolderAttachedObjectHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/EditableValueHolderAttachedObjectHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/EditableValueHolderAttachedObjectHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/EditableValueHolderAttachedObjectHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+/**
+ * A PDL handler that exposes {@link javax.faces.validator.Validator Validator} or
+ * {@link javax.faces.event.ValueChangeListener ValueChangeListener} to a <em>page author</em>. The default
+ * implementation of Facelets must provide an implemention of this in the handler for the
+ * <code>&lt;f:validator&gt;</code> (and any tags for any of the standard validators) and
+ * <code>&lt;f:valueChangeListener&gt;</code> tags.
+ * 
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:49:48 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public interface EditableValueHolderAttachedObjectHandler extends ValueHolderAttachedObjectHandler
+{
+
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/EditableValueHolderAttachedObjectTarget.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/EditableValueHolderAttachedObjectTarget.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/EditableValueHolderAttachedObjectTarget.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/EditableValueHolderAttachedObjectTarget.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+/**
+ * A marker interface for PDL tags that represent <code>&lt;composite:editableValueHolder/&gt;</code> for use by the
+ * <em>composite component page author</em>.
+ * 
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:53:04 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public interface EditableValueHolderAttachedObjectTarget extends ValueHolderAttachedObjectTarget
+{
+
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/StateManagementStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/StateManagementStrategy.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/StateManagementStrategy.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/StateManagementStrategy.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+import javax.faces.component.UIViewRoot;
+import javax.faces.context.FacesContext;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-21 09:32:04 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public abstract class StateManagementStrategy
+{
+    public abstract boolean isPdlDeliversInitialStateEvent(FacesContext context);
+
+    public abstract UIViewRoot restoreView(FacesContext context, String viewId, String renderKitId);
+    
+    public abstract Object saveView(FacesContext context);
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ValueHolderAttachedObjectHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ValueHolderAttachedObjectHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ValueHolderAttachedObjectHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ValueHolderAttachedObjectHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+/**
+ * A PDL handler that exposes {@link javax.faces.convert.Converter Converter} to a <em>page author</em>. The default
+ * implementation of Facelets must provide an implemention of this in the handler for the
+ * <code>&lt;f:converter&gt;</code> (and any tags for any of the standard converters) tags.
+ * 
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:26:04 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public interface ValueHolderAttachedObjectHandler extends AttachedObjectHandler
+{
+
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ValueHolderAttachedObjectTarget.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ValueHolderAttachedObjectTarget.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ValueHolderAttachedObjectTarget.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ValueHolderAttachedObjectTarget.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+/**
+ * A marker interface for PDL tags that represent <code>&lt;composite:valueHolder/&gt;</code> for use by the
+ * <em>composite component page author</em>.
+ * 
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:30:38 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public interface ValueHolderAttachedObjectTarget extends AttachedObjectTarget
+{
+
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewDeclarationLanguage.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewDeclarationLanguage.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewDeclarationLanguage.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewDeclarationLanguage.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+import java.beans.BeanInfo;
+import java.io.IOException;
+
+import javax.faces.application.Resource;
+import javax.faces.component.UIViewRoot;
+import javax.faces.context.FacesContext;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-09-24 19:54:04 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public abstract class ViewDeclarationLanguage
+{
+    public abstract void buildView(FacesContext context, UIViewRoot view) throws IOException;
+
+    public abstract UIViewRoot createView(FacesContext context, String viewId);
+
+    public abstract BeanInfo getComponentMetadata(FacesContext context, Resource componentResource);
+
+    public abstract Resource getScriptComponentResource(FacesContext context, Resource componentResource);
+
+    public abstract ViewMetadata getViewMetadata(FacesContext context, String viewId);
+
+    public abstract void renderView(FacesContext context, UIViewRoot view) throws IOException;
+
+    public abstract UIViewRoot restoreView(FacesContext context, String viewId);
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewDeclarationLanguageFactory.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewDeclarationLanguageFactory.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewDeclarationLanguageFactory.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewDeclarationLanguageFactory.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+import javax.faces.FacesWrapper;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-14 20:12:27 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public abstract class ViewDeclarationLanguageFactory implements FacesWrapper<ViewDeclarationLanguageFactory>
+{
+    /**
+     * 
+     */
+    public ViewDeclarationLanguageFactory()
+    {
+    }
+    
+    public abstract ViewDeclarationLanguage getViewDeclarationLanguage(String viewId);
+
+    @Override
+    public ViewDeclarationLanguageFactory getWrapped()
+    {
+        return null;
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewMetadata.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewMetadata.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewMetadata.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/ViewMetadata.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view;
+
+import java.util.Collection;
+
+import javax.faces.component.UIViewParameter;
+import javax.faces.component.UIViewRoot;
+import javax.faces.context.FacesContext;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-14 20:10:08 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public abstract class ViewMetadata
+{
+    public abstract UIViewRoot createMetadataView(FacesContext context);
+    
+    public abstract String getViewId();
+    
+    public static Collection<UIViewParameter> getViewParameters(UIViewRoot root)
+    {
+        // TODO: IMPLEMENT HERE
+        return null;
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/AttributeHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/AttributeHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/AttributeHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/AttributeHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import javax.faces.view.facelets.FaceletContext;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-21 09:22:55 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public interface AttributeHandler
+{
+    public String getAttributeName(FaceletContext ctx);
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/BehaviorConfig.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/BehaviorConfig.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/BehaviorConfig.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/BehaviorConfig.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-15 15:55:58 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public interface BehaviorConfig extends TagConfig
+{
+    public String getBehaviorId();
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/BehaviorHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/BehaviorHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/BehaviorHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/BehaviorHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import javax.faces.view.BehaviorHolderAttachedObjectHandler;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-15 17:28:58 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public class BehaviorHandler extends FaceletsAttachedObjectHandler implements BehaviorHolderAttachedObjectHandler
+{
+    /**
+     * @param config
+     */
+    public BehaviorHandler(TagConfig config)
+    {
+        super(config);
+        // TODO IMPLEMENT API
+    }
+    
+    public String getBehaviorId()
+    {
+        // TODO IMPLEMENT API
+        return null;
+    }
+    
+    public TagAttribute getEvent()
+    {
+        // TODO IMPLEMENT API
+        return null;
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    protected TagHandlerDelegate getTagHandlerHelper()
+    {
+        // TODO IMPLEMENT API
+        return null;
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ComponentConfig.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ComponentConfig.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ComponentConfig.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ComponentConfig.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-15 15:57:40 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public interface ComponentConfig extends TagConfig
+{
+    public String getComponentType();
+    
+    public String getRendererType();
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ComponentHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ComponentHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ComponentHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ComponentHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import javax.faces.component.UIComponent;
+import javax.faces.view.facelets.FaceletContext;
+
+/**
+ * Implementation of the tag logic used in the JSF specification. This is your golden hammer for wiring UIComponents to
+ * Facelets.
+ * 
+ * @author Jacob Hookom
+ * @version $Id: ComponentHandler.java,v 1.19 2008/07/13 19:01:47 rlubke Exp $
+ */
+public class ComponentHandler extends DelegatingMetaTagHandler
+{
+    public ComponentHandler(ComponentConfig config)
+    {
+        super(config);
+
+        // TODO IMPLEMENT API
+    }
+
+    public ComponentConfig getComponentConfig()
+    {
+        // TODO IMPLEMENT API
+        return null;
+    }
+
+    public static final boolean isNew(UIComponent component)
+    {
+        // TODO IMPLEMENT API
+        return true;
+    }
+
+    public void onComponentCreated(FaceletContext ctx, UIComponent c, UIComponent parent)
+    {
+        // TODO IMPLEMENT API
+    }
+
+    public void onComponentPopulated(FaceletContext ctx, UIComponent c, UIComponent parent)
+    {
+        // TODO IMPLEMENT API
+    }
+
+    protected TagHandlerDelegate getTagHandlerHelper()
+    {
+        // TODO IMPLEMENT API
+        return null;
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/CompositeFaceletHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/CompositeFaceletHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/CompositeFaceletHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/CompositeFaceletHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,60 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import java.io.IOException;
+
+import javax.faces.component.UIComponent;
+import javax.faces.view.facelets.FaceletContext;
+import javax.faces.view.facelets.FaceletHandler;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-21 09:27:51 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public final class CompositeFaceletHandler implements FaceletHandler
+{
+    private final FaceletHandler[] children;
+    private final int len;
+
+    public CompositeFaceletHandler(FaceletHandler[] children)
+    {
+        this.children = children;
+        this.len = children.length;
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public void apply(FaceletContext ctx, UIComponent parent) throws IOException
+    {
+        for (int i = 0; i < len; i++)
+        {
+            this.children[i].apply(ctx, parent);
+        }
+    }
+
+    public FaceletHandler[] getHandlers()
+    {
+        return this.children;
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ConverterConfig.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ConverterConfig.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ConverterConfig.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ConverterConfig.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-15 15:58:29 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public interface ConverterConfig extends TagConfig
+{
+    public String getConverterId();
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ConverterHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ConverterHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ConverterHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/ConverterHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import javax.faces.view.ValueHolderAttachedObjectHandler;
+
+/**
+ * Handles setting a Converter instance on a ValueHolder. Will wire all attributes set to the Converter instance
+ * created/fetched. Uses the "binding" attribute for grabbing instances to apply attributes to. <p/> Will only
+ * set/create Converter is the passed UIComponent's parent is null, signifying that it wasn't restored from an existing
+ * tree.
+ * 
+ * @see javax.faces.webapp.ConverterELTag
+ * @see javax.faces.convert.Converter
+ * @see javax.faces.component.ValueHolder
+ * @author Jacob Hookom
+ * @version $Id: ConvertHandler.java,v 1.4 2008/07/13 19:01:46 rlubke Exp $
+ */
+public class ConverterHandler extends FaceletsAttachedObjectHandler implements ValueHolderAttachedObjectHandler
+{
+    public ConverterHandler(ConverterConfig config)
+    {
+        super(config);
+        
+        // TODO IMPLEMENT API
+    }
+    
+    public String getConverterId()
+    {
+        // TODO IMPLEMENT API
+        return null;
+    }
+    
+    protected TagHandlerDelegate getTagHandlerHelper()
+    {
+        // TODO IMPLEMENT API
+        return null;
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/DelegatingMetaTagHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/DelegatingMetaTagHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/DelegatingMetaTagHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/DelegatingMetaTagHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,101 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import java.io.IOException;
+
+import javax.faces.component.UIComponent;
+import javax.faces.view.facelets.FaceletContext;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2009-03-15 17:11:43 -0400 (mer., 17 sept. 2008) $
+ * 
+ * @since 2.0
+ */
+public abstract class DelegatingMetaTagHandler extends MetaTagHandler
+{
+    protected TagHandlerDelegateFactory helperFactory;
+
+    public DelegatingMetaTagHandler(TagConfig config)
+    {
+        super(config);
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public void apply(FaceletContext ctx, UIComponent parent) throws IOException
+    {
+        getTagHandlerHelper().apply(ctx, parent);
+    }
+
+    public void applyNextHandler(FaceletContext ctx, UIComponent c) throws IOException
+    {
+        // TODO: IMPLEMENT HERE
+    }
+
+    public TagAttribute getBinding()
+    {
+        // TODO: IMPLEMENT HERE
+        return null;
+    }
+
+    public Tag getTag()
+    {
+        // TODO: IMPLEMENT HERE
+        return null;
+    }
+
+    public TagAttribute getTagAttribute(String localName)
+    {
+        // TODO: IMPLEMENT HERE
+        return null;
+    }
+
+    public String getTagId()
+    {
+        // TODO: IMPLEMENT HERE
+        return null;
+    }
+
+    public boolean isDisabled(FaceletContext ctx)
+    {
+        // TODO: IMPLEMENT HERE
+        return false;
+    }
+
+    public void setAttributes(FaceletContext ctx, Object instance)
+    {
+        // TODO: IMPLEMENT HERE
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    protected MetaRuleset createMetaRuleset(Class<?> type)
+    {
+        return getTagHandlerHelper().createMetaRuleset(type);
+    }
+
+    protected abstract TagHandlerDelegate getTagHandlerHelper();
+
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletContext.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletContext.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletContext.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletContext.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,126 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import java.io.IOException;
+import java.net.URL;
+
+import javax.el.ELContext;
+import javax.el.ELException;
+import javax.el.ExpressionFactory;
+import javax.el.FunctionMapper;
+import javax.el.VariableMapper;
+import javax.faces.FacesException;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+
+/**
+ * The parent or root object in a FaceletHandler composition. The Facelet will
+ * take care of populating the passed UIComponent parent in relation to the
+ * create/restore lifecycle of JSF.
+ * 
+ * @author Jacob Hookom (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-12-10 18:39:00 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public abstract class FaceletContext extends ELContext
+{
+    // TODO: Report this aberration to the EG
+    public static final String FACELET_CONTEXT_KEY = "com.sun.faces.facelets.FACELET_CONTEXT";
+    
+    /**
+     * Generate a unique ID for the passed String
+     * 
+     * @param base
+     * @return a unique ID given the passed base
+     */
+    public abstract String generateUniqueId(String base);
+
+    /**
+     * Support method which is backed by the current VariableMapper
+     * 
+     * @param name
+     * @return an Object specified for that name
+     */
+    public abstract Object getAttribute(String name);
+
+    /**
+     * The ExpressionFactory to use within the Facelet this context is executing upon.
+     * 
+     * @return cannot be null
+     */
+    public abstract ExpressionFactory getExpressionFactory();
+
+    /**
+     * The current FacesContext bound to this "request"
+     * 
+     * @return cannot be null
+     */
+    public abstract FacesContext getFacesContext();
+
+    /**
+     * Include another Facelet defined at some path, relative to the executing context, not the current Facelet (same as
+     * include directive in JSP)
+     * 
+     * @param parent
+     * @param relativePath
+     * @throws IOException
+     * @throws FaceletException
+     * @throws FacesException
+     * @throws ELException
+     */
+    public abstract void includeFacelet(UIComponent parent, String relativePath) throws IOException, FaceletException,
+            FacesException, ELException;
+
+    /**
+     * Include another Facelet defined at some path, absolute to this ClassLoader/OS
+     * 
+     * @param parent
+     * @param absolutePath
+     * @throws IOException
+     * @throws FaceletException
+     * @throws FacesException
+     * @throws ELException
+     */
+    public abstract void includeFacelet(UIComponent parent, URL absolutePath) throws IOException, FaceletException,
+            FacesException, ELException;
+
+    /**
+     * Support method which is backed by the current VariableMapper
+     * 
+     * @param name
+     * @param value
+     */
+    public abstract void setAttribute(String name, Object value);
+
+    /**
+     * Set the FunctionMapper to use in EL evaluation/creation
+     * 
+     * @param fnMapper
+     */
+    public abstract void setFunctionMapper(FunctionMapper fnMapper);
+
+    /**
+     * Set the VariableMapper to use in EL evaluation/creation
+     * 
+     * @param varMapper
+     */
+    public abstract void setVariableMapper(VariableMapper varMapper);
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletException.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletException.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletException.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletException.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import javax.faces.FacesException;
+
+/**
+ * @author Simon Lessard (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-12-10 18:42:41 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public class FaceletException extends FacesException
+{
+    public FaceletException()
+    {
+        
+    }
+
+    public FaceletException(Throwable cause)
+    {
+        super(cause);
+    }
+
+    public FaceletException(String message)
+    {
+        super(message);
+    }
+
+    public FaceletException(String message, Throwable cause)
+    {
+        super(message, cause);
+    }
+}

Added: myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletHandler.java?rev=761981&view=auto
==============================================================================
--- myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletHandler.java (added)
+++ myfaces/core/branches/2_0_0/api/src/main/java/javax/faces/view/facelets/FaceletHandler.java Sat Apr  4 18:44:14 2009
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package javax.faces.view.facelets;
+
+import java.io.IOException;
+
+import javax.el.ELException;
+import javax.faces.FacesException;
+import javax.faces.component.UIComponent;
+
+/**
+ * A participant in UIComponent tree building
+ * 
+ * @author Jacob Hookom (latest modification by $Author: slessard $)
+ * @version $Revision: 696523 $ $Date: 2008-12-10 18:36:19 -0400 (mer., 17 sept. 2008) $
+ *
+ * @since 2.0
+ */
+public interface FaceletHandler
+{
+    /**
+     * Process changes on a particular UIComponent
+     * 
+     * @param ctx the current FaceletContext instance for this execution
+     * @param parent the parent UIComponent to operate upon
+     * @throws IOException
+     * @throws FacesException
+     * @throws FaceletException
+     * @throws ELException
+     */
+    public void apply(FaceletContext ctx, UIComponent parent)throws IOException;
+}



Mime
View raw message