public class org.apache.activemq.web.QueueBrowseServlet extends javax.servlet.http.HttpServlet
{
private static org.apache.activemq.util.FactoryFinder factoryFinder;
public void <init>()
{
org.apache.activemq.web.QueueBrowseServlet v;
v := @this: org.apache.activemq.web.QueueBrowseServlet;
specialinvoke v.<javax.servlet.http.HttpServlet: void <init>()>();
return;
}
protected void doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) throws javax.servlet.ServletException, java.io.IOException
{
java.lang.Throwable v;
javax.jms.QueueBrowser v, v;
org.apache.activemq.web.view.MessageRenderer v;
java.util.Enumeration v, v;
javax.servlet.ServletException v, v;
javax.jms.Session v;
javax.servlet.http.HttpServletRequest v;
org.apache.activemq.web.view.XmlMessageRenderer v;
java.lang.String v, v, v;
boolean v;
java.io.PrintWriter v;
javax.servlet.http.HttpServletResponse v;
javax.jms.Queue v;
org.apache.activemq.web.QueueBrowseServlet v;
org.apache.activemq.web.WebClient v;
java.lang.Object v;
v := @this: org.apache.activemq.web.QueueBrowseServlet;
v := @parameter: javax.servlet.http.HttpServletRequest;
v := @parameter: javax.servlet.http.HttpServletResponse;
label:
v = staticinvoke <org.apache.activemq.web.WebClient: org.apache.activemq.web.WebClient getWebClient(javax.servlet.http.HttpServletRequest)>(v);
v = virtualinvoke v.<org.apache.activemq.web.WebClient: javax.jms.Session getSession()>();
v = virtualinvoke v.<org.apache.activemq.web.QueueBrowseServlet: javax.jms.Queue getQueue(javax.servlet.http.HttpServletRequest,javax.jms.Session)>(v, v);
if v != null goto label;
v = new javax.servlet.ServletException;
specialinvoke v.<javax.servlet.ServletException: void <init>(java.lang.String)>("No queue URI specified");
throw v;
label:
v = interfaceinvoke v.<javax.servlet.http.HttpServletRequest: java.lang.String getParameter(java.lang.String)>("msgId");
if v != null goto label;
v = virtualinvoke v.<org.apache.activemq.web.QueueBrowseServlet: org.apache.activemq.web.view.MessageRenderer getMessageRenderer(javax.servlet.http.HttpServletRequest)>(v);
virtualinvoke v.<org.apache.activemq.web.QueueBrowseServlet: void configureRenderer(javax.servlet.http.HttpServletRequest,org.apache.activemq.web.view.MessageRenderer)>(v, v);
v = virtualinvoke v.<org.apache.activemq.web.QueueBrowseServlet: java.lang.String getSelector(javax.servlet.http.HttpServletRequest)>(v);
v = interfaceinvoke v.<javax.jms.Session: javax.jms.QueueBrowser createBrowser(javax.jms.Queue,java.lang.String)>(v, v);
interfaceinvoke v.<org.apache.activemq.web.view.MessageRenderer: void renderMessages(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.jms.QueueBrowser)>(v, v, v);
goto label;
label:
v = new org.apache.activemq.web.view.XmlMessageRenderer;
specialinvoke v.<org.apache.activemq.web.view.XmlMessageRenderer: void <init>()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("JMSMessageID=\'\u0001\'");
v = interfaceinvoke v.<javax.jms.Session: javax.jms.QueueBrowser createBrowser(javax.jms.Queue,java.lang.String)>(v, v);
v = interfaceinvoke v.<javax.jms.QueueBrowser: java.util.Enumeration getEnumeration()>();
v = interfaceinvoke v.<java.util.Enumeration: boolean hasMoreElements()>();
if v != 0 goto label;
interfaceinvoke v.<javax.servlet.http.HttpServletResponse: void sendError(int)>(404);
label:
return;
label:
v = interfaceinvoke v.<javax.jms.QueueBrowser: java.util.Enumeration getEnumeration()>();
v = interfaceinvoke v.<java.util.Enumeration: java.lang.Object nextElement()>();
v = interfaceinvoke v.<javax.servlet.http.HttpServletResponse: java.io.PrintWriter getWriter()>();
virtualinvoke v.<org.apache.activemq.web.view.XmlMessageRenderer: void renderMessage(java.io.PrintWriter,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.jms.QueueBrowser,javax.jms.Message)>(v, v, v, v, v);
virtualinvoke v.<java.io.PrintWriter: void flush()>();
label:
goto label;
label:
v := @caughtexception;
v = new javax.servlet.ServletException;
specialinvoke v.<javax.servlet.ServletException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch javax.jms.JMSException from label to label with label;
catch javax.jms.JMSException from label to label with label;
}
protected org.apache.activemq.web.view.MessageRenderer getMessageRenderer(javax.servlet.http.HttpServletRequest) throws java.io.IOException, javax.servlet.ServletException
{
org.apache.activemq.web.NoSuchViewStyleException v, v, v;
java.lang.IllegalAccessException v;
org.apache.activemq.web.QueueBrowseServlet v;
javax.servlet.http.HttpServletRequest v;
java.lang.InstantiationException v;
org.apache.activemq.util.FactoryFinder v;
java.lang.ClassNotFoundException v;
java.lang.Object v;
java.lang.String v;
v := @this: org.apache.activemq.web.QueueBrowseServlet;
v := @parameter: javax.servlet.http.HttpServletRequest;
v = interfaceinvoke v.<javax.servlet.http.HttpServletRequest: java.lang.String getParameter(java.lang.String)>("view");
if v != null goto label;
v = "simple";
label:
v = <org.apache.activemq.web.QueueBrowseServlet: org.apache.activemq.util.FactoryFinder factoryFinder>;
v = virtualinvoke v.<org.apache.activemq.util.FactoryFinder: java.lang.Object newInstance(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
v = new org.apache.activemq.web.NoSuchViewStyleException;
specialinvoke v.<org.apache.activemq.web.NoSuchViewStyleException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v := @caughtexception;
v = new org.apache.activemq.web.NoSuchViewStyleException;
specialinvoke v.<org.apache.activemq.web.NoSuchViewStyleException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v := @caughtexception;
v = new org.apache.activemq.web.NoSuchViewStyleException;
specialinvoke v.<org.apache.activemq.web.NoSuchViewStyleException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
catch java.lang.IllegalAccessException from label to label with label;
catch java.lang.InstantiationException from label to label with label;
catch java.lang.ClassNotFoundException from label to label with label;
}
protected void configureRenderer(javax.servlet.http.HttpServletRequest, org.apache.activemq.web.view.MessageRenderer)
{
org.apache.activemq.web.view.MessageRenderer v;
java.util.Enumeration v;
java.util.HashMap v;
org.apache.activemq.web.QueueBrowseServlet v;
javax.servlet.http.HttpServletRequest v;
java.lang.Object v;
java.lang.String v;
boolean v;
v := @this: org.apache.activemq.web.QueueBrowseServlet;
v := @parameter: javax.servlet.http.HttpServletRequest;
v := @parameter: org.apache.activemq.web.view.MessageRenderer;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = interfaceinvoke v.<javax.servlet.http.HttpServletRequest: java.util.Enumeration getParameterNames()>();
label:
v = interfaceinvoke v.<java.util.Enumeration: boolean hasMoreElements()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Enumeration: java.lang.Object nextElement()>();
v = interfaceinvoke v.<javax.servlet.http.HttpServletRequest: java.lang.String getParameter(java.lang.String)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
staticinvoke <org.apache.activemq.util.IntrospectionSupport: boolean setProperties(java.lang.Object,java.util.Map)>(v, v);
return;
}
protected java.lang.String getSelector(javax.servlet.http.HttpServletRequest)
{
org.apache.activemq.web.QueueBrowseServlet v;
javax.servlet.http.HttpServletRequest v;
java.lang.String v;
v := @this: org.apache.activemq.web.QueueBrowseServlet;
v := @parameter: javax.servlet.http.HttpServletRequest;
v = interfaceinvoke v.<javax.servlet.http.HttpServletRequest: java.lang.String getParameter(java.lang.String)>("selector");
return v;
}
protected javax.jms.Queue getQueue(javax.servlet.http.HttpServletRequest, javax.jms.Session) throws javax.jms.JMSException
{
javax.jms.Queue v;
org.apache.activemq.web.QueueBrowseServlet v;
javax.jms.Session v;
javax.servlet.http.HttpServletRequest v;
int v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.activemq.web.QueueBrowseServlet;
v := @parameter: javax.servlet.http.HttpServletRequest;
v := @parameter: javax.jms.Session;
v = interfaceinvoke v.<javax.servlet.http.HttpServletRequest: java.lang.String getPathInfo()>();
if v != null goto label;
return null;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("/");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(1);
v = virtualinvoke v.<java.lang.String: int length()>();
if v != 0 goto label;
return null;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String replace(char,char)>(47, 46);
v = interfaceinvoke v.<javax.jms.Session: javax.jms.Queue createQueue(java.lang.String)>(v);
return v;
}
static void <clinit>()
{
org.apache.activemq.util.FactoryFinder v;
v = new org.apache.activemq.util.FactoryFinder;
specialinvoke v.<org.apache.activemq.util.FactoryFinder: void <init>(java.lang.String)>("META-INF/services/org/apache/activemq/web/view/");
<org.apache.activemq.web.QueueBrowseServlet: org.apache.activemq.util.FactoryFinder factoryFinder> = v;
return;
}
}