Author: indika
Date: Mon Dec 10 03:54:54 2007
New Revision: 10840

Log:

add option to specify ignore case for searching 


Modified:
   
trunk/esb/java/modules/core/src/main/java/org/wso2/esb/services/ServerAdmin.java
   trunk/esb/java/modules/distribution/src/main/www/extensions/core/js/logs.js
   trunk/esb/java/modules/distribution/src/main/www/extensions/core/js/trace.js
   
trunk/esb/java/modules/distribution/src/main/www/extensions/core/xslt/viewlog.xsl
   
trunk/esb/java/modules/distribution/src/main/www/extensions/core/xslt/viewtracelogs.xsl

Modified: 
trunk/esb/java/modules/core/src/main/java/org/wso2/esb/services/ServerAdmin.java
==============================================================================
--- 
trunk/esb/java/modules/core/src/main/java/org/wso2/esb/services/ServerAdmin.java
    (original)
+++ 
trunk/esb/java/modules/core/src/main/java/org/wso2/esb/services/ServerAdmin.java
    Mon Dec 10 03:54:54 2007
@@ -48,8 +48,8 @@
 
     public ServerData getServerData() throws AxisFault {
         return new ServerData(
-                org.wso2.esb.ServiceBusConstants.ESB_INSTANCE,
-                getAxisConfig().getRepository().getPath());
+            org.wso2.esb.ServiceBusConstants.ESB_INSTANCE,
+            getAxisConfig().getRepository().getPath());
     }
 
     public String[] getTraceLogs() throws ServiceBusException {
@@ -63,14 +63,14 @@
                 amount = memoryAppender.getBufferSize();
             } else {
                 return new String[]{
-                        "--- No trace entries found. " +
-                                "You need to enable tracing on the 
configuration elements ---"};
+                    "--- No trace entries found. " +
+                        "You need to enable tracing on the configuration 
elements ---"};
             }
             if ((memoryAppender.getCircularQueue().getObjects(amount) == null) 
||
-                    
(memoryAppender.getCircularQueue().getObjects(amount).length == 0)) {
+                (memoryAppender.getCircularQueue().getObjects(amount).length 
== 0)) {
                 return new String[]{
-                        "--- No trace entries found. " +
-                                "You need to enable tracing on the 
configuration elements ---"};
+                    "--- No trace entries found. " +
+                        "You need to enable tracing on the configuration 
elements ---"};
             }
             Object[] objects;
             if (amount < 1) {
@@ -89,7 +89,7 @@
             return resp;
         } else {
             return new String[]{"The trace log must be configured to use the " 
+
-                    "org.wso2.utils.MemoryAppender to view entries through the 
admin console"};
+                "org.wso2.utils.MemoryAppender to view entries through the 
admin console"};
         }
     }
 
@@ -115,22 +115,22 @@
         int DEFAULT_NO_OF_LOGS = 100;
         int definedamount;
         Appender appender
-                = Logger.getRootLogger().getAppender("LOG_MEMORYAPPENDER");
+            = Logger.getRootLogger().getAppender("LOG_MEMORYAPPENDER");
         if (appender instanceof MemoryAppender) {
             MemoryAppender memoryAppender = (MemoryAppender) appender;
             if ((memoryAppender.getCircularQueue() != null)) {
                 definedamount = memoryAppender.getBufferSize();
             } else {
                 return new String[]{
-                        "--- No log entries found. " +
-                                "You may try increasing the log level ---"
+                    "--- No log entries found. " +
+                        "You may try increasing the log level ---"
                 };
             }
             if ((memoryAppender.getCircularQueue().getObjects(definedamount) 
== null) ||
-                    
(memoryAppender.getCircularQueue().getObjects(definedamount).length == 0)) {
+                
(memoryAppender.getCircularQueue().getObjects(definedamount).length == 0)) {
                 return new String[]{
-                        "--- No log entries found. " +
-                                "You may try increasing the log level ---"
+                    "--- No log entries found. " +
+                        "You may try increasing the log level ---"
                 };
             }
             Object[] objects;
@@ -139,7 +139,7 @@
             } else {
                 objects = 
memoryAppender.getCircularQueue().getObjects(definedamount);
             }
-            String[]  resp = new String[objects.length];
+            String[] resp = new String[objects.length];
             Layout layout = memoryAppender.getLayout();
             for (int i = 0; i < objects.length; i++) {
                 LoggingEvent logEvt = (LoggingEvent) objects[i];
@@ -150,7 +150,7 @@
             return resp;
         } else {
             return new String[]{"The log must be configured to use the " +
-                    "org.wso2.utils.MemoryAppender to view entries on the 
admin console"};
+                "org.wso2.utils.MemoryAppender to view entries on the admin 
console"};
         }
     }
 
@@ -165,7 +165,7 @@
         }
     }
 
