cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Max Pfingsthorn (JIRA)" <j...@apache.org>
Subject [jira] Commented: (COCOON-1794) [PATCH] Propagation of namespaces to a repeaters child bindings and implementation of a move-node binding
Date Wed, 08 Mar 2006 11:11:42 GMT
    [ http://issues.apache.org/jira/browse/COCOON-1794?page=comments#action_12369430 ] 

Max Pfingsthorn commented on COCOON-1794:
-----------------------------------------

Actually, I meant to implement this in the repeater binding.

You are right though, positioning is important and makes sense. However, I would rather do
it somehow like this:

previousContext = nil
for each row in repeater do
    context = getRowContext(row)

    if(context==null)
        insertAfterBinding.saveFormToModel(row,previousContext)
        context = getRowContext(row)

    if(row.isUpdated() || row.isCreated())
        rowBinding.saveFormToModel(row,context)
    else
        deleteRowBinding.saveFormToModel(row,context)

Insert after binding would work for both xml and beans. In the beans case, we could add a
new object (like the InsertBeanJXPathBinding) and shift the ones below the one to insert after
down.

> [PATCH] Propagation of namespaces to a repeaters child bindings and implementation of
a move-node binding
> ---------------------------------------------------------------------------------------------------------
>
>          Key: COCOON-1794
>          URL: http://issues.apache.org/jira/browse/COCOON-1794
>      Project: Cocoon
>         Type: Bug
>   Components: Blocks: Forms
>     Versions: 2.1.8, 2.1.9-dev (current SVN)
>     Reporter: Suzan Foster
>  Attachments: repeater-binding-patch.txt
>
> This patch corrects the following issues:
> - Namespaced back-end XML model not correctly binding to the repeaters child widgets.
> - Nodes bound to row widgets not being reordered according to row position on save.
> Files affected:
> - JXPathBindingBase:
>   - member applyLeniency changed from private to protected.
>   - member applyNSDeclarations changed from private to protected.
> - RepeaterJXPathBinding:
>   - constructor changed for passing a binding for moveRow.
>   - applyLeniency and applyNSDeclarations applied to created relative contexts.
>   - member moveRowBinding added.
>   - method getMoveRowBinding added.
>   - doSave changed to incorporate the use of moveRowBinding.
> - RepeaterJXPathBindingBuilder:
>   - buildBinding changed to incorporate the construction of moveRowBinding.
> Files added:
> - MoveNodeJXPathBinding.
> - MoveNodeJXPathBindingBuilder.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message