[ 
https://issues.apache.org/jira/browse/MYFACES-3227?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Leonardo Uribe resolved MYFACES-3227.
-------------------------------------

       Resolution: Fixed
    Fix Version/s: 2.1.2
                   2.0.8
         Assignee: Leonardo Uribe

Thanks to user Ikw for provide this patch

> myfaces _DeltaList does not call clearInitialState when 
> retainAll(Collection<?>) method is called
> -------------------------------------------------------------------------------------------------
>
>                 Key: MYFACES-3227
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3227
>             Project: MyFaces Core
>          Issue Type: Wish
>          Components: General
>    Affects Versions: 2.1.1
>         Environment: tomcat 7.0.14 myfaces 2.1.1
>            Reporter: lkw
>            Assignee: Leonardo Uribe
>            Priority: Minor
>             Fix For: 2.0.8, 2.1.2
>
>   Original Estimate: 336h
>  Remaining Estimate: 336h
>
> hi
> at first, i'm not native english speaker.
> let's see follow MyFaces's _DeltaList's code.
> ...
> ===
>     public boolean retainAll(Collection<?> c)
>     {
>         return _delegate.retainAll(c);
>     }
> ===
> follow is java.util.List's retainAll method javadoc.
> ===
>     /**
>      * Retains only the elements in this list that are contained in the
>      * specified collection (optional operation).  In other words, removes
>      * from this list all the elements that are not contained in the specified
>      * collection.
>      *
>      * @param c collection containing elements to be retained in this list
>      * @return <tt>true</tt> if this list changed as a result of the call
>      * @throws UnsupportedOperationException if the <tt>retainAll</tt> 
> operation
>      *         is not supported by this list
>      * @throws ClassCastException if the class of an element of this list
>      *         is incompatible with the specified collection (optional)
>      * @throws NullPointerException if this list contains a null element and 
> the
>      *         specified collection does not permit null elements (optional),
>      *         or if the specified collection is null
>      * @see #remove(Object)
>      * @see #contains(Object)
>      */
>     boolean retainAll(Collection<?> c);
> ===
> so
> ===
> List<Integer> thisList = new ArrayList<Integer>();
> thisList.add(1);
> thisList.add(2);
> thisList.add(3);
> List<Integer> paramList = new ArrayList<Integer>();
> paramList.add(2);
> paramList.add(3);
> paramList.add(4);
> thisList.retainAll(paramList);
> for(Integer i:thisList)
>   System.out.println(i);
> ==
> result is 2,3.
> i think that _DeltaList.retainAll should have clearInitialState() method call 
> as follow.
> ===
>     public boolean retainAll(Collection<?> c)
>     {
>         boolean result = _delegate.retainAll(c);
>         if (result==true)
>             clearInitialState();
>         return result;
>     }
> ===
> of course, i know that calling to this method is not so many frequency.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to