You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mc...@apache.org on 2009/07/10 21:14:06 UTC
svn commit: r793079 - in /myfaces/core/trunk/api/src/main/java/javax/faces:
component/behavior/ClientBehaviorContext.java
render/ClientBehaviorRenderer.java
Author: mconcini
Date: Fri Jul 10 19:14:06 2009
New Revision: 793079
URL: http://svn.apache.org/viewvc?rev=793079&view=rev
Log:
MYFACES-2273
Modified:
myfaces/core/trunk/api/src/main/java/javax/faces/component/behavior/ClientBehaviorContext.java
myfaces/core/trunk/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java
Modified: myfaces/core/trunk/api/src/main/java/javax/faces/component/behavior/ClientBehaviorContext.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/api/src/main/java/javax/faces/component/behavior/ClientBehaviorContext.java?rev=793079&r1=793078&r2=793079&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/component/behavior/ClientBehaviorContext.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/component/behavior/ClientBehaviorContext.java Fri Jul 10 19:14:06 2009
@@ -31,12 +31,25 @@
*/
public abstract class ClientBehaviorContext
{
+
public static ClientBehaviorContext createClientBehaviorContext(FacesContext context, UIComponent component, String eventName,
String sourceId, Collection<Parameter> parameters)
{
- // TODO: IMPLEMENT HERE
// This method is weird... Creating a dummy impl class seems stupid, yet I don't see any other way...
- return null;
+ if(context == null)
+ {
+ throw new NullPointerException("context argument must not be null");
+ }
+ if(component == null)
+ {
+ throw new NullPointerException("component argument must not be null");
+ }
+ if(eventName == null)
+ {
+ throw new NullPointerException("eventName argument must not be null");
+ }
+
+ return new ClientBehaviorContextImpl(context,component,eventName,sourceId, parameters);
}
public abstract UIComponent getComponent();
@@ -81,4 +94,53 @@
return _value;
}
}
+
+ private static final class ClientBehaviorContextImpl extends ClientBehaviorContext
+ {
+ private FacesContext _facesContext;
+ private UIComponent _component;
+ private String _eventName;
+ private String _sourceId;
+ private Collection<ClientBehaviorContext.Parameter> _parameters;
+
+ public ClientBehaviorContextImpl(FacesContext context, UIComponent component, String eventName,
+ String sourceId, Collection<ClientBehaviorContext.Parameter> parameters)
+ {
+ _facesContext = context;
+ _component = component;
+ _eventName = eventName;
+ _sourceId = sourceId;
+ _parameters = parameters;
+ }
+
+ @Override
+ public UIComponent getComponent()
+ {
+ return _component;
+ }
+
+ @Override
+ public String getEventName()
+ {
+ return _eventName;
+ }
+
+ @Override
+ public FacesContext getFacesContext()
+ {
+ return _facesContext;
+ }
+
+ @Override
+ public Collection<Parameter> getParameters()
+ {
+ return _parameters;
+ }
+
+ @Override
+ public String getSourceId()
+ {
+ return _sourceId;
+ }
+ }
}
Modified: myfaces/core/trunk/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java?rev=793079&r1=793078&r2=793079&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/render/ClientBehaviorRenderer.java Fri Jul 10 19:14:06 2009
@@ -33,12 +33,25 @@
{
public void decode(FacesContext context, UIComponent component, ClientBehavior behavior)
{
- // TODO: IMPLEMENT HERE
+ //default impl won't do anything...implementing classes will do the actual decoding.
+ //just check for null args
+ if(context == null)
+ {
+ throw new NullPointerException("context argument must not be null");
+ }
+ if(component == null)
+ {
+ throw new NullPointerException("component argument must not be null");
+ }
+ if(behavior == null)
+ {
+ throw new NullPointerException("behavior argument must not be null");
+ }
}
public String getScript(ClientBehaviorContext behaviorContext, ClientBehavior behavior)
{
- // TODO: IMPLEMENT HERE
+ // default implementation returns null per the javadoc
return null;
}
}