You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2012/02/13 21:25:02 UTC

svn commit: r1243678 - /openejb/trunk/maven-plugins/info-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/info/InfoMojo.java

Author: rmannibucau
Date: Mon Feb 13 20:25:01 2012
New Revision: 1243678

URL: http://svn.apache.org/viewvc?rev=1243678&view=rev
Log:
some logging enhancement

Modified:
    openejb/trunk/maven-plugins/info-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/info/InfoMojo.java

Modified: openejb/trunk/maven-plugins/info-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/info/InfoMojo.java
URL: http://svn.apache.org/viewvc/openejb/trunk/maven-plugins/info-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/info/InfoMojo.java?rev=1243678&r1=1243677&r2=1243678&view=diff
==============================================================================
--- openejb/trunk/maven-plugins/info-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/info/InfoMojo.java (original)
+++ openejb/trunk/maven-plugins/info-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/info/InfoMojo.java Mon Feb 13 20:25:01 2012
@@ -3,12 +3,16 @@ package org.apache.openejb.maven.plugin.
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugin.logging.Log;
 import org.apache.openejb.OpenEJB;
 import org.apache.openejb.OpenEJBException;
 import org.apache.openejb.assembler.classic.AppInfo;
 import org.apache.openejb.config.AppModule;
 import org.apache.openejb.config.ConfigurationFactory;
 import org.apache.openejb.loader.IO;
+import org.apache.openejb.util.LogCategory;
+import org.apache.openejb.util.LogStream;
+import org.apache.openejb.util.LogStreamFactory;
 
 import java.io.BufferedOutputStream;
 import java.io.File;
@@ -20,6 +24,7 @@ import java.util.Arrays;
 
 /**
  * @goal add-info
+ * @phase compile
  */
 public class InfoMojo extends AbstractMojo {
     /**
@@ -38,6 +43,10 @@ public class InfoMojo extends AbstractMo
     @Override
     public void execute() throws MojoExecutionException, MojoFailureException {
         getLog().info("creating module for " + module.getPath());
+
+        System.setProperty("openejb.log.factory", MavenLogStreamFactory.class.getName());
+        MavenLogStreamFactory.setLogger(getLog());
+
         final ConfigurationFactory configurationFactory = new ConfigurationFactory();
         try {
             OpenEJB.init(System.getProperties());
@@ -48,8 +57,9 @@ public class InfoMojo extends AbstractMo
             info = replacePath(info);
             info = replaceContainer(info);
 
-            // TODO use an openejb constant for the path
-            dump(new File(module, "openejb/app-info.xml"), info);
+            final File output = new File(module, ConfigurationFactory.APP_INFO_XML);
+            dump(output, info);
+            getLog().info("dumped configuration in " + output.getPath());
         } catch (OpenEJBException e) {
             throw new MojoFailureException("can't get the configuration", e);
         } catch (IOException e) {
@@ -82,4 +92,100 @@ public class InfoMojo extends AbstractMo
     private AppInfo replacePath(AppInfo info) {
         return info;
     }
+
+    public static class MavenLogStreamFactory implements LogStreamFactory {
+        private static Log logger;
+
+        @Override
+        public LogStream createLogStream(LogCategory logCategory) {
+            return new MavenLogStream(logger);
+        }
+
+        public static void setLogger(Log logger) {
+            MavenLogStreamFactory.logger = logger;
+        }
+
+        private static class MavenLogStream implements LogStream {
+            private final Log log;
+
+            public MavenLogStream(Log logger) {
+                log = logger;
+            }
+
+            @Override
+            public boolean isFatalEnabled() {
+                return log.isErrorEnabled();
+            }
+
+            @Override
+            public void fatal(String message) {
+                log.error(message);
+            }
+
+            @Override
+            public void fatal(String message, Throwable t) {
+                log.error(message, t);
+            }
+
+            @Override
+            public boolean isErrorEnabled() {
+                return log.isErrorEnabled();
+            }
+
+            @Override
+            public void error(String message) {
+                log.error(message);
+            }
+
+            @Override
+            public void error(String message, Throwable t) {
+                log.error(message, t);
+            }
+
+            @Override
+            public boolean isWarnEnabled() {
+                return log.isWarnEnabled();
+            }
+
+            @Override
+            public void warn(String message) {
+                log.warn(message);
+            }
+
+            @Override
+            public void warn(String message, Throwable t) {
+                log.warn(message, t);
+            }
+
+            @Override
+            public boolean isInfoEnabled() {
+                return log.isInfoEnabled();
+            }
+
+            @Override
+            public void info(String message) {
+                log.info(message);
+            }
+
+            @Override
+            public void info(String message, Throwable t) {
+                log.info(message, t);
+            }
+
+            @Override
+            public boolean isDebugEnabled() {
+                return log.isDebugEnabled();
+            }
+
+            @Override
+            public void debug(String message) {
+                log.debug(message);
+            }
+
+            @Override
+            public void debug(String message, Throwable t) {
+                log.debug(message, t);
+            }
+        }
+    }
 }