-    public String[] searchLog(String type, String keyword) throws AxisFault, 
ServiceBusException {
+    public String[] searchLog(String type, String keyword, boolean ignoreCase) 
throws AxisFault, ServiceBusException {
         if (keyword == null) {
             handleFault(log, "Key word can not be null", null);
         }
@@ -176,46 +176,56 @@
             if ("".equals(keyword)) {
                 return getLogs();
             } else {
-                return getLogsForKey(keyword);
+                return getLogsForKey(keyword, ignoreCase);
             }
         } else {
             String[] filerByType = getLogsForType(type);
             List resultList = new ArrayList();
-            for (int i = 0; i < filerByType.length ; i++) {
-                if (filerByType[i] != null && filerByType[i].indexOf(keyword) 
> -1) {
-                    resultList.add(filerByType[i]);
+            for (int i = 0; i < filerByType.length; i++) {
+                String result = filerByType[i];
+                if (result != null) {
+                    if (!ignoreCase) {
+                        if (result.indexOf(keyword) > -1) {
+                            resultList.add(result);
+                        }
+                    } else {
+                        if (keyword != null
+                            && 
result.toLowerCase().indexOf(keyword.toLowerCase()) > -1) {
+                            resultList.add(result);
+                        }
+                    }
                 }
             }
             if (resultList.isEmpty()) {
                 return new String[]{
-                        "--- No log entries found for " +
-                                "the keyword " + keyword + " and the log level 
" + type + "---"
+                    "--- No log entries found for " +
+                        "the keyword " + keyword + " and the log level " + 
type + "---"
                 };
             }
             return (String[]) resultList.toArray(new 
String[resultList.size()]);
         }
     }
 
-    private String [] getLogsForKey(String keyword) {
+    private String[] getLogsForKey(String keyword, boolean ignoreCase) {
         int DEFAULT_NO_OF_LOGS = 100;
         int definedamount;
         Appender appender
-                = Logger.getRootLogger().getAppender("LOG_MEMORYAPPENDER");
+            = Logger.getRootLogger().getAppender("LOG_MEMORYAPPENDER");
         if (appender instanceof MemoryAppender) {
             MemoryAppender memoryAppender = (MemoryAppender) appender;
             if ((memoryAppender.getCircularQueue() != null)) {
                 definedamount = memoryAppender.getBufferSize();
             } else {
                 return new String[]{
-                        "--- No log entries found for " +
-                                "the  " + keyword + " ---"
+                    "--- No log entries found for " +
+                        "the  " + keyword + " ---"
                 };
             }
             if ((memoryAppender.getCircularQueue().getObjects(definedamount) 
== null) ||
-                    
(memoryAppender.getCircularQueue().getObjects(definedamount).length == 0)) {
+                
(memoryAppender.getCircularQueue().getObjects(definedamount).length == 0)) {
                 return new String[]{
-                        "--- No log entries found for " +
-                                "the  " + keyword + " ---"
+                    "--- No log entries found for " +
+                        "the  " + keyword + " ---"
                 };
             }
             Object[] objects;
@@ -230,44 +240,53 @@
                 LoggingEvent logEvt = (LoggingEvent) objects[i];
                 if (logEvt != null) {
                     String result = layout.format(logEvt);
-                    if (result != null && result.indexOf(keyword) > -1) {
-                        resultList.add(result);
+                    if (result != null) {
+                        if (!ignoreCase) {
+                            if (result.indexOf(keyword) > -1) {
+                                resultList.add(result);
+                            }
+                        } else {
+                            if (keyword != null
+                                && 
result.toLowerCase().indexOf(keyword.toLowerCase()) > -1) {
+                                resultList.add(result);
+                            }
+                        }
                     }
                 }
             }
             if (resultList.isEmpty()) {
                 return new String[]{
-                        "--- No log entries found for " +
-                                "the " + keyword + " ---"
+                    "--- No log entries found for " +
+                        "the " + keyword + " ---"
                 };
             }
             return (String[]) resultList.toArray(new 
String[resultList.size()]);
         } else {
             return new String[]{"The log must be configured to use the " +
-                    "org.wso2.utils.MemoryAppender to view entries on the 
admin console"};
+                "org.wso2.utils.MemoryAppender to view entries on the admin 
console"};
         }
     }
 
-    private String [] getLogsForType(String type) {
+    private String[] getLogsForType(String type) {
         int DEFAULT_NO_OF_LOGS = 100;
         int definedamount;
         Appender appender
-                = Logger.getRootLogger().getAppender("LOG_MEMORYAPPENDER");
+            = Logger.getRootLogger().getAppender("LOG_MEMORYAPPENDER");
         if (appender instanceof MemoryAppender) {
             MemoryAppender memoryAppender = (MemoryAppender) appender;
             if ((memoryAppender.getCircularQueue() != null)) {
                 definedamount = memoryAppender.getBufferSize();
             } else {
                 return new String[]{
-                        "--- No log entries found for " +
-                                "the  " + type + " ---"
+                    "--- No log entries found for " +
+                        "the  " + type + " ---"
                 };
             }
             if ((memoryAppender.getCircularQueue().getObjects(definedamount) 
== null) ||
-                    
(memoryAppender.getCircularQueue().getObjects(definedamount).length == 0)) {
+                
(memoryAppender.getCircularQueue().getObjects(definedamount).length == 0)) {
                 return new String[]{
-                        "--- No log entries found for " +
-                                "the  " + type + " ---"
+                    "--- No log entries found for " +
+                        "the  " + type + " ---"
                 };
             }
             Object[] objects;
@@ -289,18 +308,18 @@
             }
             if (resultList.isEmpty()) {
                 return new String[]{
-                        "--- No log entries found for " +
-                                "the " + type + " ---"
+                    "--- No log entries found for " +
+                        "the " + type + " ---"
                 };
             }
             return (String[]) resultList.toArray(new 
String[resultList.size()]);
         } else {
             return new String[]{"The log must be configured to use the " +
-                    "org.wso2.utils.MemoryAppender to view entries through the 
admin console"};
+                "org.wso2.utils.MemoryAppender to view entries through the 
admin console"};
         }
     }
 
-    public String[] searchTraceLog(String keyword) throws ServiceBusException {
+    public String[] searchTraceLog(String keyword, boolean ignoreCase) throws 
ServiceBusException {
         int DEFAULT_NO_OF_LOGS = 100;
         int definedamonut;
         if (keyword == null) {
@@ -313,20 +332,20 @@
         Appender appender = logger.getAppender("TRACE_MEMORYAPPENDER");
         if (appender instanceof MemoryAppender) {
             MemoryAppender memoryAppender
-                    = (MemoryAppender) appender;
+                = (MemoryAppender) appender;
             if ((memoryAppender.getCircularQueue() != null)) {
                 definedamonut = memoryAppender.getBufferSize();
             } else {
                 return new String[]{
-                        "--- No trace entries found for " +
-                                "the " + keyword + " ---"
+                    "--- No trace entries found for " +
+                        "the " + keyword + " ---"
                 };
             }
             if ((memoryAppender.getCircularQueue().getObjects(definedamonut) 
== null) ||
-                    
(memoryAppender.getCircularQueue().getObjects(definedamonut).length == 0)) {
+                
(memoryAppender.getCircularQueue().getObjects(definedamonut).length == 0)) {
                 return new String[]{
-                        "--- No trace entries found for " +
-                                "the " + keyword + " ---"
+                    "--- No trace entries found for " +
+                        "the " + keyword + " ---"
                 };
             }
             Object[] objects;
@@ -341,21 +360,29 @@
                 LoggingEvent logEvt = (LoggingEvent) objects[i];
                 if (logEvt != null) {
                     String result = layout.format(logEvt);
-                    if (result != null && result.indexOf(keyword) > -1) {
-                        resultList.add(result);
+                    if (result != null) {
+                        if (!ignoreCase) {
+                            if (result.indexOf(keyword) > -1) {
+                                resultList.add(result);
+                            }
+                        } else {
+                            if 
(result.toLowerCase().indexOf(keyword.toLowerCase()) > -1) {
+                                resultList.add(result);
+                            }
+                        }
                     }
                 }
             }
             if (resultList.isEmpty()) {
                 return new String[]{
-                        "--- No trace entries found for " +
-                                "the  " + keyword + " ---"
+                    "--- No trace entries found for " +
+                        "the  " + keyword + " ---"
                 };
             }
             return (String[]) resultList.toArray(new 
String[resultList.size()]);
         } else {
             return new String[]{"The trace log must be configured to use the " 
+
-                    "org.wso2.utils.MemoryAppender to view entries through the 
admin console"};
+                "org.wso2.utils.MemoryAppender to view entries through the 
admin console"};
         }
 
     }

Modified: 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/js/logs.js
==============================================================================
--- trunk/esb/java/modules/distribution/src/main/www/extensions/core/js/logs.js 
(original)
+++ trunk/esb/java/modules/distribution/src/main/www/extensions/core/js/logs.js 
Mon Dec 10 03:54:54 2007
@@ -95,9 +95,17 @@
         if (keyword.value == "") {
             viewLogs();
         } else {
+            var ignore_case = document.getElementById("ignore_case");
+            var ignoreCase = false;
+            if (ignore_case != null) {
+                if (ignore_case.checked) {
+                    ignoreCase = true;
+                }
+            }
             var body_xml = '<ns1:searchLogRequest 
xmlns:ns1="http://org.apache.synapse/xsd";>' +
                            '<type>' + loglevel_value + '</type>' +
                            '<kerword>' + keyword.value + '</kerword>' +
+                           '<ignoreCase>' + ignoreCase.toString() + 
'</ignoreCase>' +
                            '</ns1:searchLogsRequest>';
             var callURL = serverURL + "/" + SERVER_ADMIN_STRING + "/" + 
"searchLog";
             send("searchLog", body_xml, "", callURL, "", false, 
searchLogCallback);
@@ -129,6 +137,14 @@
     if (loglevel_value != null && loglevel_value != "") {
         data.setAttribute("level", loglevel_value)
     }
+    var ignore_case = document.getElementById("ignore_case");
+    var ignoreCase = false;
+    if (ignore_case != null) {
+        if (ignore_case.checked) {
+            ignoreCase = true;
+        }
+    }
+    data.setAttribute("ignoreCase", ignoreCase.toString());
     var logdiv = document.getElementById("logdiv");
     processXML(data, "viewlog.xsl", objDiv);
     //     showStuffInNewWindow(new XMLSerializer().serializeToString(objDiv));

Modified: 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/js/trace.js
==============================================================================
--- 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/js/trace.js    
    (original)
+++ 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/js/trace.js    
    Mon Dec 10 03:54:54 2007
@@ -21,7 +21,7 @@
 
 function viewTraceLogs() {
     var body_xml = '<ns1:getTraceLogsRequest 
xmlns:ns1="http://org.apache.synapse/xsd";>' +
-                    '</ns1:getTraceLogsRequest>';
+                   '</ns1:getTraceLogsRequest>';
 
     var callURL = serverURL + "/" + SERVER_ADMIN_STRING + "/" + "getTraceLogs";
     send("getTraceLogs", body_xml, "", callURL, "", false, 
viewTraceLogsCallback);
@@ -59,8 +59,16 @@
         if (keyword.value == "") {
             viewTraceLogs();
         } else {
+            var ignore_case = document.getElementById("ignore_case");
+            var ignoreCase = false;
+            if (ignore_case != null) {
+                if (ignore_case.checked) {
+                    ignoreCase = true;
+                }
+            }
             var body_xml = '<ns1:searchTraceLogRequest 
xmlns:ns1="http://org.apache.synapse/xsd";>' +
                            '<kerword>' + keyword.value + '</kerword>' +
+                           '<ignoreCase>' + ignoreCase.toString() + 
'</ignoreCase>' +
                            '</ns1:searchTraceLogRequest>';
             var callURL = serverURL + "/" + SERVER_ADMIN_STRING + "/" + 
"searchTraceLog";
             send("searchTraceLog", body_xml, "", callURL, "", false, 
searchTraceCallback);
@@ -79,6 +87,14 @@
     if (keyword != null && keyword.value != undefined) {
         data.setAttribute("keyword", keyword.value)
     }
+    var ignore_case = document.getElementById("ignore_case");
+    var ignoreCase = false;
+    if (ignore_case != null) {
+        if (ignore_case.checked) {
+            ignoreCase = true;
+        }
+    }
+    data.setAttribute("ignoreCase", ignoreCase.toString());
     var logdiv = document.getElementById("tracelogdiv");
     processXML(data, "viewtracelogs.xsl", objDiv);
     showOnlyOneMain(objDiv, false);
@@ -94,7 +110,7 @@
     }
     if (keycode == 13)
     {
-        searchTrace();           
+        searchTrace();
         return true;
     }
     else {

Modified: 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/xslt/viewlog.xsl
==============================================================================
--- 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/xslt/viewlog.xsl
   (original)
+++ 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/xslt/viewlog.xsl
   Mon Dec 10 03:54:54 2007
@@ -25,7 +25,7 @@
                              onmouseover="showHelp(event,'logsHelpDiv')"
                              onmouseout="hideHelp(event,'logsHelpDiv')"/>
                     </div><div id="logsHelpDiv" class="helptip"></div>
-                    
+
                     <form>
                         <fieldset style="border:none;margin-left: -30px;">
                             <xsl:choose>
@@ -160,7 +160,18 @@
                                                             </xsl:if>
                                                             </xsl:element>
                                                     </td>
-                                                    <td 
style="width:440px;"></td>                                                      
   
+                                                    <td>
+                                                        <xsl:text>Ignore 
Case</xsl:text>
+                                                    </td>
+                                                    <td>
+                                                        <xsl:element 
name="input">
+                                                            <xsl:attribute 
name="type">checkbox</xsl:attribute>
+                                                            <xsl:attribute 
name="id">ignore_case</xsl:attribute>
+                                                            <xsl:if 
test="@ignoreCase='true'">
+                                                               <xsl:attribute 
name="checked">checked</xsl:attribute>
+                                                            </xsl:if>
+                                                        </xsl:element>
+                                                    </td>
                                                     <td>
                                                         <xsl:element 
name="input">
                                                             <xsl:attribute 
name="id">logkeyword</xsl:attribute>

Modified: 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/xslt/viewtracelogs.xsl
==============================================================================
--- 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/xslt/viewtracelogs.xsl
     (original)
+++ 
trunk/esb/java/modules/distribution/src/main/www/extensions/core/xslt/viewtracelogs.xsl
     Mon Dec 10 03:54:54 2007
@@ -33,7 +33,19 @@
                                         <table border="0" style="width:98%;">
                                             <tbody>
                                                 <tr>
-                                                    <td 
style="width:550px;"></td>
+                                                    <td 
style="width:50px;"></td>
+                                                    <td>
+                                                        <xsl:text>Ignore 
Case</xsl:text>
+                                                    </td>
+                                                    <td>
+                                                        <xsl:element 
name="input">
+                                                            <xsl:attribute 
name="type">checkbox</xsl:attribute>
+                                                            <xsl:attribute 
name="id">ignore_case</xsl:attribute>
+                                                            <xsl:if 
test="@ignoreCase='true'">
+                                                                <xsl:attribute 
name="checked">checked</xsl:attribute>
+                                                            </xsl:if>
+                                                        </xsl:element>
+                                                    </td>
                                                     <td>
                                                         <xsl:element 
name="input">
                                                             <xsl:attribute 
name="id">tracekeyword</xsl:attribute>

_______________________________________________
Esb-java-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev

Reply via email to