remm 2003/09/04 10:59:39 Modified: webapps/manager xform.xsl webapps/manager/WEB-INF/classes/org/apache/catalina/manager StatusTransformer.java Log: - Implement the XML processor state. Revision Changes Path 1.3 +7 -7 jakarta-tomcat-catalina/webapps/manager/xform.xsl Index: xform.xsl =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/webapps/manager/xform.xsl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- xform.xsl 25 Mar 2003 15:40:26 -0000 1.2 +++ xform.xsl 4 Sep 2003 17:59:39 -0000 1.3 @@ -83,13 +83,13 @@ <xsl:template match="worker"> <tr> - <td><xsl:apply-templates select="stage"/></td> - <td><xsl:apply-templates select="requestProcessingTime"/></td> - <td><xsl:apply-templates select="requestBytesSent"/></td> - <td><xsl:apply-templates select="requestBytesReceived"/></td> - <td><xsl:apply-templates select="remoteAddr"/></td> - <td><xsl:apply-templates select="virtualHost"/></td> - <td><xsl:apply-templates select="method"/> <xsl:apply-templates select="currentUri"/>?<xsl:apply-templates select="currentQueryString"/></td> + <td><xsl:value-of select="@stage"/></td> + <td><xsl:value-of select="@requestProcessingTime"/></td> + <td><xsl:value-of select="@requestBytesSent"/></td> + <td><xsl:value-of select="@requestBytesReceived"/></td> + <td><xsl:value-of select="@remoteAddr"/></td> + <td><xsl:value-of select="@virtualHost"/></td> + <td><xsl:value-of select="@method"/> <xsl:value-of select="@currentUri"/>?<xsl:value-of select="@currentQueryString"/> <xsl:value-of select="@protocol"/></td> </tr> </xsl:template> 1.2 +118 -52 jakarta-tomcat-catalina/webapps/manager/WEB-INF/classes/org/apache/catalina/manager/StatusTransformer.java Index: StatusTransformer.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/webapps/manager/WEB-INF/classes/org/apache/catalina/manager/StatusTransformer.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- StatusTransformer.java 4 Sep 2003 14:22:18 -0000 1.1 +++ StatusTransformer.java 4 Sep 2003 17:59:39 -0000 1.2 @@ -338,9 +338,7 @@ while (enum.hasMoreElements()) { ObjectName objectName = (ObjectName) enum.nextElement(); if (name.equals(objectName.getKeyProperty("worker"))) { - writer.write("<worker>"); writeProcessorState(writer, objectName, mBeanServer, mode); - writer.write("</worker>"); } } writer.write("</workers>"); @@ -361,53 +359,55 @@ int mode) throws Exception { - if (mode == 0) { - Integer stageValue = - (Integer) mBeanServer.getAttribute(pName, "stage"); - int stage = stageValue.intValue(); - boolean fullStatus = true; - boolean showRequest = true; - - writer.write("<td><strong>"); - - switch (stage) { + Integer stageValue = + (Integer) mBeanServer.getAttribute(pName, "stage"); + int stage = stageValue.intValue(); + boolean fullStatus = true; + boolean showRequest = true; + String stageStr = null; + + switch (stage) { + + case (1/*org.apache.coyote.Constants.STAGE_PARSE*/): + stageStr = "P"; + fullStatus = false; + break; + case (2/*org.apache.coyote.Constants.STAGE_PREPARE*/): + stageStr = "P"; + fullStatus = false; + break; + case (3/*org.apache.coyote.Constants.STAGE_SERVICE*/): + stageStr = "S"; + break; + case (4/*org.apache.coyote.Constants.STAGE_ENDINPUT*/): + stageStr = "F"; + break; + case (5/*org.apache.coyote.Constants.STAGE_ENDOUTPUT*/): + stageStr = "F"; + break; + case (7/*org.apache.coyote.Constants.STAGE_ENDED*/): + stageStr = "R"; + fullStatus = false; + break; + case (6/*org.apache.coyote.Constants.STAGE_KEEPALIVE*/): + stageStr = "K"; + fullStatus = true; + showRequest = false; + break; + case (0/*org.apache.coyote.Constants.STAGE_NEW*/): + stageStr = "R"; + fullStatus = false; + break; + default: + // Unknown stage + stageStr = "?"; + fullStatus = false; - case (1/*org.apache.coyote.Constants.STAGE_PARSE*/): - writer.write("P"); - fullStatus = false; - break; - case (2/*org.apache.coyote.Constants.STAGE_PREPARE*/): - writer.write("P"); - fullStatus = false; - break; - case (3/*org.apache.coyote.Constants.STAGE_SERVICE*/): - writer.write("S"); - break; - case (4/*org.apache.coyote.Constants.STAGE_ENDINPUT*/): - writer.write("F"); - break; - case (5/*org.apache.coyote.Constants.STAGE_ENDOUTPUT*/): - writer.write("F"); - break; - case (7/*org.apache.coyote.Constants.STAGE_ENDED*/): - writer.write("R"); - fullStatus = false; - break; - case (6/*org.apache.coyote.Constants.STAGE_KEEPALIVE*/): - writer.write("K"); - fullStatus = true; - showRequest = false; - break; - case (0/*org.apache.coyote.Constants.STAGE_NEW*/): - writer.write("R"); - fullStatus = false; - break; - default: - writer.write("?"); - fullStatus = false; - - } + } + if (mode == 0) { + writer.write("<td><strong>"); + writer.write(stageStr); writer.write("</strong></td>"); if (fullStatus) { @@ -464,7 +464,73 @@ writer.write("<td>?</td><td>?</td><td>?</td><td>?</td><td>?</td><td>?</td>"); } } else if (mode == 1){ - // for now we don't generate XML output + writer.write("<worker "); + writer.write(" stage=\"" + stageStr + "\""); + + if (fullStatus) { + writer.write(" requestProcessingTime=\"" + + mBeanServer.getAttribute + (pName, "requestProcessingTime") + "\""); + writer.write(" requestBytesSent=\""); + if (showRequest) { + writer.write("" + mBeanServer.getAttribute + (pName, "requestBytesSent")); + } else { + writer.write("?"); + } + writer.write("\""); + writer.write(" requestBytesReceived=\""); + if (showRequest) { + writer.write("" + mBeanServer.getAttribute + (pName, "requestBytesReceived")); + } else { + writer.write("?"); + } + writer.write("\""); + writer.write(" remoteAddr=\"" + + filter(mBeanServer.getAttribute + (pName, "remoteAddr")) + "\""); + writer.write(" virtualHost=\"" + + filter(mBeanServer.getAttribute + (pName, "virtualHost")) + "\""); + + if (showRequest) { + writer.write(" method=\"" + + filter(mBeanServer.getAttribute + (pName, "method")) + "\""); + writer.write(" currentUri=\"" + + filter(mBeanServer.getAttribute + (pName, "currentUri")) + "\""); + + String queryString = (String) mBeanServer.getAttribute + (pName, "currentQueryString"); + if ((queryString != null) && (!queryString.equals(""))) { + writer.write(" currentQueryString=\"" + + queryString + "\""); + } else { + writer.write(" currentQueryString=\"?\""); + } + writer.write(" protocol=\"" + + filter(mBeanServer.getAttribute + (pName, "protocol")) + "\""); + } else { + writer.write(" method=\"?\""); + writer.write(" currentUri=\"?\""); + writer.write(" currentQueryString=\"?\""); + writer.write(" protocol=\"?\""); + } + } else { + writer.write(" requestProcessingTime=\"?\""); + writer.write(" requestBytesSent=\"?\""); + writer.write(" requestBytesRecieved=\"?\""); + writer.write(" remoteAddr=\"?\""); + writer.write(" virtualHost=\"?\""); + writer.write(" method=\"?\""); + writer.write(" currentUri=\"?\""); + writer.write(" currentQueryString=\"?\""); + writer.write(" protocol=\"?\""); + } + writer.write(" />"); } }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]