On 02/22/2013 01:36 PM, Benedikt Ritter wrote:
> Hi Thomas,
> 
> 
> 2013/2/22 <t...@apache.org>
> 
>> Author: tn
>> Date: Fri Feb 22 10:40:34 2013
>> New Revision: 1448981
>>
>> URL: http://svn.apache.org/r1448981
>> Log:
>> [EMAIL-125] Add datasource name for ByteArrayDataSource, fixes embedding
>> multiple resources loaded from a ClassPath resolver.
>>
>> Modified:
>>
>> commons/proper/email/trunk/src/main/java/org/apache/commons/mail/ByteArrayDataSource.java
>>
>> commons/proper/email/trunk/src/main/java/org/apache/commons/mail/ImageHtmlEmail.java
>>
>> commons/proper/email/trunk/src/main/java/org/apache/commons/mail/resolver/DataSourceClassPathResolver.java
>>
>> commons/proper/email/trunk/src/test/java/org/apache/commons/mail/ImageHtmlEmailTest.java
>>
>> Modified:
>> commons/proper/email/trunk/src/main/java/org/apache/commons/mail/ByteArrayDataSource.java
>> URL:
>> http://svn.apache.org/viewvc/commons/proper/email/trunk/src/main/java/org/apache/commons/mail/ByteArrayDataSource.java?rev=1448981&r1=1448980&r2=1448981&view=diff
>>
>> ==============================================================================
>> ---
>> commons/proper/email/trunk/src/main/java/org/apache/commons/mail/ByteArrayDataSource.java
>> (original)
>> +++
>> commons/proper/email/trunk/src/main/java/org/apache/commons/mail/ByteArrayDataSource.java
>> Fri Feb 22 10:40:34 2013
>> @@ -34,6 +34,10 @@ import javax.activation.DataSource;
>>   * - a byte array<br>
>>   * - a String<br>
>>   *
>> + * <p>
>> + * From version 1.3.1, it is possible to set a name for this DataSource,
>> + * and it is recommended to do so.
>> + *
>>   * @since 1.0
>>   * @author <a href="mailto:colin.chalm...@maxware.nl";>Colin Chalmers</a>
>>   * @author <a href="mailto:j...@latchkey.com";>Jon S. Stevens</a>
>> @@ -52,6 +56,13 @@ public class ByteArrayDataSource impleme
>>      private final String type; // = "application/octet-stream";
>>
>>      /**
>> +     * The name associated with this data source.
>> +     * By default, the name is an empty string, similar to
>> javax.mail.util.ByteArrayDataSource.
>> +     * @since 1.3.1
>> +     */
>> +    private String name = "";
>> +
>> +    /**
>>       * Create a datasource from a byte array.
>>       *
>>       * @param data A byte[].
>> @@ -203,6 +214,17 @@ public class ByteArrayDataSource impleme
>>      }
>>
>>      /**
>> +     * Sets the name for this DataSource.
>> +     *
>> +     * @param name The name.
>> +     * @since 1.3.1
>> +     */
>> +    public void setName(String name)
>> +    {
>> +        this.name = name;
>> +    }
>>
> 
> Is it possible to do this in 1.3.1? This is a change of the external API. I
> always thought that this would cause the <minor>-segment of the version to
> change. According to the versioning guidelines [1] a point release is only
> possible if it only " involves simple bug fixes or optimizations that do
> not introduce new features."
> To me it is not clear what exactly is a "new feature".

you just copied the part of the sentence that make it appear as a
mandatory requirement. The full sentence is:

> A point release typically involves simple bug fixes or optimizations >
that do not introduce new features. Developers may perform a point
> release if the release is at least interface-compatible with the
> previous release.

The interface is compatible with a previous release, just a new method
has been added which was necessary to fix the bug in a clean way.

Additionally, to keep backwards compatibility, I added a sanity check,
if the name of the DataSource is not set, and default it to the resource
location in that case (although this should not happen in any case as
the DataSource is created by email itself).

Thomas

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to