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

Hervé Boutemy updated MNG-6164:
-------------------------------
    Description: 
There are plenty of places where empty collections are returned from public API 
in methods written like:

{code}
     public List<Exception> getExceptions()
     {
        return exceptions == null ? Collections.<Exception>emptyList() : 
exceptions;
     }
{code}

The issue with this is that the empty list is immutable but the collection 
returned for the nun-null case is not immutable.

All those methods should return a collection with consistent "mutability": 
either mutable, either immutable.

Given empty immutable collections do not cause harm until now, switching 
consistently to immutable collections is more conservative and should not be 
risky

  was:
There are plenty of places where empty collections are returned from public API 
methods like:

{code}
     public List<Exception> getExceptions()
     {
        return exceptions == null ? Collections.<Exception> emptyList() : 
exceptions;
     }
{code}

The issue with this is that the empty list is immutable but the collection 
returned for the nun-null case is not immutable. All those methods should 
return an immutable collection consistently.


> Collections inconsistently immutable
> ------------------------------------
>
>                 Key: MNG-6164
>                 URL: https://issues.apache.org/jira/browse/MNG-6164
>             Project: Maven
>          Issue Type: Bug
>    Affects Versions: 3.5.0
>            Reporter: Christian Schulte
>            Assignee: Michael Osipov
>            Priority: Critical
>             Fix For: 3.5.1-candidate
>
>
> There are plenty of places where empty collections are returned from public 
> API in methods written like:
> {code}
>      public List<Exception> getExceptions()
>      {
>         return exceptions == null ? Collections.<Exception>emptyList() : 
> exceptions;
>      }
> {code}
> The issue with this is that the empty list is immutable but the collection 
> returned for the nun-null case is not immutable.
> All those methods should return a collection with consistent "mutability": 
> either mutable, either immutable.
> Given empty immutable collections do not cause harm until now, switching 
> consistently to immutable collections is more conservative and should not be 
> risky



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to