You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cz...@apache.org on 2008/10/24 09:46:57 UTC
svn commit: r707577 - in /felix/trunk/webconsole/src/main:
java/org/apache/felix/webconsole/internal/misc/EventAdminServlet.java
resources/res/ui/events.js
Author: cziegeler
Date: Fri Oct 24 00:46:57 2008
New Revision: 707577
URL: http://svn.apache.org/viewvc?rev=707577&view=rev
Log:
FELIX-790 - Synchronize event list
Modified:
felix/trunk/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/EventAdminServlet.java
felix/trunk/webconsole/src/main/resources/res/ui/events.js
Modified: felix/trunk/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/EventAdminServlet.java
URL: http://svn.apache.org/viewvc/felix/trunk/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/EventAdminServlet.java?rev=707577&r1=707576&r2=707577&view=diff
==============================================================================
--- felix/trunk/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/EventAdminServlet.java (original)
+++ felix/trunk/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/EventAdminServlet.java Fri Oct 24 00:46:57 2008
@@ -19,8 +19,7 @@
import java.io.IOException;
import java.io.PrintWriter;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
@@ -96,10 +95,13 @@
// we add everything which is not a log event
if ( !event.getTopic().startsWith("org/osgi/service/log") )
{
- this.events.add(event);
- if ( events.size() > this.maxSize )
+ synchronized ( this.events )
{
- events.remove(1);
+ this.events.add(event);
+ if ( events.size() > this.maxSize )
+ {
+ events.remove(1);
+ }
}
}
}
@@ -130,9 +132,17 @@
jw.array();
- for(int i=0; i<events.size(); i++)
+ List copiedEvents;
+ synchronized ( this.events )
{
- eventJson( jw, (Event)events.get(i), i );
+ copiedEvents = new ArrayList(this.events);
+ }
+ int index = 0;
+ final Iterator i = copiedEvents.iterator();
+ while ( i.hasNext() )
+ {
+ eventJson( jw, (Event)i.next(), index );
+ index++;
}
jw.endArray();
@@ -161,8 +171,10 @@
jw.key( "properties" );
jw.object();
final String[] names = e.getPropertyNames();
- if ( names != null && names.length > 0 ) {
- for(int i=0;i<names.length;i++) {
+ if ( names != null && names.length > 0 )
+ {
+ for(int i=0;i<names.length;i++)
+ {
jw.key(names[i]);
jw.value(e.getProperty(names[i]).toString());
}
Modified: felix/trunk/webconsole/src/main/resources/res/ui/events.js
URL: http://svn.apache.org/viewvc/felix/trunk/webconsole/src/main/resources/res/ui/events.js?rev=707577&r1=707576&r2=707577&view=diff
==============================================================================
--- felix/trunk/webconsole/src/main/resources/res/ui/events.js (original)
+++ felix/trunk/webconsole/src/main/resources/res/ui/events.js Fri Oct 24 00:46:57 2008
@@ -24,7 +24,7 @@
document.write( "</tr>" );
document.write( "<tr class='content'>" );
- document.write( "<th class='content' width='20%'>Topic</th>" );
+ document.write( "<th class='content'>Topic</th>" );
document.write( "<th class='content'>Properties</th>" );
document.write( "</tr>" );