You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@continuum.apache.org by Brett Porter <br...@apache.org> on 2009/08/22 14:43:09 UTC
Re: svn commit: r801098 - in /continuum/trunk
Hi,
I think this is very confusing... the developers/committers are
checkboxes meaning both can be ticked - but since the committers are a
subset that no longer means anything. It took me a while to figure out
why the code was skipping that bit.
Do you think we can make this clearer from the UI / code comments in
some way?
- Brett
On 05/08/2009, at 5:13 AM, jmorales@apache.org wrote:
> Author: jmorales
> Date: Wed Aug 5 09:13:25 2009
> New Revision: 801098
>
> URL: http://svn.apache.org/viewvc?rev=801098&view=rev
> Log:
> [CONTINUUM-493] Allow to add all developpers address in a notifier
> without duplicate developpers addresses.
>
> Modified:
> continuum/trunk/continuum-core/src/main/java/org/apache/maven/
> continuum/notification/mail/MailContinuumNotifier.java
> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/
> main/java/org/apache/maven/continuum/notification/
> AbstractContinuumNotifier.java
> continuum/trunk/continuum-webapp/src/main/java/org/apache/
> continuum/web/util/GenerateRecipentNotifier.java
> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
> continuum/web/action/notifier/MailGroupNotifierEditAction.java
> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
> continuum/web/action/notifier/MailProjectNotifierEditAction.java
> continuum/trunk/continuum-webapp/src/main/resources/localization/
> Continuum.properties
> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/
> notifier/notifierMail.jsp
>
> Modified: continuum/trunk/continuum-core/src/main/java/org/apache/
> maven/continuum/notification/mail/MailContinuumNotifier.java
> URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- continuum/trunk/continuum-core/src/main/java/org/apache/maven/
> continuum/notification/mail/MailContinuumNotifier.java (original)
> +++ continuum/trunk/continuum-core/src/main/java/org/apache/maven/
> continuum/notification/mail/MailContinuumNotifier.java Wed Aug 5
> 09:13:25 2009
> @@ -720,10 +720,32 @@
>
> }
>
> - String committerField = (String)
> notifier.getConfiguration().get( COMMITTER_FIELD );
> - if
> ( StringUtils.isNotEmpty( committerField ) &&
> context.getBuildResult() != null )
> + if (context.getBuildResult() != null)
> {
> - if
> ( Boolean.parseBoolean( committerField ) )
> + String committerField = (String)
> notifier.getConfiguration().get(COMMITTER_FIELD);
> + String developerField = (String)
> notifier.getConfiguration().get(DEVELOPER_FIELD);
> + // Developers constains committers.
> + if
> (StringUtils.isNotEmpty(developerField) &&
> Boolean.parseBoolean(developerField))
> + {
> + List<ProjectDeveloper> developers =
> project.getDevelopers();
> + if (developers == null ||
> developers.isEmpty())
> + {
> + log.warn("No developers have
> been configured...notifcation email will not be sent");
> + return;
> + }
> + Map<String, String>
> developerToEmailMap = mapDevelopersToRecipients(developers);
> + for (String email :
> developerToEmailMap.values())
> + {
> + if (!
> listRecipents.contains(email.trim()))
> + {
> + InternetAddress to = new
> InternetAddress(email.trim());
> + log.info("Recipient: To '"
> + to + "'.");
> +
> message.addRecipient(Message.RecipientType.TO, to);
> +
> listRecipents.add(email.trim());
> + }
> + }
> + }
> + else if
> (StringUtils.isNotEmpty(committerField) &&
> Boolean.parseBoolean(committerField))
> {
> ScmResult scmResult =
> context.getBuildResult().getScmResult();
> if ( scmResult != null &&
> scmResult.getChanges() != null &&
>
> Modified: continuum/trunk/continuum-notifiers/continuum-notifier-api/
> src/main/java/org/apache/maven/continuum/notification/
> AbstractContinuumNotifier.java
> URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-notifiers/continuum-notifier-api/src/main/java/org/apache/maven/continuum/notification/AbstractContinuumNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- continuum/trunk/continuum-notifiers/continuum-notifier-api/src/
> main/java/org/apache/maven/continuum/notification/
> AbstractContinuumNotifier.java (original)
> +++ continuum/trunk/continuum-notifiers/continuum-notifier-api/src/
> main/java/org/apache/maven/continuum/notification/
> AbstractContinuumNotifier.java Wed Aug 5 09:13:25 2009
> @@ -49,6 +49,8 @@
>
> public static final String COMMITTER_FIELD = "committers";
>
> + public static final String DEVELOPER_FIELD = "developers";
> +
> private static final Logger log =
> LoggerFactory.getLogger( AbstractContinuumNotifier.class );
>
> @Resource
>
> Modified: continuum/trunk/continuum-webapp/src/main/java/org/apache/
> continuum/web/util/GenerateRecipentNotifier.java
> URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/continuum/web/util/GenerateRecipentNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- continuum/trunk/continuum-webapp/src/main/java/org/apache/
> continuum/web/util/GenerateRecipentNotifier.java (original)
> +++ continuum/trunk/continuum-webapp/src/main/java/org/apache/
> continuum/web/util/GenerateRecipentNotifier.java Wed Aug 5 09:13:25
> 2009
> @@ -62,6 +62,15 @@
> }
> }
> }
> + if
> (StringUtils
> .isNotEmpty
> (configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD))) {
> + if
> (Boolean
> .parseBoolean
> (configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD))) {
> + if ("unknown".equals(recipent)) {
> + recipent = "project developers";
> + } else {
> + recipent += ", " + "project developers";
> + }
> + }
> + }
> }
> if ( "irc".equals( notifier.getType() ) )
> {
>
> Modified: continuum/trunk/continuum-webapp/src/main/java/org/apache/
> maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java
> URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java?rev=801098&r1=801097&r2=801098&view=diff
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
> continuum/web/action/notifier/MailGroupNotifierEditAction.java
> (original)
> +++ continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
> continuum/web/action/notifier/MailGroupNotifierEditAction.java Wed
> Aug 5 09:13:25 2009
> @@ -43,6 +43,8 @@
>
> private boolean committers;
>
> + private boolean developers;
> +
> protected void initConfiguration( Map<String, String>
> configuration )
> {
> if
> ( StringUtils
> .isNotEmpty
> ( configuration.get( AbstractContinuumNotifier.ADDRESS_FIELD ) ) )
> @@ -54,6 +56,11 @@
> {
> committers =
> Boolean
> .parseBoolean
> ( configuration.get( AbstractContinuumNotifier.COMMITTER_FIELD ) );
> }
> +
> + if
> (StringUtils
> .isNotEmpty
> (configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD)))
> + {
> + developers =
> Boolean
> .parseBoolean
> (configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD));
> + }
> }
>
> protected void setNotifierConfiguration( ProjectNotifier
> notifier )
> @@ -67,6 +74,8 @@
>
>
> configuration.put( AbstractContinuumNotifier.COMMITTER_FIELD,
> String.valueOf( committers ) );
>
> +
> configuration.put(AbstractContinuumNotifier.DEVELOPER_FIELD,
> String.valueOf(developers));
> +
> notifier.setConfiguration( configuration );
> }
>
> @@ -89,4 +98,14 @@
> {
> this.committers = committers;
> }
> +
> + public boolean isDevelopers()
> + {
> + return developers;
> + }
> +
> + public void setDevelopers(boolean developers)
> + {
> + this.developers = developers;
> + }
> }
>
> Modified: continuum/trunk/continuum-webapp/src/main/java/org/apache/
> maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java
> URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java?rev=801098&r1=801097&r2=801098&view=diff
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
> continuum/web/action/notifier/MailProjectNotifierEditAction.java
> (original)
> +++ continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
> continuum/web/action/notifier/MailProjectNotifierEditAction.java Wed
> Aug 5 09:13:25 2009
> @@ -43,6 +43,8 @@
>
> private boolean committers;
>
> + private boolean developers;
> +
> protected void initConfiguration( Map<String, String>
> configuration )
> {
> if
> ( StringUtils
> .isNotEmpty
> ( configuration.get( AbstractContinuumNotifier.ADDRESS_FIELD ) ) )
> @@ -54,6 +56,11 @@
> {
> committers =
> Boolean
> .parseBoolean
> ( configuration.get( AbstractContinuumNotifier.COMMITTER_FIELD ) );
> }
> +
> + if
> (StringUtils
> .isNotEmpty
> (configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD)))
> + {
> + developers =
> Boolean
> .parseBoolean
> (configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD));
> + }
> }
>
> protected void setNotifierConfiguration( ProjectNotifier
> notifier )
> @@ -67,6 +74,8 @@
>
>
> configuration.put( AbstractContinuumNotifier.COMMITTER_FIELD,
> String.valueOf( committers ) );
>
> +
> configuration.put(AbstractContinuumNotifier.DEVELOPER_FIELD,
> String.valueOf(developers));
> +
> notifier.setConfiguration( configuration );
> }
>
> @@ -89,4 +98,14 @@
> {
> this.committers = committers;
> }
> +
> + public boolean isDevelopers()
> + {
> + return developers;
> + }
> +
> + public void setDevelopers(boolean developers)
> + {
> + this.developers = developers;
> + }
> }
>
> Modified: continuum/trunk/continuum-webapp/src/main/resources/
> localization/Continuum.properties
> URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties?rev=801098&r1=801097&r2=801098&view=diff
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- continuum/trunk/continuum-webapp/src/main/resources/localization/
> Continuum.properties (original)
> +++ continuum/trunk/continuum-webapp/src/main/resources/localization/
> Continuum.properties Wed Aug 5 09:13:25 2009
> @@ -501,6 +501,7 @@
> notifier.type.label = Type
> notifier.mail.recipient.address.label = Mail Recipient Address
> notifier.mail.recipient.committers.label = Send a mail to latest
> committers
> +notifier.mail.recipient.developers.label = Send a mail to project
> developers
> notifier.irc.host.label = IRC Host
> notifier.irc.port.label = IRC port
> notifier.irc.channel.label = IRC channel
>
> Modified: continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/
> jsp/notifier/notifierMail.jsp
> URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifier/notifierMail.jsp?rev=801098&r1=801097&r2=801098&view=diff
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/
> notifier/notifierMail.jsp (original)
> +++ continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/
> notifier/notifierMail.jsp Wed Aug 5 09:13:25 2009
> @@ -57,6 +57,7 @@
> <tbody>
> <s:textfield label="%
> {getText('notifier.mail.recipient.address.label')}" name="address" />
> <s:checkbox label="%
> {getText('notifier.mail.recipient.committers.label')}"
> name="committers" value="committers" fieldValue="true"/>
> + <s:checkbox label="%
> {getText('notifier.mail.recipient.developers.label')}"
> name="developers" value="developers" fieldValue="true"/>
> <s:checkbox label="%
> {getText('notifier.event.sendOnSuccess')}" name="sendOnSuccess"
> value="sendOnSuccess" fieldValue="true"/>
> <s:checkbox label="%
> {getText('notifier.event.sendOnFailure')}" name="sendOnFailure"
> value="sendOnFailure" fieldValue="true"/>
> <s:checkbox label="%
> {getText('notifier.event.sendOnError')}" name="sendOnError"
> value="sendOnError" fieldValue="true"/>
>
>
Re: svn commit: r801098 - in /continuum/trunk
Posted by Brett Porter <br...@apache.org>.
Sorry, I realised I'd missed this...
On 26/08/2009, at 9:50 AM, Jose Morales wrote:
> You're right,developers include commiters (this is a very brief
> reference in
> 'MailContinuumNotifier.java' when I say ' // Developers constains
> committers.', all I see is not clear, so I will update comments in
> code) in
> the code this is handled correctly, but does not showed in any way
> in UI. A
> possible solution would be a 'select' where you could select
> 'developers /
> commiters', another option would be a comment on an info icon or
> improve
> documentation.
>
> Do you have any suggestions for UI?
How about disable and implicitly select "committers" whenever
developers is checked and re-enable when unchecked?
- Brett
>
> 2009/8/22 Brett Porter <br...@apache.org>
>
>> Hi,
>>
>> I think this is very confusing... the developers/committers are
>> checkboxes
>> meaning both can be ticked - but since the committers are a subset
>> that no
>> longer means anything. It took me a while to figure out why the
>> code was
>> skipping that bit.
>>
>> Do you think we can make this clearer from the UI / code comments
>> in some
>> way?
>>
>> - Brett
>>
>> On 05/08/2009, at 5:13 AM, jmorales@apache.org wrote:
>>
>> Author: jmorales
>>> Date: Wed Aug 5 09:13:25 2009
>>> New Revision: 801098
>>>
>>> URL: http://svn.apache.org/viewvc?rev=801098&view=rev
>>> Log:
>>> [CONTINUUM-493] Allow to add all developpers address in a notifier
>>> without
>>> duplicate developpers addresses.
>>>
>>> Modified:
>>>
>>> continuum/trunk/continuum-core/src/main/java/org/apache/maven/
>>> continuum/notification/mail/MailContinuumNotifier.java
>>>
>>> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/
>>> main/java/org/apache/maven/continuum/notification/
>>> AbstractContinuumNotifier.java
>>>
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/
>>> continuum/web/util/GenerateRecipentNotifier.java
>>>
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
>>> continuum/web/action/notifier/MailGroupNotifierEditAction.java
>>>
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
>>> continuum/web/action/notifier/MailProjectNotifierEditAction.java
>>>
>>> continuum/trunk/continuum-webapp/src/main/resources/localization/
>>> Continuum.properties
>>>
>>> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/
>>> notifier/notifierMail.jsp
>>>
>>> Modified:
>>> continuum/trunk/continuum-core/src/main/java/org/apache/maven/
>>> continuum/notification/mail/MailContinuumNotifier.java
>>> URL:
>>> http://svn.apache.org/viewvc/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
>>>
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> ====================================================================
>>> ---
>>> continuum/trunk/continuum-core/src/main/java/org/apache/maven/
>>> continuum/notification/mail/MailContinuumNotifier.java
>>> (original)
>>> +++
>>> continuum/trunk/continuum-core/src/main/java/org/apache/maven/
>>> continuum/notification/mail/MailContinuumNotifier.java
>>> Wed Aug 5 09:13:25 2009
>>> @@ -720,10 +720,32 @@
>>>
>>> }
>>>
>>> - String committerField = (String)
>>> notifier.getConfiguration().get( COMMITTER_FIELD );
>>> - if ( StringUtils.isNotEmpty
>>> ( committerField ) &&
>>> context.getBuildResult() != null )
>>> + if (context.getBuildResult() != null)
>>> {
>>> - if ( Boolean.parseBoolean
>>> ( committerField ) )
>>> + String committerField = (String)
>>> notifier.getConfiguration().get(COMMITTER_FIELD);
>>> + String developerField = (String)
>>> notifier.getConfiguration().get(DEVELOPER_FIELD);
>>> + // Developers constains committers.
>>> + if (StringUtils.isNotEmpty
>>> (developerField) &&
>>> Boolean.parseBoolean(developerField))
>>> + {
>>> + List<ProjectDeveloper> developers =
>>> project.getDevelopers();
>>> + if (developers == null ||
>>> developers.isEmpty())
>>> + {
>>> + log.warn("No developers have
>>> been
>>> configured...notifcation email will not be sent");
>>> + return;
>>> + }
>>> + Map<String, String>
>>> developerToEmailMap =
>>> mapDevelopersToRecipients(developers);
>>> + for (String email :
>>> developerToEmailMap.values())
>>> + {
>>> + if
>>> (!listRecipents.contains(email.trim()))
>>> + {
>>> + InternetAddress to = new
>>> InternetAddress(email.trim());
>>> + log.info("Recipient: To
>>> '" + to
>>> + "'.");
>>> + message.addRecipient(
>>> Message.RecipientType.TO, to);
>>> + listRecipents.add
>>> (email.trim());
>>> + }
>>> + }
>>> + }
>>> + else if
>>> (StringUtils.isNotEmpty(committerField) &&
>>> Boolean.parseBoolean(committerField))
>>> {
>>> ScmResult scmResult =
>>> context.getBuildResult().getScmResult();
>>> if ( scmResult != null &&
>>> scmResult.getChanges() != null &&
>>>
>>> Modified:
>>> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/
>>> main/java/org/apache/maven/continuum/notification/
>>> AbstractContinuumNotifier.java
>>> URL:
>>> http://svn.apache.org/viewvc/continuum/trunk/continuum-notifiers/continuum-notifier-api/src/main/java/org/apache/maven/continuum/notification/AbstractContinuumNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
>>>
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> ====================================================================
>>> ---
>>> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/
>>> main/java/org/apache/maven/continuum/notification/
>>> AbstractContinuumNotifier.java
>>> (original)
>>> +++
>>> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/
>>> main/java/org/apache/maven/continuum/notification/
>>> AbstractContinuumNotifier.java
>>> Wed Aug 5 09:13:25 2009
>>> @@ -49,6 +49,8 @@
>>>
>>> public static final String COMMITTER_FIELD = "committers";
>>>
>>> + public static final String DEVELOPER_FIELD = "developers";
>>> +
>>> private static final Logger log = LoggerFactory.getLogger(
>>> AbstractContinuumNotifier.class );
>>>
>>> @Resource
>>>
>>> Modified:
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/
>>> continuum/web/util/GenerateRecipentNotifier.java
>>> URL:
>>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/continuum/web/util/GenerateRecipentNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
>>>
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> ====================================================================
>>> ---
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/
>>> continuum/web/util/GenerateRecipentNotifier.java
>>> (original)
>>> +++
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/
>>> continuum/web/util/GenerateRecipentNotifier.java
>>> Wed Aug 5 09:13:25 2009
>>> @@ -62,6 +62,15 @@
>>> }
>>> }
>>> }
>>> + if
>>> (StringUtils.isNotEmpty(configuration.get
>>> (AbstractContinuumNotifier.DEVELOPER_FIELD)))
>>> {
>>> + if
>>> (Boolean.parseBoolean(configuration.get
>>> (AbstractContinuumNotifier.DEVELOPER_FIELD)))
>>> {
>>> + if ("unknown".equals(recipent)) {
>>> + recipent = "project developers";
>>> + } else {
>>> + recipent += ", " + "project developers";
>>> + }
>>> + }
>>> + }
>>> }
>>> if ( "irc".equals( notifier.getType() ) )
>>> {
>>>
>>> Modified:
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
>>> continuum/web/action/notifier/MailGroupNotifierEditAction.java
>>> URL:
>>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java?rev=801098&r1=801097&r2=801098&view=diff
>>>
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> ====================================================================
>>> ---
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
>>> continuum/web/action/notifier/MailGroupNotifierEditAction.java
>>> (original)
>>> +++
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
>>> continuum/web/action/notifier/MailGroupNotifierEditAction.java
>>> Wed Aug 5 09:13:25 2009
>>> @@ -43,6 +43,8 @@
>>>
>>> private boolean committers;
>>>
>>> + private boolean developers;
>>> +
>>> protected void initConfiguration( Map<String, String>
>>> configuration )
>>> {
>>> if ( StringUtils.isNotEmpty( configuration.get(
>>> AbstractContinuumNotifier.ADDRESS_FIELD ) ) )
>>> @@ -54,6 +56,11 @@
>>> {
>>> committers = Boolean.parseBoolean( configuration.get(
>>> AbstractContinuumNotifier.COMMITTER_FIELD ) );
>>> }
>>> +
>>> + if
>>> (StringUtils.isNotEmpty(configuration.get
>>> (AbstractContinuumNotifier.DEVELOPER_FIELD)))
>>> + {
>>> + developers =
>>> Boolean.parseBoolean(configuration.get
>>> (AbstractContinuumNotifier.DEVELOPER_FIELD));
>>> + }
>>> }
>>>
>>> protected void setNotifierConfiguration( ProjectNotifier
>>> notifier )
>>> @@ -67,6 +74,8 @@
>>>
>>> configuration.put( AbstractContinuumNotifier.COMMITTER_FIELD,
>>> String.valueOf( committers ) );
>>>
>>> + configuration.put
>>> (AbstractContinuumNotifier.DEVELOPER_FIELD,
>>> String.valueOf(developers));
>>> +
>>> notifier.setConfiguration( configuration );
>>> }
>>>
>>> @@ -89,4 +98,14 @@
>>> {
>>> this.committers = committers;
>>> }
>>> +
>>> + public boolean isDevelopers()
>>> + {
>>> + return developers;
>>> + }
>>> +
>>> + public void setDevelopers(boolean developers)
>>> + {
>>> + this.developers = developers;
>>> + }
>>> }
>>>
>>> Modified:
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
>>> continuum/web/action/notifier/MailProjectNotifierEditAction.java
>>> URL:
>>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java?rev=801098&r1=801097&r2=801098&view=diff
>>>
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> ====================================================================
>>> ---
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
>>> continuum/web/action/notifier/MailProjectNotifierEditAction.java
>>> (original)
>>> +++
>>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/
>>> continuum/web/action/notifier/MailProjectNotifierEditAction.java
>>> Wed Aug 5 09:13:25 2009
>>> @@ -43,6 +43,8 @@
>>>
>>> private boolean committers;
>>>
>>> + private boolean developers;
>>> +
>>> protected void initConfiguration( Map<String, String>
>>> configuration )
>>> {
>>> if ( StringUtils.isNotEmpty( configuration.get(
>>> AbstractContinuumNotifier.ADDRESS_FIELD ) ) )
>>> @@ -54,6 +56,11 @@
>>> {
>>> committers = Boolean.parseBoolean( configuration.get(
>>> AbstractContinuumNotifier.COMMITTER_FIELD ) );
>>> }
>>> +
>>> + if
>>> (StringUtils.isNotEmpty(configuration.get
>>> (AbstractContinuumNotifier.DEVELOPER_FIELD)))
>>> + {
>>> + developers =
>>> Boolean.parseBoolean(configuration.get
>>> (AbstractContinuumNotifier.DEVELOPER_FIELD));
>>> + }
>>> }
>>>
>>> protected void setNotifierConfiguration( ProjectNotifier
>>> notifier )
>>> @@ -67,6 +74,8 @@
>>>
>>> configuration.put( AbstractContinuumNotifier.COMMITTER_FIELD,
>>> String.valueOf( committers ) );
>>>
>>> + configuration.put
>>> (AbstractContinuumNotifier.DEVELOPER_FIELD,
>>> String.valueOf(developers));
>>> +
>>> notifier.setConfiguration( configuration );
>>> }
>>>
>>> @@ -89,4 +98,14 @@
>>> {
>>> this.committers = committers;
>>> }
>>> +
>>> + public boolean isDevelopers()
>>> + {
>>> + return developers;
>>> + }
>>> +
>>> + public void setDevelopers(boolean developers)
>>> + {
>>> + this.developers = developers;
>>> + }
>>> }
>>>
>>> Modified:
>>> continuum/trunk/continuum-webapp/src/main/resources/localization/
>>> Continuum.properties
>>> URL:
>>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties?rev=801098&r1=801097&r2=801098&view=diff
>>>
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> ====================================================================
>>> ---
>>> continuum/trunk/continuum-webapp/src/main/resources/localization/
>>> Continuum.properties
>>> (original)
>>> +++
>>> continuum/trunk/continuum-webapp/src/main/resources/localization/
>>> Continuum.properties
>>> Wed Aug 5 09:13:25 2009
>>> @@ -501,6 +501,7 @@
>>> notifier.type.label = Type
>>> notifier.mail.recipient.address.label = Mail Recipient Address
>>> notifier.mail.recipient.committers.label = Send a mail to latest
>>> committers
>>> +notifier.mail.recipient.developers.label = Send a mail to project
>>> developers
>>> notifier.irc.host.label = IRC Host
>>> notifier.irc.port.label = IRC port
>>> notifier.irc.channel.label = IRC channel
>>>
>>> Modified:
>>> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/
>>> notifier/notifierMail.jsp
>>> URL:
>>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifier/notifierMail.jsp?rev=801098&r1=801097&r2=801098&view=diff
>>>
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> =
>>> ====================================================================
>>> ---
>>> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/
>>> notifier/notifierMail.jsp
>>> (original)
>>> +++
>>> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/
>>> notifier/notifierMail.jsp
>>> Wed Aug 5 09:13:25 2009
>>> @@ -57,6 +57,7 @@
>>> <tbody>
>>> <s:textfield
>>> label="%{getText('notifier.mail.recipient.address.label')}"
>>> name="address"
>>> />
>>> <s:checkbox
>>> label="%{getText('notifier.mail.recipient.committers.label')}"
>>> name="committers" value="committers" fieldValue="true"/>
>>> + <s:checkbox
>>> label="%{getText('notifier.mail.recipient.developers.label')}"
>>> name="developers" value="developers" fieldValue="true"/>
>>> <s:checkbox
>>> label="%{getText('notifier.event.sendOnSuccess')}"
>>> name="sendOnSuccess"
>>> value="sendOnSuccess" fieldValue="true"/>
>>> <s:checkbox
>>> label="%{getText('notifier.event.sendOnFailure')}"
>>> name="sendOnFailure"
>>> value="sendOnFailure" fieldValue="true"/>
>>> <s:checkbox
>>> label="%{getText('notifier.event.sendOnError')}" name="sendOnError"
>>> value="sendOnError" fieldValue="true"/>
>>>
>>>
>>>
>>
>
>
> --
>
> --------
> Jose
Re: svn commit: r801098 - in /continuum/trunk
Posted by Jose Morales <jo...@gmail.com>.
You're right,developers include commiters (this is a very brief reference in
'MailContinuumNotifier.java' when I say ' // Developers constains
committers.', all I see is not clear, so I will update comments in code) in
the code this is handled correctly, but does not showed in any way in UI. A
possible solution would be a 'select' where you could select 'developers /
commiters', another option would be a comment on an info icon or improve
documentation.
Do you have any suggestions for UI?
2009/8/22 Brett Porter <br...@apache.org>
> Hi,
>
> I think this is very confusing... the developers/committers are checkboxes
> meaning both can be ticked - but since the committers are a subset that no
> longer means anything. It took me a while to figure out why the code was
> skipping that bit.
>
> Do you think we can make this clearer from the UI / code comments in some
> way?
>
> - Brett
>
> On 05/08/2009, at 5:13 AM, jmorales@apache.org wrote:
>
> Author: jmorales
>> Date: Wed Aug 5 09:13:25 2009
>> New Revision: 801098
>>
>> URL: http://svn.apache.org/viewvc?rev=801098&view=rev
>> Log:
>> [CONTINUUM-493] Allow to add all developpers address in a notifier without
>> duplicate developpers addresses.
>>
>> Modified:
>>
>> continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifier.java
>>
>> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/main/java/org/apache/maven/continuum/notification/AbstractContinuumNotifier.java
>>
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/continuum/web/util/GenerateRecipentNotifier.java
>>
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java
>>
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java
>>
>> continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties
>>
>> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifier/notifierMail.jsp
>>
>> Modified:
>> continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifier.java
>> URL:
>> http://svn.apache.org/viewvc/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
>>
>> ==============================================================================
>> ---
>> continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifier.java
>> (original)
>> +++
>> continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifier.java
>> Wed Aug 5 09:13:25 2009
>> @@ -720,10 +720,32 @@
>>
>> }
>>
>> - String committerField = (String)
>> notifier.getConfiguration().get( COMMITTER_FIELD );
>> - if ( StringUtils.isNotEmpty( committerField ) &&
>> context.getBuildResult() != null )
>> + if (context.getBuildResult() != null)
>> {
>> - if ( Boolean.parseBoolean( committerField ) )
>> + String committerField = (String)
>> notifier.getConfiguration().get(COMMITTER_FIELD);
>> + String developerField = (String)
>> notifier.getConfiguration().get(DEVELOPER_FIELD);
>> + // Developers constains committers.
>> + if (StringUtils.isNotEmpty(developerField) &&
>> Boolean.parseBoolean(developerField))
>> + {
>> + List<ProjectDeveloper> developers =
>> project.getDevelopers();
>> + if (developers == null ||
>> developers.isEmpty())
>> + {
>> + log.warn("No developers have been
>> configured...notifcation email will not be sent");
>> + return;
>> + }
>> + Map<String, String> developerToEmailMap =
>> mapDevelopersToRecipients(developers);
>> + for (String email :
>> developerToEmailMap.values())
>> + {
>> + if
>> (!listRecipents.contains(email.trim()))
>> + {
>> + InternetAddress to = new
>> InternetAddress(email.trim());
>> + log.info("Recipient: To '" + to
>> + "'.");
>> + message.addRecipient(
>> Message.RecipientType.TO, to);
>> + listRecipents.add(email.trim());
>> + }
>> + }
>> + }
>> + else if
>> (StringUtils.isNotEmpty(committerField) &&
>> Boolean.parseBoolean(committerField))
>> {
>> ScmResult scmResult =
>> context.getBuildResult().getScmResult();
>> if ( scmResult != null &&
>> scmResult.getChanges() != null &&
>>
>> Modified:
>> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/main/java/org/apache/maven/continuum/notification/AbstractContinuumNotifier.java
>> URL:
>> http://svn.apache.org/viewvc/continuum/trunk/continuum-notifiers/continuum-notifier-api/src/main/java/org/apache/maven/continuum/notification/AbstractContinuumNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
>>
>> ==============================================================================
>> ---
>> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/main/java/org/apache/maven/continuum/notification/AbstractContinuumNotifier.java
>> (original)
>> +++
>> continuum/trunk/continuum-notifiers/continuum-notifier-api/src/main/java/org/apache/maven/continuum/notification/AbstractContinuumNotifier.java
>> Wed Aug 5 09:13:25 2009
>> @@ -49,6 +49,8 @@
>>
>> public static final String COMMITTER_FIELD = "committers";
>>
>> + public static final String DEVELOPER_FIELD = "developers";
>> +
>> private static final Logger log = LoggerFactory.getLogger(
>> AbstractContinuumNotifier.class );
>>
>> @Resource
>>
>> Modified:
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/continuum/web/util/GenerateRecipentNotifier.java
>> URL:
>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/continuum/web/util/GenerateRecipentNotifier.java?rev=801098&r1=801097&r2=801098&view=diff
>>
>> ==============================================================================
>> ---
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/continuum/web/util/GenerateRecipentNotifier.java
>> (original)
>> +++
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/continuum/web/util/GenerateRecipentNotifier.java
>> Wed Aug 5 09:13:25 2009
>> @@ -62,6 +62,15 @@
>> }
>> }
>> }
>> + if
>> (StringUtils.isNotEmpty(configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD)))
>> {
>> + if
>> (Boolean.parseBoolean(configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD)))
>> {
>> + if ("unknown".equals(recipent)) {
>> + recipent = "project developers";
>> + } else {
>> + recipent += ", " + "project developers";
>> + }
>> + }
>> + }
>> }
>> if ( "irc".equals( notifier.getType() ) )
>> {
>>
>> Modified:
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java
>> URL:
>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java?rev=801098&r1=801097&r2=801098&view=diff
>>
>> ==============================================================================
>> ---
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java
>> (original)
>> +++
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java
>> Wed Aug 5 09:13:25 2009
>> @@ -43,6 +43,8 @@
>>
>> private boolean committers;
>>
>> + private boolean developers;
>> +
>> protected void initConfiguration( Map<String, String> configuration )
>> {
>> if ( StringUtils.isNotEmpty( configuration.get(
>> AbstractContinuumNotifier.ADDRESS_FIELD ) ) )
>> @@ -54,6 +56,11 @@
>> {
>> committers = Boolean.parseBoolean( configuration.get(
>> AbstractContinuumNotifier.COMMITTER_FIELD ) );
>> }
>> +
>> + if
>> (StringUtils.isNotEmpty(configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD)))
>> + {
>> + developers =
>> Boolean.parseBoolean(configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD));
>> + }
>> }
>>
>> protected void setNotifierConfiguration( ProjectNotifier notifier )
>> @@ -67,6 +74,8 @@
>>
>> configuration.put( AbstractContinuumNotifier.COMMITTER_FIELD,
>> String.valueOf( committers ) );
>>
>> + configuration.put(AbstractContinuumNotifier.DEVELOPER_FIELD,
>> String.valueOf(developers));
>> +
>> notifier.setConfiguration( configuration );
>> }
>>
>> @@ -89,4 +98,14 @@
>> {
>> this.committers = committers;
>> }
>> +
>> + public boolean isDevelopers()
>> + {
>> + return developers;
>> + }
>> +
>> + public void setDevelopers(boolean developers)
>> + {
>> + this.developers = developers;
>> + }
>> }
>>
>> Modified:
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java
>> URL:
>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java?rev=801098&r1=801097&r2=801098&view=diff
>>
>> ==============================================================================
>> ---
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java
>> (original)
>> +++
>> continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java
>> Wed Aug 5 09:13:25 2009
>> @@ -43,6 +43,8 @@
>>
>> private boolean committers;
>>
>> + private boolean developers;
>> +
>> protected void initConfiguration( Map<String, String> configuration )
>> {
>> if ( StringUtils.isNotEmpty( configuration.get(
>> AbstractContinuumNotifier.ADDRESS_FIELD ) ) )
>> @@ -54,6 +56,11 @@
>> {
>> committers = Boolean.parseBoolean( configuration.get(
>> AbstractContinuumNotifier.COMMITTER_FIELD ) );
>> }
>> +
>> + if
>> (StringUtils.isNotEmpty(configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD)))
>> + {
>> + developers =
>> Boolean.parseBoolean(configuration.get(AbstractContinuumNotifier.DEVELOPER_FIELD));
>> + }
>> }
>>
>> protected void setNotifierConfiguration( ProjectNotifier notifier )
>> @@ -67,6 +74,8 @@
>>
>> configuration.put( AbstractContinuumNotifier.COMMITTER_FIELD,
>> String.valueOf( committers ) );
>>
>> + configuration.put(AbstractContinuumNotifier.DEVELOPER_FIELD,
>> String.valueOf(developers));
>> +
>> notifier.setConfiguration( configuration );
>> }
>>
>> @@ -89,4 +98,14 @@
>> {
>> this.committers = committers;
>> }
>> +
>> + public boolean isDevelopers()
>> + {
>> + return developers;
>> + }
>> +
>> + public void setDevelopers(boolean developers)
>> + {
>> + this.developers = developers;
>> + }
>> }
>>
>> Modified:
>> continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties
>> URL:
>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties?rev=801098&r1=801097&r2=801098&view=diff
>>
>> ==============================================================================
>> ---
>> continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties
>> (original)
>> +++
>> continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties
>> Wed Aug 5 09:13:25 2009
>> @@ -501,6 +501,7 @@
>> notifier.type.label = Type
>> notifier.mail.recipient.address.label = Mail Recipient Address
>> notifier.mail.recipient.committers.label = Send a mail to latest
>> committers
>> +notifier.mail.recipient.developers.label = Send a mail to project
>> developers
>> notifier.irc.host.label = IRC Host
>> notifier.irc.port.label = IRC port
>> notifier.irc.channel.label = IRC channel
>>
>> Modified:
>> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifier/notifierMail.jsp
>> URL:
>> http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifier/notifierMail.jsp?rev=801098&r1=801097&r2=801098&view=diff
>>
>> ==============================================================================
>> ---
>> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifier/notifierMail.jsp
>> (original)
>> +++
>> continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifier/notifierMail.jsp
>> Wed Aug 5 09:13:25 2009
>> @@ -57,6 +57,7 @@
>> <tbody>
>> <s:textfield
>> label="%{getText('notifier.mail.recipient.address.label')}" name="address"
>> />
>> <s:checkbox
>> label="%{getText('notifier.mail.recipient.committers.label')}"
>> name="committers" value="committers" fieldValue="true"/>
>> + <s:checkbox
>> label="%{getText('notifier.mail.recipient.developers.label')}"
>> name="developers" value="developers" fieldValue="true"/>
>> <s:checkbox
>> label="%{getText('notifier.event.sendOnSuccess')}" name="sendOnSuccess"
>> value="sendOnSuccess" fieldValue="true"/>
>> <s:checkbox
>> label="%{getText('notifier.event.sendOnFailure')}" name="sendOnFailure"
>> value="sendOnFailure" fieldValue="true"/>
>> <s:checkbox
>> label="%{getText('notifier.event.sendOnError')}" name="sendOnError"
>> value="sendOnError" fieldValue="true"/>
>>
>>
>>
>
--
--------
Jose