org.apache.cocoon.forms.binding
Class JXPathBindingBuilderBase

java.lang.Object
  extended by org.apache.cocoon.forms.binding.JXPathBindingBuilderBase
All Implemented Interfaces:
LogEnabled
Direct Known Subclasses:
AggregateJXPathBindingBuilder, CaseJXPathBindingBuilder, ClassJXPathBindingBuilder, ContextJXPathBindingBuilder, CustomJXPathBindingBuilder, DeleteNodeJXPathBindingBuilder, ExpandJXPathBindingBuilder, GroupJXPathBindingBuilder, ImportJXPathBindingBuilder, InsertBeanJXPathBindingBuilder, InsertNodeJXPathBindingBuilder, JavaScriptJXPathBindingBuilder, MultiValueJXPathBindingBuilder, NewJXPathBindingBuilder, RepeaterJXPathBindingBuilder, SetAttributeJXPathBindingBuilder, SimpleRepeaterJXPathBindingBuilder, StructJXPathBindingBuilder, TempRepeaterJXPathBindingBuilder, TreeModelJXPathBuilder, UnionJXPathBindingBuilder, ValueJXPathBindingBuilder

public abstract class JXPathBindingBuilderBase
extends Object
implements LogEnabled

Abstract base class enabling logging and supporting the interpretation of common configuration settings on all specific implementations of JXPathBindingBase. Common supported configurations: getCommonAttributes(Element)

Version:
$Id: JXPathBindingBuilderBase.html 1304258 2012-03-23 10:09:27Z ilgrosso $

Nested Class Summary
static class JXPathBindingBuilderBase.CommonAttributes
          CommonAttributes is a simple helper class for holding the distinct data member fields indicating the activity of the separate load and save actions of a given binding.
 
Constructor Summary
JXPathBindingBuilderBase()
           
 
Method Summary
abstract  JXPathBindingBase buildBinding(Element bindingElm, JXPathBindingManager.Assistant assistant)
          Builds a configured binding object based on the configuration as described in the bindingElement.
 void enableLogging(Logger logger)
          Receives the Avalon logger to use.
protected static JXPathBindingBuilderBase.CommonAttributes getCommonAttributes(Element bindingElm)
          Helper method for interpreting the common attributes which are supported on each of the Bindings.
protected  Logger getLogger()
          Makes the logger available to the subclasses.
static JXPathBindingBuilderBase.CommonAttributes mergeCommonAttributes(JXPathBindingBuilderBase.CommonAttributes existing, JXPathBindingBuilderBase.CommonAttributes extra)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JXPathBindingBuilderBase

public JXPathBindingBuilderBase()
Method Detail

enableLogging

public void enableLogging(Logger logger)
Receives the Avalon logger to use.

Specified by:
enableLogging in interface LogEnabled

getLogger

protected Logger getLogger()
Makes the logger available to the subclasses.

Returns:
Logger

buildBinding

public abstract JXPathBindingBase buildBinding(Element bindingElm,
                                               JXPathBindingManager.Assistant assistant)
                                        throws BindingException
Builds a configured binding object based on the configuration as described in the bindingElement. The BuilderMap can be used to find appropriate builders for possible subBinders.

Parameters:
bindingElm -
assistant -
Returns:
JXPathBindingBase
Throws:
BindingException

getCommonAttributes

protected static JXPathBindingBuilderBase.CommonAttributes getCommonAttributes(Element bindingElm)
                                                                        throws BindingException
Helper method for interpreting the common attributes which are supported on each of the Bindings. These are
@direction can hold one of the following values:
  1. 'load': This binding will only load.
  2. 'save': This binding will only save.
  3. 'both': This binding will perform both operations.

@lenient can either be:
  1. 'true': This binding will set the jxpath context to be lenient towards the usage of inexisting paths on the back-end model.
  2. 'false': This binding will set the jxpath context to be strict and throwing exceptions for the usage of inexisting paths on the back-end model.
  3. (unset): This binding will not change the leniency behaviour on the jxpath this binding receives from his parent binding.

Parameters:
bindingElm -
Returns:
an instance of CommonAttributes
Throws:
BindingException

mergeCommonAttributes

public static JXPathBindingBuilderBase.CommonAttributes mergeCommonAttributes(JXPathBindingBuilderBase.CommonAttributes existing,
                                                                              JXPathBindingBuilderBase.CommonAttributes extra)


Copyright © 1999-2010 The Apache Software Foundation. All Rights Reserved.