Author: jbonofre
Date: Thu May  2 15:23:54 2013
New Revision: 1478413

URL: http://svn.apache.org/r1478413
Log:
[KARAF-2285] Fixed Gogo WebConsole plugin with Equinox

Modified:
    
karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java
    
karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/WebTerminal.java
    
karaf/branches/karaf-2.x/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml

Modified: 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java
URL: 
http://svn.apache.org/viewvc/karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java?rev=1478413&r1=1478412&r2=1478413&view=diff
==============================================================================
--- 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java
 (original)
+++ 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java
 Thu May  2 15:23:54 2013
@@ -19,7 +19,6 @@
  * Based on http://antony.lesuisse.org/software/ajaxterm/
  *  Public Domain License
  */
-
 package org.apache.karaf.webconsole.gogo;
 
 import java.io.ByteArrayInputStream;
@@ -47,86 +46,67 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * The <code>GogoPlugin</code>
+ * WebConsole plugin for Gogo shell.
  */
 public class GogoPlugin extends AbstractWebConsolePlugin {
 
-    /** Pseudo class version ID to keep the IDE quite. */
-    private static final long serialVersionUID = 1L;
-
     private final Logger logger = LoggerFactory.getLogger(GogoPlugin.class);
 
     public static final String NAME = "gogo";
-
     public static final String LABEL = "Gogo";
-
     public static final int TERM_WIDTH = 120;
     public static final int TERM_HEIGHT = 39;
 
-
-
     private BundleContext bundleContext;
-
     private CommandProcessor commandProcessor;
 
-    public void setBundleContext(BundleContext bundleContext)
-    {
+    public void setBundleContext(BundleContext bundleContext) {
         this.bundleContext = bundleContext;
     }
 
-    public void setCommandProcessor(CommandProcessor commandProcessor)
-    {
+    public void setCommandProcessor(CommandProcessor commandProcessor) {
         this.commandProcessor = commandProcessor;
     }
 
-    /*
-    * Blueprint lifecycle callback methods
-    */
-
-    public void start()
-    {
-        super.activate( bundleContext );
-        this.logger.info( LABEL + " plugin activated" );
+    public void start() {
+        super.activate(bundleContext);
+        this.logger.info(LABEL + " plugin activated");
     }
 
-    public void stop()
-    {
-        this.logger.info( LABEL + " plugin deactivated" );
+    public void stop() {
+        this.logger.info(LABEL + " plugin deactivated");
         super.deactivate();
     }
 
-    //
-    // AbstractWebConsolePlugin interface
-    //
-    public String getLabel()
-    {
+    @Override
+    public String getLabel() {
         return NAME;
     }
 
-
-    public String getTitle()
-    {
+    @Override
+    public String getTitle() {
         return LABEL;
     }
 
-
-    protected void renderContent( HttpServletRequest request, 
HttpServletResponse response ) throws IOException
-    {
+    @Override
+    protected void renderContent(HttpServletRequest request, 
HttpServletResponse response) throws IOException {
         PrintWriter pw = response.getWriter();
 
         String appRoot = request.getContextPath() + request.getServletPath();
-        pw.println( "<link href=\"" + appRoot + "/gogo/res/ui/gogo.css\" 
rel=\"stylesheet\" type=\"text/css\" />" );
-        pw.println( "<script src=\"" + appRoot + "/gogo/res/ui/gogo.js\" 
type=\"text/javascript\"></script>" );
-        pw.println( "<div id='console'><div id='term'></div></div>" );
-        pw.println( "<script type=\"text/javascript\"><!--" );
-        pw.println( "window.onload = function() { 
gogo.Terminal(document.getElementById(\"term\"), " + TERM_WIDTH + ", " + 
TERM_HEIGHT + "); }" );
-        pw.println( "--></script>" );
+        pw.println("<link href=\"" + appRoot + "/gogo/res/ui/gogo.css\" 
rel=\"stylesheet\" type=\"text/css\" />");
+        pw.println("<script src=\"" + appRoot + "/gogo/res/ui/gogo.js\" 
type=\"text/javascript\"></script>");
+        pw.println("<div id='console'><div id='term'></div></div>");
+        pw.println("<script type=\"text/javascript\"><!--");
+        pw.println("window.onload = function() { 
gogo.Terminal(document.getElementById(\"term\"), " + TERM_WIDTH + ", " + 
TERM_HEIGHT + "); }");
+        pw.println("--></script>");
     }
 
-    protected URL getResource( String path )
-    {
-        path = path.substring( NAME.length() + 1 );
-        URL url = this.getClass().getClassLoader().getResource( path );
+    protected URL getResource(String path) {
+        path = path.substring(NAME.length() + 1);
+        if (path == null || path.isEmpty()) {
+            return null;
+        }
+        URL url = this.getClass().getClassLoader().getResource(path);
         if (url != null) {
             InputStream ins = null;
             try {
@@ -168,7 +148,7 @@ public class GogoPlugin extends Abstract
                 response.setHeader("Content-Encoding", "gzip");
                 response.setHeader("Content-Type", "text/html");
                 try {
-                    GZIPOutputStream gzos =  new 
GZIPOutputStream(response.getOutputStream());
+                    GZIPOutputStream gzos = new 
GZIPOutputStream(response.getOutputStream());
                     gzos.write(dump.getBytes());
                     gzos.close();
                 } catch (IOException ie) {
@@ -181,7 +161,6 @@ public class GogoPlugin extends Abstract
         }
     }
 
-
     public class SessionTerminal implements Runnable {
 
         private Terminal terminal;
@@ -200,12 +179,12 @@ public class GogoPlugin extends Abstract
                 PrintStream pipedOut = new PrintStream(new 
PipedOutputStream(out), true);
 
                 console = new Console(commandProcessor,
-                                      new PipedInputStream(in),
-                                      pipedOut,
-                                      pipedOut,
-                                      new WebTerminal(TERM_WIDTH, TERM_HEIGHT),
-                                      null,
-                                      null);
+                        new PipedInputStream(in),
+                        pipedOut,
+                        pipedOut,
+                        new WebTerminal(TERM_WIDTH, TERM_HEIGHT),
+                        null,
+                        null);
                 CommandSession session = console.getSession();
                 session.put("APPLICATION", System.getProperty("karaf.name", 
"root"));
                 session.put("USER", "karaf");
@@ -248,12 +227,12 @@ public class GogoPlugin extends Abstract
 
         public void run() {
             try {
-                for (;;) {
+                for (; ; ) {
                     byte[] buf = new byte[8192];
                     int l = out.read(buf);
                     InputStreamReader r = new InputStreamReader(new 
ByteArrayInputStream(buf, 0, l));
                     StringBuilder sb = new StringBuilder();
-                    for (;;) {
+                    for (; ; ) {
                         int c = r.read();
                         if (c == -1) {
                             break;
@@ -277,4 +256,5 @@ public class GogoPlugin extends Abstract
         }
 
     }
+
 }

Modified: 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/WebTerminal.java
URL: 
http://svn.apache.org/viewvc/karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/WebTerminal.java?rev=1478413&r1=1478412&r2=1478413&view=diff
==============================================================================
--- 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/WebTerminal.java
 (original)
+++ 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/WebTerminal.java
 Thu May  2 15:23:54 2013
@@ -30,9 +30,11 @@ public class WebTerminal extends Termina
     }
 
     public void init() throws Exception {
+        // nothing to do
     }
 
     public void restore() throws Exception {
+        // nothing to do
     }
 
     public int getWidth() {

Modified: 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml
URL: 
http://svn.apache.org/viewvc/karaf/branches/karaf-2.x/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml?rev=1478413&r1=1478412&r2=1478413&view=diff
==============================================================================
--- 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml
 (original)
+++ 
karaf/branches/karaf-2.x/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml
 Thu May  2 15:23:54 2013
@@ -25,7 +25,6 @@
         <property name="commandProcessor" ref="commandProcessor" />
         <property name="bundleContext" ref="blueprintBundleContext" />
     </bean>
-
     <service ref="gogoPlugin" interface="javax.servlet.Servlet" >
         <service-properties>
             <entry key="felix.webconsole.label" value="gogo"/>


Reply via email to