Author: carlos
Date: Sun Jan 20 21:26:44 2008
New Revision: 613761
URL: http://svn.apache.org/viewvc?rev=613761&view=rev
Log:
Send email at the end of the process
Modified:
maven/archiva/tools/trunk/maven-meeper/pom.xml
maven/archiva/tools/trunk/maven-meeper/src/bin/synchronize/m2-sync/sync.properties
maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/Synchronizer.java
maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/SynchronizerOptions.java
Modified: maven/archiva/tools/trunk/maven-meeper/pom.xml
URL:
http://svn.apache.org/viewvc/maven/archiva/tools/trunk/maven-meeper/pom.xml?rev=613761&r1=613760&r2=613761&view=diff
==============================================================================
--- maven/archiva/tools/trunk/maven-meeper/pom.xml (original)
+++ maven/archiva/tools/trunk/maven-meeper/pom.xml Sun Jan 20 21:26:44 2008
@@ -33,6 +33,11 @@
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-email</artifactId>
+ <version>1.1</version>
+ </dependency>
+ <dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
<version>1.4.8</version>
Modified:
maven/archiva/tools/trunk/maven-meeper/src/bin/synchronize/m2-sync/sync.properties
URL:
http://svn.apache.org/viewvc/maven/archiva/tools/trunk/maven-meeper/src/bin/synchronize/m2-sync/sync.properties?rev=613761&r1=613760&r2=613761&view=diff
==============================================================================
---
maven/archiva/tools/trunk/maven-meeper/src/bin/synchronize/m2-sync/sync.properties
(original)
+++
maven/archiva/tools/trunk/maven-meeper/src/bin/synchronize/m2-sync/sync.properties
Sun Jan 20 21:26:44 2008
@@ -1,3 +1,7 @@
exclusionsFile=/home/maven/bin/synchronize/syncopate/exclusions.txt
basedir=/home/maven/repository-staging/to-ibiblio/maven2
log=/tmp/sync-changed.log
+mailHostName=localhost
[EMAIL PROTECTED]
[EMAIL PROTECTED]
+mailSubject=[REPOSITORY_SYNC]
Modified:
maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/Synchronizer.java
URL:
http://svn.apache.org/viewvc/maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/Synchronizer.java?rev=613761&r1=613760&r2=613761&view=diff
==============================================================================
---
maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/Synchronizer.java
(original)
+++
maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/Synchronizer.java
Sun Jan 20 21:26:44 2008
@@ -8,6 +8,8 @@
import java.util.Iterator;
import java.util.List;
+import org.apache.commons.mail.EmailException;
+import org.apache.commons.mail.SimpleEmail;
import org.codehaus.plexus.util.cli.CommandLineException;
import org.codehaus.plexus.util.cli.CommandLineUtils;
import org.codehaus.plexus.util.cli.Commandline;
@@ -167,15 +169,36 @@
synchronizer.sync(repositories);
if (synchronizer.failedRepositories.isEmpty()) {
- System.out.println("--- All repositories synchronized successfully
---");
+ synchronizer.sendEmail("--- All repositories synchronized
successfully ---");
} else {
- System.out.println("--- Some repositories were not synchronized
---");
+ StringBuffer sb = new StringBuffer();
+ sb.append("--- Some repositories were not synchronized ---");
Iterator it = synchronizer.failedRepositories.iterator();
while (it.hasNext()) {
SyncedRepository repo = (SyncedRepository) it.next();
- System.out.println(" * " + repo.getGroupId());
- System.out.println(repo.getErr());
+ sb.append(repo.getGroupId());
+ sb.append("\n");
+ sb.append(repo.getErr());
+ sb.append("\n");
+ sb.append("\n");
}
+ synchronizer.sendEmail(sb.toString());
+ }
+
+ /* send email out */
+ }
+
+ private void sendEmail(String text) {
+ SimpleEmail email = new SimpleEmail();
+ email.setHostName(options.getMailHostname());
+ try {
+ email.addTo(options.getMailTo());
+ email.setFrom(options.getMailFrom());
+ email.setSubject(options.getMailSubject());
+ email.setMsg(text);
+ email.send();
+ } catch (EmailException e) {
+ throw new RuntimeException(e);
}
}
}
Modified:
maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/SynchronizerOptions.java
URL:
http://svn.apache.org/viewvc/maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/SynchronizerOptions.java?rev=613761&r1=613760&r2=613761&view=diff
==============================================================================
---
maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/SynchronizerOptions.java
(original)
+++
maven/archiva/tools/trunk/maven-meeper/src/main/java/org/apache/maven/archiva/meeper/SynchronizerOptions.java
Sun Jan 20 21:26:44 2008
@@ -3,7 +3,6 @@
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
-import java.io.FileReader;
import java.io.IOException;
import java.util.Properties;
@@ -11,10 +10,15 @@
private static final String BASEDIR = "basedir";
private static final String LOG_FILE = "log";
private static final String EXCLUSIONS_FILE = "exclusionsFile";
+ private static final String MAIL_HOST_NAME = "mailHostName";
+ private static final String MAIL_TO = "mailTo";
+ private static final String MAIL_FROM = "mailFrom";
+ private static final String MAIL_SUBJECT = "mailSubject";
private String exclusionsFile;
private String basedir;
private String logFile;
private boolean dryRun = true;
+ private String mailHostname, mailTo, mailFrom, mailSubject;
public String getExclusionsFile() {
return exclusionsFile;
@@ -73,6 +77,42 @@
options.setExclusionsFile(properties.getProperty(EXCLUSIONS_FILE));
options.setLogFile(properties.getProperty(LOG_FILE));
options.setBasedir(properties.getProperty(BASEDIR));
+ options.setMailHostname(properties.getProperty(MAIL_HOST_NAME));
+ options.setMailTo(properties.getProperty(MAIL_TO));
+ options.setMailFrom(properties.getProperty(MAIL_FROM));
+ options.setMailSubject(properties.getProperty(MAIL_SUBJECT));
return options;
+ }
+
+ public void setMailHostname(String mailHostname) {
+ this.mailHostname = mailHostname;
+ }
+
+ public String getMailHostname() {
+ return mailHostname;
+ }
+
+ public String getMailTo() {
+ return mailTo;
+ }
+
+ public void setMailTo(String mailTo) {
+ this.mailTo = mailTo;
+ }
+
+ public String getMailFrom() {
+ return mailFrom;
+ }
+
+ public void setMailFrom(String mailFrom) {
+ this.mailFrom = mailFrom;
+ }
+
+ public String getMailSubject() {
+ return mailSubject;
+ }
+
+ public void setMailSubject(String mailSubject) {
+ this.mailSubject = mailSubject;
}
}