jruby-activemq 5.5.1-java
Sign up to get free protection for your applications and to get access to all the features.
- data/History.md +6 -0
- data/LICENSE +619 -0
- data/README.md +15 -0
- data/Rakefile +34 -0
- data/apache-activemq-5.5.1/LICENSE +619 -0
- data/apache-activemq-5.5.1/NOTICE +85 -0
- data/apache-activemq-5.5.1/README.txt +63 -0
- data/apache-activemq-5.5.1/WebConsole-README.txt +42 -0
- data/apache-activemq-5.5.1/activemq-all-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/bin/activemq +653 -0
- data/apache-activemq-5.5.1/bin/activemq-admin +155 -0
- data/apache-activemq-5.5.1/bin/linux-x86-32/activemq +543 -0
- data/apache-activemq-5.5.1/bin/linux-x86-32/libwrapper.so +0 -0
- data/apache-activemq-5.5.1/bin/linux-x86-32/wrapper +0 -0
- data/apache-activemq-5.5.1/bin/linux-x86-32/wrapper.conf +139 -0
- data/apache-activemq-5.5.1/bin/linux-x86-64/activemq +543 -0
- data/apache-activemq-5.5.1/bin/linux-x86-64/libwrapper.so +0 -0
- data/apache-activemq-5.5.1/bin/linux-x86-64/wrapper +0 -0
- data/apache-activemq-5.5.1/bin/linux-x86-64/wrapper.conf +139 -0
- data/apache-activemq-5.5.1/bin/macosx/activemq +537 -0
- data/apache-activemq-5.5.1/bin/macosx/libwrapper.jnilib +0 -0
- data/apache-activemq-5.5.1/bin/macosx/wrapper +0 -0
- data/apache-activemq-5.5.1/bin/macosx/wrapper.conf +139 -0
- data/apache-activemq-5.5.1/bin/run.jar +0 -0
- data/apache-activemq-5.5.1/bin/wrapper.jar +0 -0
- data/apache-activemq-5.5.1/conf/activemq-command.xml +52 -0
- data/apache-activemq-5.5.1/conf/activemq-demo.xml +289 -0
- data/apache-activemq-5.5.1/conf/activemq-dynamic-network-broker1.xml +108 -0
- data/apache-activemq-5.5.1/conf/activemq-dynamic-network-broker2.xml +109 -0
- data/apache-activemq-5.5.1/conf/activemq-jdbc.xml +98 -0
- data/apache-activemq-5.5.1/conf/activemq-scalability.xml +77 -0
- data/apache-activemq-5.5.1/conf/activemq-security.xml +132 -0
- data/apache-activemq-5.5.1/conf/activemq-specjms.xml +118 -0
- data/apache-activemq-5.5.1/conf/activemq-static-network-broker1.xml +100 -0
- data/apache-activemq-5.5.1/conf/activemq-static-network-broker2.xml +100 -0
- data/apache-activemq-5.5.1/conf/activemq-stomp.xml +133 -0
- data/apache-activemq-5.5.1/conf/activemq-throughput.xml +82 -0
- data/apache-activemq-5.5.1/conf/activemq.xml +136 -0
- data/apache-activemq-5.5.1/conf/broker-localhost.cert +0 -0
- data/apache-activemq-5.5.1/conf/broker.ks +0 -0
- data/apache-activemq-5.5.1/conf/broker.ts +0 -0
- data/apache-activemq-5.5.1/conf/camel.xml +66 -0
- data/apache-activemq-5.5.1/conf/client.ks +0 -0
- data/apache-activemq-5.5.1/conf/client.ts +0 -0
- data/apache-activemq-5.5.1/conf/credentials-enc.properties +22 -0
- data/apache-activemq-5.5.1/conf/credentials.properties +22 -0
- data/apache-activemq-5.5.1/conf/jetty-realm.properties +20 -0
- data/apache-activemq-5.5.1/conf/jetty.xml +112 -0
- data/apache-activemq-5.5.1/conf/jmx.access +18 -0
- data/apache-activemq-5.5.1/conf/jmx.password +18 -0
- data/apache-activemq-5.5.1/conf/log4j.properties +75 -0
- data/apache-activemq-5.5.1/conf/logging.properties +25 -0
- data/apache-activemq-5.5.1/data/activemq.log +0 -0
- data/apache-activemq-5.5.1/docs/index.html +22 -0
- data/apache-activemq-5.5.1/example/build.xml +317 -0
- data/apache-activemq-5.5.1/example/conf/activemq.xml +41 -0
- data/apache-activemq-5.5.1/example/conf/log4j.properties +39 -0
- data/apache-activemq-5.5.1/example/conf/resin-web.xml +35 -0
- data/apache-activemq-5.5.1/example/conf/web.xml +40 -0
- data/apache-activemq-5.5.1/example/perfharness/perfharness-activemq.sh +49 -0
- data/apache-activemq-5.5.1/example/ruby/README.txt +27 -0
- data/apache-activemq-5.5.1/example/ruby/catstomp.rb +49 -0
- data/apache-activemq-5.5.1/example/ruby/listener.rb +51 -0
- data/apache-activemq-5.5.1/example/ruby/publisher.rb +67 -0
- data/apache-activemq-5.5.1/example/ruby/stompcat.rb +50 -0
- data/apache-activemq-5.5.1/example/src/CommandLineSupport.java +120 -0
- data/apache-activemq-5.5.1/example/src/ConsumerTool.java +353 -0
- data/apache-activemq-5.5.1/example/src/EmbeddedBroker.java +41 -0
- data/apache-activemq-5.5.1/example/src/Log4jJMSAppenderExample.java +70 -0
- data/apache-activemq-5.5.1/example/src/ProducerAndConsumerTool.java +51 -0
- data/apache-activemq-5.5.1/example/src/ProducerTool.java +247 -0
- data/apache-activemq-5.5.1/example/src/RequesterTool.java +257 -0
- data/apache-activemq-5.5.1/example/src/StompExample.java +59 -0
- data/apache-activemq-5.5.1/example/src/TopicListener.java +118 -0
- data/apache-activemq-5.5.1/example/src/TopicPublisher.java +205 -0
- data/apache-activemq-5.5.1/example/src/jndi.properties +17 -0
- data/apache-activemq-5.5.1/example/src/log4j-jms.properties +31 -0
- data/apache-activemq-5.5.1/example/transactions/README.txt +40 -0
- data/apache-activemq-5.5.1/example/transactions/build.xml +113 -0
- data/apache-activemq-5.5.1/example/transactions/src/Retailer.java +107 -0
- data/apache-activemq-5.5.1/example/transactions/src/Supplier.java +135 -0
- data/apache-activemq-5.5.1/example/transactions/src/TransactionsDemo.java +47 -0
- data/apache-activemq-5.5.1/example/transactions/src/Vendor.java +302 -0
- data/apache-activemq-5.5.1/lib/a.sh +3 -0
- data/apache-activemq-5.5.1/lib/activation-1.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/activemq-camel-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/activemq-console-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/activemq-core-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/activemq-jaas-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/activemq-protobuf-1.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/activemq-rar.txt +20 -0
- data/apache-activemq-5.5.1/lib/activemq-web-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/camel-core-2.7.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/camel-jetty-2.7.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/camel-jms-2.7.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/camel-spring-2.7.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/geronimo-j2ee-management_1.1_spec-1.0.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/geronimo-jms_1.1_spec-1.1.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/geronimo-jta_1.0.1B_spec-1.0.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/jaxb-api-2.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/jaxb-impl-2.1.6.jar +0 -0
- data/apache-activemq-5.5.1/lib/jcl-over-slf4j-1.5.11.jar +0 -0
- data/apache-activemq-5.5.1/lib/kahadb-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/activeio-core-3.1.2.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/activemq-jmdns_1.0-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/activemq-optional-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/activemq-pool-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/activemq-spring-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/activemq-xmpp-5.5.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/commons-beanutils-1.6.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/commons-codec-1.2.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/commons-collections-3.2.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/commons-dbcp-1.2.2.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/commons-httpclient-3.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/commons-lang-2.4.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/commons-net-2.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/commons-pool-1.5.4.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/geronimo-j2ee-connector_1.5_spec-2.0.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/jasypt-1.7.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/jettison-1.2.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/josql-1.5.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/log4j-1.2.14.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/slf4j-log4j12-1.5.11.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-aop-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-asm-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-beans-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-context-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-core-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-expression-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-jms-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-oxm-tiger-1.5.8.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/spring-tx-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/stax2-api-3.0.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/velocity-1.6.2.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/woodstox-core-asl-4.0.7.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/xbean-spring-3.7.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/xpp3-1.1.4c.jar +0 -0
- data/apache-activemq-5.5.1/lib/optional/xstream-1.3.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/slf4j-api-1.5.11.jar +0 -0
- data/apache-activemq-5.5.1/lib/stax-1.2.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/stax-api-1.0.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/commons-management-1.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/core-3.1.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/geronimo-servlet_2.5_spec-1.2.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/jdom-1.0.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/jetty-all-server-7.1.6.v20100715.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/jetty-websocket-7.1.6.v20100715.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/jsp-2.1-glassfish-2.1.v20100127.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/jsp-api-2.1-glassfish-2.1.v20100127.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/rome-0.8.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/sitemesh-2.2.1.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/spring-web-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/lib/web/spring-webmvc-3.0.3.RELEASE.jar +0 -0
- data/apache-activemq-5.5.1/user-guide.html +119 -0
- data/apache-activemq-5.5.1/webapps/admin/404.html +137 -0
- data/apache-activemq-5.5.1/webapps/admin/500.html +138 -0
- data/apache-activemq-5.5.1/webapps/admin/META-INF/LICENSE +1026 -0
- data/apache-activemq-5.5.1/webapps/admin/META-INF/NOTICE +107 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/WebConsoleStarter.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/CopyMessage.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/CreateDestination.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/CreateSubscriber.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/DeleteDestination.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/DeleteJob.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/DeleteMessage.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/DeleteSubscriber.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/MoveMessage.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/PurgeDestination.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/controller/SendMessage.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/filter/ApplicationContextFilter$1.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/filter/ApplicationContextFilter$2.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/filter/ApplicationContextFilter.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/classes/org/apache/activemq/web/handler/BindingBeanNameUrlHandlerMapping.class +0 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/decorators.xml +30 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/dispatcher-servlet.xml +62 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/jspf/headertags.jspf +21 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/jspf/old.jspf +21 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/form/checkbox.tag +18 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/form/forEachMapEntry.tag +29 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/form/option.tag +20 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/form/short.tag +29 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/form/text.tag +30 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/form/tooltip.tag +29 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/form/uri.tag +18 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/jms/forEachConnection.tag +35 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/jms/forEachMessage.tag +34 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/jms/formatTimestamp.tag +29 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/tags/jms/persistent.tag +27 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/web.xml +187 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/webconsole-default.xml +26 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/webconsole-embedded.xml +45 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/webconsole-invm.xml +41 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/webconsole-jndi.xml +39 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/webconsole-properties.xml +39 -0
- data/apache-activemq-5.5.1/webapps/admin/WEB-INF/webconsole-query.xml +25 -0
- data/apache-activemq-5.5.1/webapps/admin/browse.jsp +64 -0
- data/apache-activemq-5.5.1/webapps/admin/connection.jsp +138 -0
- data/apache-activemq-5.5.1/webapps/admin/connections.jsp +85 -0
- data/apache-activemq-5.5.1/webapps/admin/decorators/main.jsp +165 -0
- data/apache-activemq-5.5.1/webapps/admin/decorators/panel.jsp +31 -0
- data/apache-activemq-5.5.1/webapps/admin/decorators/printable.jsp +31 -0
- data/apache-activemq-5.5.1/webapps/admin/graph.jsp +67 -0
- data/apache-activemq-5.5.1/webapps/admin/images/activemq-logo.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/asf-logo.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/big-bullet.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/black-footer-bottom.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/black-footer-left.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/black-footer-right.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/bottom-red-bar.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/checker-bg.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/content-left.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/content-right.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/feed_atom.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/feed_rss.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/left-box-bottom.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/left-box-right.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/left-box-top.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/oval-arrow.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/right-box-bottom.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/right-box-left.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/right-box-top.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/small-bullet-gray.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/small-bullet-red.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/spacer.gif +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/top-red-bar.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/white-header-left.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/white-header-right.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/images/white-header-top.png +0 -0
- data/apache-activemq-5.5.1/webapps/admin/index.jsp +65 -0
- data/apache-activemq-5.5.1/webapps/admin/js/common.js +121 -0
- data/apache-activemq-5.5.1/webapps/admin/js/css.js +145 -0
- data/apache-activemq-5.5.1/webapps/admin/js/mochi/MochiKit.js +4804 -0
- data/apache-activemq-5.5.1/webapps/admin/js/mochi/__package__.js +14 -0
- data/apache-activemq-5.5.1/webapps/admin/js/plotkit/Base.js +332 -0
- data/apache-activemq-5.5.1/webapps/admin/js/plotkit/Canvas.js +707 -0
- data/apache-activemq-5.5.1/webapps/admin/js/plotkit/Layout.js +588 -0
- data/apache-activemq-5.5.1/webapps/admin/js/plotkit/SVG.js +677 -0
- data/apache-activemq-5.5.1/webapps/admin/js/plotkit/SweetCanvas.js +281 -0
- data/apache-activemq-5.5.1/webapps/admin/js/plotkit/SweetSVG.js +196 -0
- data/apache-activemq-5.5.1/webapps/admin/js/plotkit/dummy.svg +15 -0
- data/apache-activemq-5.5.1/webapps/admin/js/plotkit/iecanvas.htc +389 -0
- data/apache-activemq-5.5.1/webapps/admin/js/prettify.js +1424 -0
- data/apache-activemq-5.5.1/webapps/admin/js/standardista-table-sorting.js +434 -0
- data/apache-activemq-5.5.1/webapps/admin/message.jsp +185 -0
- data/apache-activemq-5.5.1/webapps/admin/network.jsp +52 -0
- data/apache-activemq-5.5.1/webapps/admin/queueConsumers.jsp +79 -0
- data/apache-activemq-5.5.1/webapps/admin/queueGraph.jsp +68 -0
- data/apache-activemq-5.5.1/webapps/admin/queues.jsp +78 -0
- data/apache-activemq-5.5.1/webapps/admin/scheduled.jsp +67 -0
- data/apache-activemq-5.5.1/webapps/admin/send.jsp +173 -0
- data/apache-activemq-5.5.1/webapps/admin/styles/prettify.css +44 -0
- data/apache-activemq-5.5.1/webapps/admin/styles/site.css +206 -0
- data/apache-activemq-5.5.1/webapps/admin/styles/sorttable.css +70 -0
- data/apache-activemq-5.5.1/webapps/admin/styles/type-settings.css +177 -0
- data/apache-activemq-5.5.1/webapps/admin/subscribers.jsp +158 -0
- data/apache-activemq-5.5.1/webapps/admin/test/dummy.jsp +52 -0
- data/apache-activemq-5.5.1/webapps/admin/test/index.jsp +84 -0
- data/apache-activemq-5.5.1/webapps/admin/test/systemProperties.jsp +53 -0
- data/apache-activemq-5.5.1/webapps/admin/topics.jsp +66 -0
- data/apache-activemq-5.5.1/webapps/admin/xml/queues.jsp +34 -0
- data/apache-activemq-5.5.1/webapps/admin/xml/topics.jsp +29 -0
- data/apache-activemq-5.5.1/webapps/demo/META-INF/LICENSE +494 -0
- data/apache-activemq-5.5.1/webapps/demo/META-INF/NOTICE +82 -0
- data/apache-activemq-5.5.1/webapps/demo/WEB-INF/web.xml +111 -0
- data/apache-activemq-5.5.1/webapps/demo/chat.css +76 -0
- data/apache-activemq-5.5.1/webapps/demo/chat.html +219 -0
- data/apache-activemq-5.5.1/webapps/demo/index.html +181 -0
- data/apache-activemq-5.5.1/webapps/demo/js/amq.js +307 -0
- data/apache-activemq-5.5.1/webapps/demo/js/amq_dojo_adapter.js +84 -0
- data/apache-activemq-5.5.1/webapps/demo/js/amq_jquery_adapter.js +88 -0
- data/apache-activemq-5.5.1/webapps/demo/js/amq_prototype_adapter.js +84 -0
- data/apache-activemq-5.5.1/webapps/demo/js/chat.js +209 -0
- data/apache-activemq-5.5.1/webapps/demo/js/dojo.js +16 -0
- data/apache-activemq-5.5.1/webapps/demo/js/jquery-1.4.2.min.js +154 -0
- data/apache-activemq-5.5.1/webapps/demo/js/prototype.js +4874 -0
- data/apache-activemq-5.5.1/webapps/demo/portfolio/portfolio.html +87 -0
- data/apache-activemq-5.5.1/webapps/demo/portfolio/portfolio.js +91 -0
- data/apache-activemq-5.5.1/webapps/demo/sandbox/index.html +31 -0
- data/apache-activemq-5.5.1/webapps/demo/sandbox/portfolio.html +93 -0
- data/apache-activemq-5.5.1/webapps/demo/sandbox/portfolio.js +49 -0
- data/apache-activemq-5.5.1/webapps/demo/sandbox/util.js +52 -0
- data/apache-activemq-5.5.1/webapps/demo/sandbox/webmq.js +149 -0
- data/apache-activemq-5.5.1/webapps/demo/send.html +51 -0
- data/apache-activemq-5.5.1/webapps/demo/style.css +440 -0
- data/apache-activemq-5.5.1/webapps/demo/test/amq_test.html +311 -0
- data/apache-activemq-5.5.1/webapps/demo/test/assets/README +4 -0
- data/apache-activemq-5.5.1/webapps/demo/test/assets/jsunittest.js +1017 -0
- data/apache-activemq-5.5.1/webapps/demo/test/assets/unittest.css +54 -0
- data/apache-activemq-5.5.1/webapps/favicon.ico +0 -0
- data/apache-activemq-5.5.1/webapps/fileserver/META-INF/LICENSE +203 -0
- data/apache-activemq-5.5.1/webapps/fileserver/META-INF/NOTICE +5 -0
- data/apache-activemq-5.5.1/webapps/fileserver/WEB-INF/classes/org/apache/activemq/util/FilenameGuardFilter$GuardedHttpServletRequest.class +0 -0
- data/apache-activemq-5.5.1/webapps/fileserver/WEB-INF/classes/org/apache/activemq/util/FilenameGuardFilter.class +0 -0
- data/apache-activemq-5.5.1/webapps/fileserver/WEB-INF/classes/org/apache/activemq/util/IOHelper.class +0 -0
- data/apache-activemq-5.5.1/webapps/fileserver/WEB-INF/classes/org/apache/activemq/util/RestFilter.class +0 -0
- data/apache-activemq-5.5.1/webapps/fileserver/WEB-INF/web.xml +56 -0
- data/apache-activemq-5.5.1/webapps/fileserver/index.html +30 -0
- data/apache-activemq-5.5.1/webapps/index.html +145 -0
- data/apache-activemq-5.5.1/webapps/styles/site.css +206 -0
- data/apache-activemq-5.5.1/webapps/styles/type-settings.css +177 -0
- data/lib/activemq.rb +11 -0
- metadata +382 -0
@@ -0,0 +1,87 @@
|
|
1
|
+
<!--
|
2
|
+
Licensed to the Apache Software Foundation (ASF) under one or more
|
3
|
+
contributor license agreements. See the NOTICE file distributed with
|
4
|
+
this work for additional information regarding copyright ownership.
|
5
|
+
The ASF licenses this file to You under the Apache License, Version 2.0
|
6
|
+
(the "License"); you may not use this file except in compliance with
|
7
|
+
the License. You may obtain a copy of the License at
|
8
|
+
|
9
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
|
11
|
+
Unless required by applicable law or agreed to in writing, software
|
12
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
See the License for the specific language governing permissions and
|
15
|
+
limitations under the License.
|
16
|
+
-->
|
17
|
+
<html>
|
18
|
+
<head>
|
19
|
+
<title>My Portfolio</title>
|
20
|
+
<link rel="stylesheet" type="text/css" href="../style.css"></link>
|
21
|
+
<script type="text/javascript" src="../amq/amq.js"></script>
|
22
|
+
<script type="text/javascript">amq.uri='../amq';</script>
|
23
|
+
<script type="text/javascript" src="portfolio.js"></script>
|
24
|
+
<style>
|
25
|
+
.stocks { border: 1 solid black; }
|
26
|
+
.stocks td, .stocks th { width: 200; text-align: right; }
|
27
|
+
.stocks .up { background-color: #9f9; }
|
28
|
+
.stocks .down { background-color: #f99; }
|
29
|
+
</style>
|
30
|
+
</head>
|
31
|
+
<body>
|
32
|
+
|
33
|
+
<h1>My Portfolio</h1>
|
34
|
+
|
35
|
+
<p>This example displays an example stock portfolio. In a real system
|
36
|
+
this page would be generated dynamically based on the users current
|
37
|
+
stock portfolio</p>
|
38
|
+
|
39
|
+
<table class="stocks">
|
40
|
+
<tr>
|
41
|
+
<th>Stock</th>
|
42
|
+
<th>Description</th>
|
43
|
+
<th>Amount</th>
|
44
|
+
<th>Price</th>
|
45
|
+
<th>Value</th>
|
46
|
+
<th>Cost</th>
|
47
|
+
<th>P & L</th>
|
48
|
+
</tr>
|
49
|
+
<tr id="IBMW">
|
50
|
+
<td>IBMW</td>
|
51
|
+
<td>IBM Stock</td>
|
52
|
+
<td id="amount">1000</td>
|
53
|
+
<td id="price"></td>
|
54
|
+
<td id="value"></td>
|
55
|
+
<td id="cost">19000</td>
|
56
|
+
<td id="pl"></td>
|
57
|
+
</tr>
|
58
|
+
<tr id="MSFT">
|
59
|
+
<td>MSFT</td>
|
60
|
+
<td>Microsoft</td>
|
61
|
+
<td id="amount">6000</td>
|
62
|
+
<td id="price"></td>
|
63
|
+
<td id="value"></td>
|
64
|
+
<td id="cost">22000</td>
|
65
|
+
<td id="pl"></td>
|
66
|
+
</tr>
|
67
|
+
<tr id="BEAS">
|
68
|
+
<td>BEAS</td>
|
69
|
+
<td>BEA Stock</td>
|
70
|
+
<td id="amount">1100</td>
|
71
|
+
<td id="price"></td>
|
72
|
+
<td id="value"></td>
|
73
|
+
<td id="cost">12342</td>
|
74
|
+
<td id="pl"></td>
|
75
|
+
</tr>
|
76
|
+
<tr id="SUNW">
|
77
|
+
<td>SUNW</td>
|
78
|
+
<td>Sun Microsystems Inc</td>
|
79
|
+
<td id="amount">3000</td>
|
80
|
+
<td id="price"></td>
|
81
|
+
<td id="value"></td>
|
82
|
+
<td id="cost">7700</td>
|
83
|
+
<td id="pl"></td>
|
84
|
+
</tr>
|
85
|
+
</table>
|
86
|
+
</body>
|
87
|
+
</html>
|
@@ -0,0 +1,91 @@
|
|
1
|
+
/**
|
2
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
3
|
+
* contributor license agreements. See the NOTICE file distributed with
|
4
|
+
* this work for additional information regarding copyright ownership.
|
5
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
6
|
+
* (the "License"); you may not use this file except in compliance with
|
7
|
+
* the License. You may obtain a copy of the License at
|
8
|
+
*
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
*
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
* See the License for the specific language governing permissions and
|
15
|
+
* limitations under the License.
|
16
|
+
*/
|
17
|
+
|
18
|
+
var priceHandler =
|
19
|
+
{
|
20
|
+
_price: function(message)
|
21
|
+
{
|
22
|
+
if (message != null) {
|
23
|
+
|
24
|
+
var price = parseFloat(message.getAttribute('bid'))
|
25
|
+
var symbol = message.getAttribute('stock')
|
26
|
+
var movement = message.getAttribute('movement')
|
27
|
+
if (movement == null) {
|
28
|
+
movement = 'up'
|
29
|
+
}
|
30
|
+
|
31
|
+
var row = document.getElementById(symbol)
|
32
|
+
if (row) {
|
33
|
+
// perform portfolio calculations
|
34
|
+
var value = asFloat(find(row, 'amount')) * price
|
35
|
+
var pl = value - asFloat(find(row, 'cost'))
|
36
|
+
|
37
|
+
// now lets update the HTML DOM
|
38
|
+
find(row, 'price').innerHTML = fixedDigits(price, 2)
|
39
|
+
find(row, 'value').innerHTML = fixedDigits(value, 2)
|
40
|
+
find(row, 'pl').innerHTML = fixedDigits(pl, 2)
|
41
|
+
find(row, 'price').className = movement
|
42
|
+
find(row, 'pl').className = pl >= 0 ? 'up' : 'down'
|
43
|
+
}
|
44
|
+
}
|
45
|
+
}
|
46
|
+
};
|
47
|
+
|
48
|
+
|
49
|
+
function portfolioPoll(first)
|
50
|
+
{
|
51
|
+
if (first)
|
52
|
+
{
|
53
|
+
amq.addListener('stocks','topic://STOCKS.*',priceHandler._price);
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
amq.addPollHandler(portfolioPoll);
|
58
|
+
|
59
|
+
|
60
|
+
/// -----------------
|
61
|
+
// Original code by Joe Walnes
|
62
|
+
// -----------------
|
63
|
+
|
64
|
+
/*** Convenience methods, added as mixins to standard classes (object prototypes) ***/
|
65
|
+
|
66
|
+
/**
|
67
|
+
* Return number as fixed number of digits.
|
68
|
+
*/
|
69
|
+
function fixedDigits(t, digits) {
|
70
|
+
return (t.toFixed) ? t.toFixed(digits) : this
|
71
|
+
}
|
72
|
+
|
73
|
+
/**
|
74
|
+
* Find direct child of an element, by id.
|
75
|
+
*/
|
76
|
+
function find(t, id) {
|
77
|
+
for (i = 0; i < t.childNodes.length; i++) {
|
78
|
+
var child = t.childNodes[i]
|
79
|
+
if (child.id == id) {
|
80
|
+
return child
|
81
|
+
}
|
82
|
+
}
|
83
|
+
return null
|
84
|
+
}
|
85
|
+
|
86
|
+
/**
|
87
|
+
* Return the text contents of an element as a floating point number.
|
88
|
+
*/
|
89
|
+
function asFloat(t) {
|
90
|
+
return parseFloat(t.innerHTML)
|
91
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
<!--
|
2
|
+
Licensed to the Apache Software Foundation (ASF) under one or more
|
3
|
+
contributor license agreements. See the NOTICE file distributed with
|
4
|
+
this work for additional information regarding copyright ownership.
|
5
|
+
The ASF licenses this file to You under the Apache License, Version 2.0
|
6
|
+
(the "License"); you may not use this file except in compliance with
|
7
|
+
the License. You may obtain a copy of the License at
|
8
|
+
|
9
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
|
11
|
+
Unless required by applicable law or agreed to in writing, software
|
12
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
See the License for the specific language governing permissions and
|
15
|
+
limitations under the License.
|
16
|
+
-->
|
17
|
+
<html>
|
18
|
+
<head>
|
19
|
+
<title>Sandbox</title>
|
20
|
+
<link rel="stylesheet" type="text/css" href="../style.css"></link>
|
21
|
+
</head>
|
22
|
+
<body>
|
23
|
+
|
24
|
+
<h1>Sandbox</h1>
|
25
|
+
|
26
|
+
<p>This area contains the old HTML and JavaScript demos. We've now
|
27
|
+
migrated to <a href="http://openrico.org/">OpenRico</a> instead to reuse
|
28
|
+
an off the shelf Ajax library.</p>
|
29
|
+
|
30
|
+
</body>
|
31
|
+
</html>
|
@@ -0,0 +1,93 @@
|
|
1
|
+
<!--
|
2
|
+
Licensed to the Apache Software Foundation (ASF) under one or more
|
3
|
+
contributor license agreements. See the NOTICE file distributed with
|
4
|
+
this work for additional information regarding copyright ownership.
|
5
|
+
The ASF licenses this file to You under the Apache License, Version 2.0
|
6
|
+
(the "License"); you may not use this file except in compliance with
|
7
|
+
the License. You may obtain a copy of the License at
|
8
|
+
|
9
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
|
11
|
+
Unless required by applicable law or agreed to in writing, software
|
12
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
See the License for the specific language governing permissions and
|
15
|
+
limitations under the License.
|
16
|
+
-->
|
17
|
+
<html>
|
18
|
+
<head>
|
19
|
+
<title>My Portfolio</title>
|
20
|
+
<link rel="stylesheet" href="style.css" type="text/css">
|
21
|
+
<style>
|
22
|
+
.stocks { border: 1 solid black; }
|
23
|
+
.stocks td, .stocks th { width: 200; text-align: right; }
|
24
|
+
.stocks .up { background-color: #9f9; }
|
25
|
+
.stocks .down { background-color: #f99; }
|
26
|
+
</style>
|
27
|
+
</head>
|
28
|
+
<body onload="subscribe()">
|
29
|
+
|
30
|
+
<script src="prototype.js" language="JavaScript1.2"></script>
|
31
|
+
<script src="portfolio2.js" language="JavaScript1.2"></script>
|
32
|
+
|
33
|
+
<h1>My Portfolio</h1>
|
34
|
+
|
35
|
+
<p>
|
36
|
+
This example displays an example stock portfolio.
|
37
|
+
In a real system this page would be generated dynamically based on the
|
38
|
+
users current stock portfolio
|
39
|
+
</p>
|
40
|
+
|
41
|
+
<table class="stocks">
|
42
|
+
<tr>
|
43
|
+
<th>Stock</th>
|
44
|
+
<th>Description</th>
|
45
|
+
<th>Amount</th>
|
46
|
+
<th>Price</th>
|
47
|
+
<th>Value</th>
|
48
|
+
<th>Cost</th>
|
49
|
+
<th>P & L</th>
|
50
|
+
</tr>
|
51
|
+
<tr id="IBMW">
|
52
|
+
<td>IBMW</td>
|
53
|
+
<td>IBM Stock</td>
|
54
|
+
<td id="amount">1000</td>
|
55
|
+
<td id="price"></td>
|
56
|
+
<td id="value"></td>
|
57
|
+
<td id="cost">19000</td>
|
58
|
+
<td id="pl"></td>
|
59
|
+
</tr>
|
60
|
+
<tr id="MSFT">
|
61
|
+
<td>MSFT</td>
|
62
|
+
<td>Microsoft</td>
|
63
|
+
<td id="amount">6000</td>
|
64
|
+
<td id="price"></td>
|
65
|
+
<td id="value"></td>
|
66
|
+
<td id="cost">22000</td>
|
67
|
+
<td id="pl"></td>
|
68
|
+
</tr>
|
69
|
+
<tr id="BEAS">
|
70
|
+
<td>BEAS</td>
|
71
|
+
<td>BEA Stock</td>
|
72
|
+
<td id="amount">1100</td>
|
73
|
+
<td id="price"></td>
|
74
|
+
<td id="value"></td>
|
75
|
+
<td id="cost">12342</td>
|
76
|
+
<td id="pl"></td>
|
77
|
+
</tr>
|
78
|
+
<tr id="SUNW">
|
79
|
+
<td>SUNW</td>
|
80
|
+
<td>Sun Microsystems Inc</td>
|
81
|
+
<td id="amount">3000</td>
|
82
|
+
<td id="price"></td>
|
83
|
+
<td id="value"></td>
|
84
|
+
<td id="cost">7700</td>
|
85
|
+
<td id="pl"></td>
|
86
|
+
</tr>
|
87
|
+
</table>
|
88
|
+
|
89
|
+
<div id="stuff"></div>
|
90
|
+
|
91
|
+
|
92
|
+
</body>
|
93
|
+
</html>
|
@@ -0,0 +1,49 @@
|
|
1
|
+
/**
|
2
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
3
|
+
* contributor license agreements. See the NOTICE file distributed with
|
4
|
+
* this work for additional information regarding copyright ownership.
|
5
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
6
|
+
* (the "License"); you may not use this file except in compliance with
|
7
|
+
* the License. You may obtain a copy of the License at
|
8
|
+
*
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
*
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
* See the License for the specific language governing permissions and
|
15
|
+
* limitations under the License.
|
16
|
+
*/
|
17
|
+
|
18
|
+
// updates the portfolio row for a given message and symbol
|
19
|
+
function updatePortfolioRow(message, destination) {
|
20
|
+
|
21
|
+
var priceMessage = message.documentElement
|
22
|
+
|
23
|
+
var price = parseFloat(priceMessage.getAttribute('bid'))
|
24
|
+
var symbol = priceMessage.getAttribute('stock')
|
25
|
+
var movement = priceMessage.getAttribute('movement')
|
26
|
+
if (movement == null) {
|
27
|
+
movement = 'up'
|
28
|
+
}
|
29
|
+
|
30
|
+
var row = document.getElementById(symbol)
|
31
|
+
|
32
|
+
// perform portfolio calculations
|
33
|
+
var value = asFloat(find(row, 'amount')) * price
|
34
|
+
var pl = value - asFloat(find(row, 'cost'))
|
35
|
+
|
36
|
+
// now lets update the HTML DOM
|
37
|
+
find(row, 'price').innerHTML = fixedDigits(price, 2)
|
38
|
+
find(row, 'value').innerHTML = fixedDigits(value, 2)
|
39
|
+
find(row, 'pl').innerHTML = fixedDigits(pl, 2)
|
40
|
+
find(row, 'price').className = movement
|
41
|
+
find(row, 'pl').className = pl >= 0 ? 'up' : 'down'
|
42
|
+
}
|
43
|
+
|
44
|
+
var connection = new Connection("jms/STOCKS/*")
|
45
|
+
|
46
|
+
function subscribe() {
|
47
|
+
connection.addMessageListener(/^STOCKS\..*$/, updatePortfolioRow)
|
48
|
+
}
|
49
|
+
|
@@ -0,0 +1,52 @@
|
|
1
|
+
/**
|
2
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
3
|
+
* contributor license agreements. See the NOTICE file distributed with
|
4
|
+
* this work for additional information regarding copyright ownership.
|
5
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
6
|
+
* (the "License"); you may not use this file except in compliance with
|
7
|
+
* the License. You may obtain a copy of the License at
|
8
|
+
*
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
*
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
* See the License for the specific language governing permissions and
|
15
|
+
* limitations under the License.
|
16
|
+
*/
|
17
|
+
|
18
|
+
/// -----------------
|
19
|
+
// Original code by Joe Walnes
|
20
|
+
// -----------------
|
21
|
+
|
22
|
+
/*** Convenience methods, added as mixins to standard classes (object prototypes) ***/
|
23
|
+
|
24
|
+
/**
|
25
|
+
* Return number as fixed number of digits.
|
26
|
+
*/
|
27
|
+
//Number.prototype.fixedDigits = function(digits) {
|
28
|
+
function fixedDigits(t, digits) {
|
29
|
+
return (t.toFixed) ? t.toFixed(digits) : this
|
30
|
+
}
|
31
|
+
|
32
|
+
/**
|
33
|
+
* Find direct child of an element, by id.
|
34
|
+
*/
|
35
|
+
// Element.prototype.find = function(id) {
|
36
|
+
function find(t, id) {
|
37
|
+
for (i = 0; i < t.childNodes.length; i++) {
|
38
|
+
var child = t.childNodes[i]
|
39
|
+
if (child.id == id) {
|
40
|
+
return child
|
41
|
+
}
|
42
|
+
}
|
43
|
+
return null
|
44
|
+
}
|
45
|
+
|
46
|
+
/**
|
47
|
+
* Return the text contents of an element as a floating point number.
|
48
|
+
*/
|
49
|
+
//Element.prototype.asFloat = function() {
|
50
|
+
function asFloat(t) {
|
51
|
+
return parseFloat(t.innerHTML)
|
52
|
+
}
|
@@ -0,0 +1,149 @@
|
|
1
|
+
/**
|
2
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
3
|
+
* contributor license agreements. See the NOTICE file distributed with
|
4
|
+
* this work for additional information regarding copyright ownership.
|
5
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
6
|
+
* (the "License"); you may not use this file except in compliance with
|
7
|
+
* the License. You may obtain a copy of the License at
|
8
|
+
*
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
*
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
* See the License for the specific language governing permissions and
|
15
|
+
* limitations under the License.
|
16
|
+
*/
|
17
|
+
|
18
|
+
// -----------------
|
19
|
+
// Original code by Joe Walnes
|
20
|
+
// -----------------
|
21
|
+
|
22
|
+
function Connection(webmqUrl, id) {
|
23
|
+
this.messageListeners = new Array()
|
24
|
+
this.webmqUrl = webmqUrl
|
25
|
+
if (id == null) {
|
26
|
+
// TODO use secure random id generation
|
27
|
+
id = Math.round(Math.random() * 100000000)
|
28
|
+
}
|
29
|
+
this.id = id
|
30
|
+
// TODO don't start anything until document has finished loading
|
31
|
+
var http = this.createHttpControl()
|
32
|
+
this.getNextMessageAndLoop(webmqUrl, id, http)
|
33
|
+
}
|
34
|
+
|
35
|
+
Connection.prototype.getNextMessageAndLoop = function(webmqUrl, id, http) {
|
36
|
+
http.open("GET", webmqUrl + "?id=" + id + "&xml=true", true)
|
37
|
+
var connection = this
|
38
|
+
http.onreadystatechange = function() {
|
39
|
+
if (http.readyState == 4) {
|
40
|
+
var ok
|
41
|
+
try {
|
42
|
+
ok = http.status && http.status == 200
|
43
|
+
}
|
44
|
+
catch (e) {
|
45
|
+
ok = false // sometimes accessing the http.status fields causes errors in firefox. dunno why. -joe
|
46
|
+
}
|
47
|
+
if (ok) {
|
48
|
+
connection.processIncomingMessage(http)
|
49
|
+
}
|
50
|
+
// why do we have to create a new instance?
|
51
|
+
// this is not required on firefox but is on mozilla
|
52
|
+
//http.abort()
|
53
|
+
http = connection.createHttpControl()
|
54
|
+
connection.getNextMessageAndLoop(webmqUrl, id, http)
|
55
|
+
}
|
56
|
+
}
|
57
|
+
http.send(null)
|
58
|
+
}
|
59
|
+
|
60
|
+
Connection.prototype.sendMessage = function(destination, message) {
|
61
|
+
// TODO should post via body rather than URL
|
62
|
+
// TODO specify destination in message
|
63
|
+
var http = this.createHttpControl()
|
64
|
+
http.open("POST", this.webmqUrl + "?id=" + this.id + "&body=" + message, true)
|
65
|
+
http.send(null)
|
66
|
+
}
|
67
|
+
|
68
|
+
Connection.prototype.processIncomingMessage = function(http) {
|
69
|
+
var destination = http.getResponseHeader("destination")
|
70
|
+
var message = http.responseXML
|
71
|
+
if (message == null) {
|
72
|
+
message = http.responseText
|
73
|
+
}
|
74
|
+
//alert(message.responseText)
|
75
|
+
for (var j = 0; j < this.messageListeners.length; j++) {
|
76
|
+
var registration = this.messageListeners[j]
|
77
|
+
if (registration.matcher(destination)) {
|
78
|
+
registration.messageListener(message, destination)
|
79
|
+
}
|
80
|
+
}
|
81
|
+
}
|
82
|
+
|
83
|
+
Connection.prototype.addMessageListener = function(matcher, messageListener) {
|
84
|
+
var wrappedMatcher
|
85
|
+
if (matcher.constructor == RegExp) {
|
86
|
+
wrappedMatcher = function(destination) {
|
87
|
+
return matcher.test(destination)
|
88
|
+
}
|
89
|
+
}
|
90
|
+
else if (matcher.constructor == String) {
|
91
|
+
wrappedMatcher = function(destination) {
|
92
|
+
return matcher == destination
|
93
|
+
}
|
94
|
+
}
|
95
|
+
else {
|
96
|
+
wrappedMatcher = matcher
|
97
|
+
}
|
98
|
+
this.messageListeners[this.messageListeners.length] = { matcher: wrappedMatcher, messageListener: messageListener }
|
99
|
+
}
|
100
|
+
|
101
|
+
Connection.prototype.createHttpControl = function() {
|
102
|
+
// for details on using XMLHttpRequest see
|
103
|
+
// http://webfx.eae.net/dhtml/xmlextras/xmlextras.html
|
104
|
+
try {
|
105
|
+
if (window.XMLHttpRequest) {
|
106
|
+
var req = new XMLHttpRequest()
|
107
|
+
|
108
|
+
// some older versions of Moz did not support the readyState property
|
109
|
+
// and the onreadystate event so we patch it!
|
110
|
+
if (req.readyState == null) {
|
111
|
+
req.readyState = 1
|
112
|
+
req.addEventListener("load", function () {
|
113
|
+
req.readyState = 4
|
114
|
+
if (typeof req.onreadystatechange == "function") {
|
115
|
+
req.onreadystatechange()
|
116
|
+
}
|
117
|
+
}, false)
|
118
|
+
}
|
119
|
+
|
120
|
+
return req
|
121
|
+
}
|
122
|
+
if (window.ActiveXObject) {
|
123
|
+
return new ActiveXObject(this.getControlPrefix() + ".XmlHttp")
|
124
|
+
}
|
125
|
+
}
|
126
|
+
catch (ex) {}
|
127
|
+
// fell through
|
128
|
+
throw new Error("Your browser does not support XmlHttp objects")
|
129
|
+
}
|
130
|
+
|
131
|
+
Connection.prototype.getControlPrefix = function() {
|
132
|
+
if (this.prefix) {
|
133
|
+
return this.prefix
|
134
|
+
}
|
135
|
+
|
136
|
+
var prefixes = ["MSXML2", "Microsoft", "MSXML", "MSXML3"]
|
137
|
+
var o, o2
|
138
|
+
for (var i = 0; i < prefixes.length; i++) {
|
139
|
+
try {
|
140
|
+
// try to create the objects
|
141
|
+
o = new ActiveXObject(prefixes[i] + ".XmlHttp")
|
142
|
+
o2 = new ActiveXObject(prefixes[i] + ".XmlDom")
|
143
|
+
return this.prefix = prefixes[i]
|
144
|
+
}
|
145
|
+
catch (ex) {}
|
146
|
+
}
|
147
|
+
throw new Error("Could not find an installed XML parser")
|
148
|
+
}
|
149
|
+
|