├── .gitignore ├── LICENSE ├── README.md ├── distribution ├── disttemplates │ ├── certs │ │ ├── client.truststore │ │ ├── server.keystore │ │ ├── servercert.pem │ │ └── serverkey.pem │ ├── client │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── samples │ │ │ ├── Readme.txt │ │ │ ├── amqp │ │ │ │ ├── ReceiverNonTransacted.java │ │ │ │ ├── ReceiverNonTransactedDurable.java │ │ │ │ ├── ReceiverTransactedAcquisition.java │ │ │ │ ├── ReceiverTransactedRetirement.java │ │ │ │ ├── ReplierNonTransacted.java │ │ │ │ ├── RequestorNonTransacted.java │ │ │ │ ├── SenderNonTransacted.java │ │ │ │ ├── SenderTransacted.java │ │ │ │ ├── starter │ │ │ │ └── starter.bat │ │ │ ├── cli │ │ │ │ ├── AdminClient$1.class │ │ │ │ ├── AdminClient.java │ │ │ │ ├── CLIMessageInterface.java │ │ │ │ ├── starter │ │ │ │ └── starter.bat │ │ │ ├── router_network │ │ │ │ ├── P2PReceiver.java │ │ │ │ ├── P2PReplier.java │ │ │ │ ├── P2PRequestor.java │ │ │ │ ├── P2PSender.java │ │ │ │ ├── PubSubPublisher.java │ │ │ │ ├── PubSubReplier.java │ │ │ │ ├── PubSubRequestor.java │ │ │ │ ├── PubSubSubscriber.java │ │ │ │ ├── starter │ │ │ │ └── starter.bat │ │ │ └── streams │ │ │ │ ├── management │ │ │ │ ├── install.cli │ │ │ │ ├── queuestats.js │ │ │ │ └── remove.cli │ │ │ │ ├── nuclear │ │ │ │ ├── install.cli │ │ │ │ ├── remove.cli │ │ │ │ ├── tempmonitor.js │ │ │ │ └── tempproducer.js │ │ │ │ ├── ordercollect │ │ │ │ ├── install.cli │ │ │ │ ├── itemstats.js │ │ │ │ ├── ordercollector.js │ │ │ │ ├── orderheadproducer.js │ │ │ │ ├── orderposproducer.js │ │ │ │ └── remove.cli │ │ │ │ └── replier │ │ │ │ ├── install.cli │ │ │ │ ├── remove.cli │ │ │ │ └── replier.js │ │ └── scripts │ │ │ ├── cli │ │ │ ├── cli.bat │ │ │ ├── cliamqp │ │ │ ├── cliamqp.bat │ │ │ ├── clis │ │ │ ├── clis.bat │ │ │ ├── preconfigproc │ │ │ ├── preconfigproc.bat │ │ │ ├── repoamqp │ │ │ ├── repoamqp.bat │ │ │ ├── repojms │ │ │ ├── repojms.bat │ │ │ ├── runclient │ │ │ └── shutdown.cli │ ├── router │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── data │ │ │ ├── config │ │ │ │ └── routerconfig.xml │ │ │ ├── deploy │ │ │ │ └── dummy.txt │ │ │ ├── log │ │ │ │ └── dummy.txt │ │ │ ├── preconfig │ │ │ │ ├── 01-upgrade-to-12.1.0.xml │ │ │ │ ├── 02-upgrade-to-13.0.0.xml │ │ │ │ ├── 03-upgrade-to-13.1.0.xml │ │ │ │ └── 04-upgrade-to-13.1.2.xml │ │ │ ├── store │ │ │ │ ├── backup │ │ │ │ │ └── dummy.txt │ │ │ │ ├── db │ │ │ │ │ └── dummy.txt │ │ │ │ ├── durables │ │ │ │ │ └── dummy.txt │ │ │ │ ├── log │ │ │ │ │ └── dummy.txt │ │ │ │ └── swap │ │ │ │ │ └── dummy.txt │ │ │ ├── streamlib │ │ │ │ └── dummy.txt │ │ │ └── trace │ │ │ │ └── dummy.txt │ │ ├── external-licenses │ │ │ ├── GRAALVM_LICENSE.txt │ │ │ ├── GRAALVM_THIRD_PARTY_LICENSE.txt │ │ │ ├── LICENSE-2.0.txt │ │ │ ├── dom4j-license.txt │ │ │ ├── jline-license.txt │ │ │ ├── jquery-MIT-license.txt │ │ │ └── xstream-license.txt │ │ ├── optional-swiftlets │ │ │ └── extension │ │ │ │ └── dummy.txt │ │ ├── samples │ │ │ ├── Readme.txt │ │ │ ├── amqp │ │ │ │ ├── ReceiverNonTransacted.java │ │ │ │ ├── ReceiverNonTransactedDurable.java │ │ │ │ ├── ReceiverTransactedAcquisition.java │ │ │ │ ├── ReceiverTransactedRetirement.java │ │ │ │ ├── ReplierNonTransacted.java │ │ │ │ ├── RequestorNonTransacted.java │ │ │ │ ├── SenderNonTransacted.java │ │ │ │ ├── SenderTransacted.java │ │ │ │ ├── starter │ │ │ │ └── starter.bat │ │ │ ├── cli │ │ │ │ ├── AdminClient$1.class │ │ │ │ ├── AdminClient.java │ │ │ │ ├── CLIMessageInterface.java │ │ │ │ ├── starter │ │ │ │ └── starter.bat │ │ │ ├── router_network │ │ │ │ ├── P2PReceiver.java │ │ │ │ ├── P2PReplier.java │ │ │ │ ├── P2PRequestor.java │ │ │ │ ├── P2PSender.java │ │ │ │ ├── PubSubPublisher.java │ │ │ │ ├── PubSubReplier.java │ │ │ │ ├── PubSubRequestor.java │ │ │ │ ├── PubSubSubscriber.java │ │ │ │ ├── starter │ │ │ │ └── starter.bat │ │ │ └── streams │ │ │ │ ├── management │ │ │ │ ├── install.cli │ │ │ │ ├── queuestats.js │ │ │ │ └── remove.cli │ │ │ │ ├── nuclear │ │ │ │ ├── install.cli │ │ │ │ ├── remove.cli │ │ │ │ ├── tempmonitor.js │ │ │ │ └── tempproducer.js │ │ │ │ ├── ordercollect │ │ │ │ ├── install.cli │ │ │ │ ├── itemstats.js │ │ │ │ ├── ordercollector.js │ │ │ │ ├── orderheadproducer.js │ │ │ │ ├── orderposproducer.js │ │ │ │ └── remove.cli │ │ │ │ └── replier │ │ │ │ ├── install.cli │ │ │ │ ├── remove.cli │ │ │ │ └── replier.js │ │ ├── scripts │ │ │ ├── checkconfig │ │ │ ├── checkstore │ │ │ ├── cli │ │ │ ├── cli.bat │ │ │ ├── cliamqp │ │ │ ├── cliamqp.bat │ │ │ ├── clis │ │ │ ├── clis.bat │ │ │ ├── preconfigproc │ │ │ ├── preconfigproc.bat │ │ │ ├── repoamqp │ │ │ ├── repoamqp.bat │ │ │ ├── repojms │ │ │ ├── repojms.bat │ │ │ ├── router │ │ │ ├── router.bat │ │ │ └── shutdown.cli │ │ ├── streams │ │ │ ├── lastvalue.js │ │ │ ├── mailout.js │ │ │ ├── messagescheduler.js │ │ │ ├── routeannouncer.js │ │ │ ├── streammonitor.js │ │ │ ├── streamregistry.js │ │ │ └── streamrepository.js │ │ └── version.properties │ └── testsuite │ │ ├── LICENSE │ │ ├── NOTICE │ │ └── scripts │ │ ├── amqp │ │ ├── createqueues.cli │ │ └── deletequeues.cli │ │ ├── jms │ │ ├── createqueues.cli │ │ └── deletequeues.cli │ │ ├── runamqp │ │ └── runjms ├── docker │ └── Dockerfile ├── pom.xml └── src │ └── assembly │ ├── client.xml │ ├── filter.properties │ ├── router.xml │ └── testsuite.xml ├── graalvm └── pom.xml ├── pom.xml ├── router ├── dependency-reduced-pom.xml ├── pom.xml └── src │ └── main │ └── java │ └── com │ └── swiftmq │ ├── JavaHome.java │ ├── Router.java │ └── SystemPreconfig.java ├── swiftlets ├── sys_amqp │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ ├── com │ │ │ └── swiftmq │ │ │ │ └── impl │ │ │ │ └── amqp │ │ │ │ ├── AMQPSwiftlet.java │ │ │ │ ├── Handler.java │ │ │ │ ├── HandlerFactory.java │ │ │ │ ├── OutboundQueue.java │ │ │ │ ├── OutboundTracer.java │ │ │ │ ├── SwiftletContext.java │ │ │ │ ├── VersionedConnection.java │ │ │ │ ├── amqp │ │ │ │ ├── v00_09_01 │ │ │ │ │ ├── AMQPChannelVisitor.java │ │ │ │ │ ├── AMQPConnectionVisitor.java │ │ │ │ │ ├── AMQPHandler.java │ │ │ │ │ ├── AMQPHandlerFactory.java │ │ │ │ │ ├── ChannelHandler.java │ │ │ │ │ ├── Consumer.java │ │ │ │ │ ├── Delivery.java │ │ │ │ │ ├── Exchange.java │ │ │ │ │ ├── ExchangeFactory.java │ │ │ │ │ ├── ExchangeRegistry.java │ │ │ │ │ ├── MessageWrap.java │ │ │ │ │ ├── QueueMapper.java │ │ │ │ │ ├── SourceMessageProcessor.java │ │ │ │ │ ├── po │ │ │ │ │ │ ├── POActivateFlow.java │ │ │ │ │ │ ├── POChannelFrameReceived.java │ │ │ │ │ │ ├── POCheckIdleTimeout.java │ │ │ │ │ │ ├── POClose.java │ │ │ │ │ │ ├── POCloseChannel.java │ │ │ │ │ │ ├── POSendChannelClose.java │ │ │ │ │ │ ├── POSendClose.java │ │ │ │ │ │ ├── POSendHeartBeat.java │ │ │ │ │ │ ├── POSendMessages.java │ │ │ │ │ │ ├── POSendStart.java │ │ │ │ │ │ └── POSendTune.java │ │ │ │ │ └── transformer │ │ │ │ │ │ ├── BasicInboundTransformer.java │ │ │ │ │ │ ├── BasicOutboundTransformer.java │ │ │ │ │ │ ├── DestinationFactory.java │ │ │ │ │ │ ├── InboundTransformer.java │ │ │ │ │ │ ├── OutboundTransformer.java │ │ │ │ │ │ └── Util.java │ │ │ │ └── v01_00_00 │ │ │ │ │ ├── AMQPConnectionVisitor.java │ │ │ │ │ ├── AMQPHandler.java │ │ │ │ │ ├── AMQPHandlerFactory.java │ │ │ │ │ ├── AMQPSessionVisitor.java │ │ │ │ │ ├── ConnectionEndException.java │ │ │ │ │ ├── Delivery.java │ │ │ │ │ ├── EndWithErrorException.java │ │ │ │ │ ├── EndWithErrorExceptionVisitor.java │ │ │ │ │ ├── EndWithErrorExceptionVisitorAdapter.java │ │ │ │ │ ├── FlowcontrolTimer.java │ │ │ │ │ ├── LinkEndException.java │ │ │ │ │ ├── ServerLink.java │ │ │ │ │ ├── SessionEndException.java │ │ │ │ │ ├── SessionHandler.java │ │ │ │ │ ├── SourceLink.java │ │ │ │ │ ├── SourceMessageProcessor.java │ │ │ │ │ ├── TargetLink.java │ │ │ │ │ ├── po │ │ │ │ │ ├── POCheckIdleTimeout.java │ │ │ │ │ ├── POClose.java │ │ │ │ │ ├── POCloseSession.java │ │ │ │ │ ├── POConnectionCollect.java │ │ │ │ │ ├── POConnectionFrameReceived.java │ │ │ │ │ ├── POSendBegin.java │ │ │ │ │ ├── POSendClose.java │ │ │ │ │ ├── POSendEnd.java │ │ │ │ │ ├── POSendFlow.java │ │ │ │ │ ├── POSendHeartBeat.java │ │ │ │ │ ├── POSendMessages.java │ │ │ │ │ ├── POSendOpen.java │ │ │ │ │ ├── POSessionCollect.java │ │ │ │ │ └── POSessionFrameReceived.java │ │ │ │ │ ├── transaction │ │ │ │ │ ├── InvalidTransactionId.java │ │ │ │ │ ├── QueueReceiverProvider.java │ │ │ │ │ ├── QueueSenderProvider.java │ │ │ │ │ ├── ResourceProvider.java │ │ │ │ │ └── TransactionRegistry.java │ │ │ │ │ └── transformer │ │ │ │ │ ├── AMQPNativeInboundTransformer.java │ │ │ │ │ ├── AMQPNativeOutboundTransformer.java │ │ │ │ │ ├── BodyFactory.java │ │ │ │ │ ├── BodyTypeMessageFactory.java │ │ │ │ │ ├── DestinationFactory.java │ │ │ │ │ ├── InboundTransformer.java │ │ │ │ │ ├── InvalidToUnderscoreNameTranslator.java │ │ │ │ │ ├── JMSMappingInboundTransformer.java │ │ │ │ │ ├── JMSMappingOutboundTransformer.java │ │ │ │ │ ├── MessageFactory.java │ │ │ │ │ ├── MessageTypeBodyFactory.java │ │ │ │ │ ├── NameTranslator.java │ │ │ │ │ ├── NullNameTranslator.java │ │ │ │ │ ├── OutboundTransformer.java │ │ │ │ │ ├── TransformerFactory.java │ │ │ │ │ ├── UnderscoreToDashNameTranslator.java │ │ │ │ │ └── Util.java │ │ │ │ └── sasl │ │ │ │ ├── provider │ │ │ │ ├── AnonServer.java │ │ │ │ ├── PlainServer.java │ │ │ │ ├── SASLProvider.java │ │ │ │ └── SaslServerFactoryImpl.java │ │ │ │ └── v01_00_00 │ │ │ │ ├── SASLHandler.java │ │ │ │ ├── SASLHandlerFactory.java │ │ │ │ ├── SASLVisitor.java │ │ │ │ └── po │ │ │ │ ├── POClose.java │ │ │ │ ├── POSaslFrameReceived.java │ │ │ │ └── POSendInit.java │ │ └── org │ │ │ └── apache │ │ │ └── qpid │ │ │ └── translator │ │ │ └── Translator.java │ │ └── resources │ │ └── sys_amqp │ │ └── images │ │ └── swiftlet.png ├── sys_authentication │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── auth │ │ │ └── standard │ │ │ ├── AuthenticationSwiftletImpl.java │ │ │ ├── Group.java │ │ │ ├── LoginId.java │ │ │ ├── QueueResourceGrant.java │ │ │ ├── ResourceGrant.java │ │ │ ├── TopicResourceGrant.java │ │ │ └── User.java │ │ └── resources │ │ └── sys_authentication │ │ └── images │ │ ├── groups.png │ │ ├── rlg.png │ │ ├── swiftlet.png │ │ └── users.png ├── sys_deploy │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── deploy │ │ │ └── standard │ │ │ ├── DeploySpaceImpl.java │ │ │ ├── DeploySwiftletImpl.java │ │ │ └── SwiftletContext.java │ │ └── resources │ │ └── sys_deploy │ │ └── images │ │ └── swiftlet.png ├── sys_jms │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── jms │ │ │ └── standard │ │ │ ├── JMSSwiftlet.java │ │ │ ├── SwiftletContext.java │ │ │ ├── VersionSelector.java │ │ │ ├── VersionedJMSConnection.java │ │ │ └── v750 │ │ │ ├── AsyncMessageProcessor.java │ │ │ ├── BrowserManager.java │ │ │ ├── CollectRequest.java │ │ │ ├── ConnectionVisitorAdapter.java │ │ │ ├── Consumer.java │ │ │ ├── DeliveryItem.java │ │ │ ├── InboundReader.java │ │ │ ├── JMSConnection.java │ │ │ ├── NontransactedQueueSession.java │ │ │ ├── NontransactedSession.java │ │ │ ├── NontransactedTopicSession.java │ │ │ ├── NontransactedUnifiedSession.java │ │ │ ├── OutboundWriter.java │ │ │ ├── Producer.java │ │ │ ├── QueueConsumer.java │ │ │ ├── QueueProducer.java │ │ │ ├── RegisterMessageProcessor.java │ │ │ ├── RunMessageProcessor.java │ │ │ ├── Session.java │ │ │ ├── SessionContext.java │ │ │ ├── SessionVisitor.java │ │ │ ├── TopicConsumer.java │ │ │ ├── TopicDurableConsumer.java │ │ │ ├── TopicProducer.java │ │ │ ├── TransactedQueueSession.java │ │ │ ├── TransactedSession.java │ │ │ ├── TransactedTopicSession.java │ │ │ ├── TransactedUnifiedSession.java │ │ │ ├── TransactionFactory.java │ │ │ └── TransactionManager.java │ │ └── resources │ │ └── sys_jms │ │ └── images │ │ └── swiftlet.png ├── sys_jndi │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── jndi │ │ │ └── standard │ │ │ ├── JNDIReplication.java │ │ │ ├── JNDISwiftletImpl.java │ │ │ ├── QueueJNDIProcessor.java │ │ │ ├── SwiftletContext.java │ │ │ ├── TopicJNDIProcessor.java │ │ │ └── v400 │ │ │ └── RequestVisitor.java │ │ └── resources │ │ └── sys_jndi │ │ └── images │ │ └── swiftlet.png ├── sys_log │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── log │ │ │ └── standard │ │ │ ├── LogSinkImpl.java │ │ │ └── LogSwiftletImpl.java │ │ └── resources │ │ └── sys_log │ │ └── images │ │ └── swiftlet.png ├── sys_mgmt │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── mgmt │ │ │ └── standard │ │ │ ├── CLIExecutorImpl.java │ │ │ ├── DispatchQueue.java │ │ │ ├── Dispatcher.java │ │ │ ├── Listener.java │ │ │ ├── MessageInterfaceController.java │ │ │ ├── MessageInterfaceListener.java │ │ │ ├── MgmtSwiftletImpl.java │ │ │ ├── SwiftletContext.java │ │ │ ├── auth │ │ │ ├── AuthenticatorImpl.java │ │ │ └── Role.java │ │ │ ├── jmx │ │ │ ├── EntityMBean.java │ │ │ └── JMXUtil.java │ │ │ ├── po │ │ │ ├── CheckExpire.java │ │ │ ├── ClientRequest.java │ │ │ ├── Close.java │ │ │ ├── Disconnect.java │ │ │ ├── EntityAdded.java │ │ │ ├── EntityRemoved.java │ │ │ ├── EventObject.java │ │ │ ├── EventObjectVisitor.java │ │ │ ├── EventVisitor.java │ │ │ ├── PropertyChanged.java │ │ │ ├── RouterAvailable.java │ │ │ ├── RouterUnavailable.java │ │ │ ├── SendUpdates.java │ │ │ ├── SwiftletAdded.java │ │ │ └── SwiftletRemoved.java │ │ │ └── v750 │ │ │ └── DispatcherImpl.java │ │ └── resources │ │ └── sys_mgmt │ │ └── images │ │ └── swiftlet.png ├── sys_mqtt │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── mqtt │ │ │ ├── MQTTSwiftlet.java │ │ │ ├── SwiftletContext.java │ │ │ ├── connection │ │ │ ├── MQTTConnection.java │ │ │ └── OutboundQueue.java │ │ │ ├── po │ │ │ ├── MQTTVisitor.java │ │ │ ├── MQTTVisitorAdapter.java │ │ │ ├── POClose.java │ │ │ ├── POCollect.java │ │ │ ├── POConnect.java │ │ │ ├── PODisconnect.java │ │ │ ├── POPingReq.java │ │ │ ├── POProtocolError.java │ │ │ ├── POPubAck.java │ │ │ ├── POPubComp.java │ │ │ ├── POPubRec.java │ │ │ ├── POPubRel.java │ │ │ ├── POPublish.java │ │ │ ├── POSendMessage.java │ │ │ ├── POSessionAssociated.java │ │ │ ├── POSubscribe.java │ │ │ └── POUnsubscribe.java │ │ │ ├── pubsub │ │ │ ├── Consumer.java │ │ │ ├── DurableConsumer.java │ │ │ ├── Producer.java │ │ │ ├── Subscription.java │ │ │ └── SubscriptionStoreEntry.java │ │ │ ├── retain │ │ │ ├── MemoryRetainer.java │ │ │ └── Retainer.java │ │ │ ├── session │ │ │ ├── AssociateSessionCallback.java │ │ │ ├── MQTTSession.java │ │ │ ├── SessionRegistry.java │ │ │ ├── SessionStore.java │ │ │ └── SessionStoreEntry.java │ │ │ └── v311 │ │ │ ├── MqttListener.java │ │ │ ├── PacketDecoder.java │ │ │ └── netty │ │ │ ├── buffer │ │ │ ├── ByteBuf.java │ │ │ └── ByteBufUtil.java │ │ │ ├── handler │ │ │ └── codec │ │ │ │ ├── CodecException.java │ │ │ │ ├── DecoderException.java │ │ │ │ ├── DecoderResult.java │ │ │ │ └── mqtt │ │ │ │ ├── MqttCodecUtil.java │ │ │ │ ├── MqttConnAckMessage.java │ │ │ │ ├── MqttConnAckVariableHeader.java │ │ │ │ ├── MqttConnectMessage.java │ │ │ │ ├── MqttConnectPayload.java │ │ │ │ ├── MqttConnectReturnCode.java │ │ │ │ ├── MqttConnectVariableHeader.java │ │ │ │ ├── MqttDecoder.java │ │ │ │ ├── MqttEncoder.java │ │ │ │ ├── MqttFixedHeader.java │ │ │ │ ├── MqttIdentifierRejectedException.java │ │ │ │ ├── MqttMessage.java │ │ │ │ ├── MqttMessageBuilders.java │ │ │ │ ├── MqttMessageFactory.java │ │ │ │ ├── MqttMessageIdVariableHeader.java │ │ │ │ ├── MqttMessageType.java │ │ │ │ ├── MqttPubAckMessage.java │ │ │ │ ├── MqttPublishMessage.java │ │ │ │ ├── MqttPublishVariableHeader.java │ │ │ │ ├── MqttQoS.java │ │ │ │ ├── MqttSubAckMessage.java │ │ │ │ ├── MqttSubAckPayload.java │ │ │ │ ├── MqttSubscribeMessage.java │ │ │ │ ├── MqttSubscribePayload.java │ │ │ │ ├── MqttTopicSubscription.java │ │ │ │ ├── MqttUnacceptableProtocolVersionException.java │ │ │ │ ├── MqttUnsubAckMessage.java │ │ │ │ ├── MqttUnsubscribeMessage.java │ │ │ │ ├── MqttUnsubscribePayload.java │ │ │ │ └── MqttVersion.java │ │ │ └── util │ │ │ ├── AbstractConstant.java │ │ │ ├── Constant.java │ │ │ ├── ConstantPool.java │ │ │ ├── Signal.java │ │ │ └── internal │ │ │ ├── EmptyArrays.java │ │ │ ├── ObjectUtil.java │ │ │ └── StringUtil.java │ │ └── resources │ │ └── sys_mqtt │ │ └── images │ │ └── swiftlet.png ├── sys_net_netty │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── net │ │ │ └── netty │ │ │ ├── ConnectionManagerImpl.java │ │ │ ├── Countable.java │ │ │ ├── CountableBufferedInputStream.java │ │ │ ├── CountableBufferedOutputStream.java │ │ │ ├── CountableInput.java │ │ │ ├── CountableWrappedOutputStream.java │ │ │ ├── NetworkSwiftletImpl.java │ │ │ ├── SSLContextFactory.java │ │ │ ├── SwiftletContext.java │ │ │ └── scheduler │ │ │ ├── IOScheduler.java │ │ │ ├── IntraVMScheduler.java │ │ │ ├── IntraVMServerEndpointImpl.java │ │ │ ├── NettyConnection.java │ │ │ ├── NettyIOScheduler.java │ │ │ ├── NettyInboundConnectionHandler.java │ │ │ ├── NettyOutboundConnectionHandler.java │ │ │ ├── NettyTCPConnector.java │ │ │ ├── NettyTCPListener.java │ │ │ ├── TCPConnector.java │ │ │ ├── TCPListener.java │ │ │ └── TaskExecutor.java │ │ └── resources │ │ └── sys_net │ │ └── images │ │ └── swiftlet.png ├── sys_queuemanager │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── queue │ │ │ └── standard │ │ │ ├── QueueManagerImpl.java │ │ │ ├── SwiftletContext.java │ │ │ ├── cluster │ │ │ ├── ClusterMetricPublisher.java │ │ │ ├── ClusterMetricSubscriber.java │ │ │ ├── ClusteredQueue.java │ │ │ ├── ClusteredQueueFactory.java │ │ │ ├── ClusteredQueueFlowController.java │ │ │ ├── ClusteredQueueMetric.java │ │ │ ├── ClusteredQueueMetricCollection.java │ │ │ ├── ClusteredTransactionId.java │ │ │ ├── DispatchPolicy.java │ │ │ ├── DispatchPolicyListener.java │ │ │ ├── DispatchPolicyRegistry.java │ │ │ ├── MessageGroupDispatchPolicy.java │ │ │ ├── MessageGroupDispatchPolicyFactory.java │ │ │ ├── MessageGroupDispatchPolicyFactoryImpl.java │ │ │ ├── MessageGroupEntry.java │ │ │ ├── QueueMetric.java │ │ │ ├── Redispatcher.java │ │ │ ├── RedispatcherController.java │ │ │ ├── RoundRobinDispatchPolicy.java │ │ │ └── v700 │ │ │ │ ├── ClusteredQueueMetricCollectionImpl.java │ │ │ │ ├── ClusteredQueueMetricImpl.java │ │ │ │ ├── MetricFactory.java │ │ │ │ └── QueueMetricImpl.java │ │ │ ├── command │ │ │ ├── Activate.java │ │ │ ├── Copier.java │ │ │ ├── Exporter.java │ │ │ ├── Importer.java │ │ │ ├── Mover.java │ │ │ ├── Remover.java │ │ │ ├── Resetter.java │ │ │ ├── ViewCollector.java │ │ │ ├── ViewEntry.java │ │ │ └── Viewer.java │ │ │ ├── composite │ │ │ ├── CompositeQueue.java │ │ │ ├── CompositeQueueFactory.java │ │ │ ├── CompositeQueueFlowController.java │ │ │ ├── CompositeTransactionId.java │ │ │ └── CompositeTransactionIdEntry.java │ │ │ ├── jobs │ │ │ ├── JobRegistrar.java │ │ │ ├── MultiQueuePurgerJob.java │ │ │ ├── MultiQueuePurgerJobFactory.java │ │ │ ├── QueueCleanupDLQJob.java │ │ │ ├── QueueCleanupDLQJobFactory.java │ │ │ ├── QueueCleanupJob.java │ │ │ ├── QueueCleanupJobFactory.java │ │ │ ├── QueueMoverJob.java │ │ │ ├── QueueMoverJobFactory.java │ │ │ ├── QueueNameVerifier.java │ │ │ ├── QueuePurgerJob.java │ │ │ ├── QueuePurgerJobFactory.java │ │ │ ├── QueueResetJob.java │ │ │ ├── QueueResetJobFactory.java │ │ │ └── SelectorVerifier.java │ │ │ └── queue │ │ │ ├── ActiveQueueImpl.java │ │ │ ├── ActiveTransactionRegistry.java │ │ │ ├── Cache.java │ │ │ ├── CacheImpl.java │ │ │ ├── CacheTableFactory.java │ │ │ ├── CacheTableFactoryImpl.java │ │ │ ├── FlowControllerImpl.java │ │ │ ├── MessageLockedException.java │ │ │ ├── MessageProcessorRegistry.java │ │ │ ├── MessageQueue.java │ │ │ ├── MessageQueueFactory.java │ │ │ ├── MessageQueueFactoryImpl.java │ │ │ ├── PropertyWatchManager.java │ │ │ ├── QueueLatency.java │ │ │ ├── QueueMetrics.java │ │ │ ├── RegularQueueFactory.java │ │ │ ├── StoreId.java │ │ │ ├── SystemQueueFactory.java │ │ │ ├── TempQueueFactory.java │ │ │ ├── TransactionId.java │ │ │ ├── View.java │ │ │ └── WireTapManager.java │ │ └── resources │ │ └── sys_queuemanager │ │ └── images │ │ └── swiftlet.png ├── sys_routing │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── routing │ │ │ ├── single │ │ │ ├── RouteImpl.java │ │ │ ├── RoutingSwiftletImpl.java │ │ │ ├── SwiftletContext.java │ │ │ ├── connection │ │ │ │ ├── InboundReader.java │ │ │ │ ├── OutboundWriter.java │ │ │ │ ├── RoutingConnection.java │ │ │ │ ├── event │ │ │ │ │ └── ActivationListener.java │ │ │ │ ├── stage │ │ │ │ │ ├── ProtocolSelectStage.java │ │ │ │ │ ├── Stage.java │ │ │ │ │ ├── StageFactory.java │ │ │ │ │ └── StageQueue.java │ │ │ │ └── v942 │ │ │ │ │ ├── AuthStage.java │ │ │ │ │ ├── ConnectStage.java │ │ │ │ │ ├── NonXADeliveryStage.java │ │ │ │ │ ├── ThrottleQueue.java │ │ │ │ │ ├── XADeliveryStage.java │ │ │ │ │ └── XARecoveryStage.java │ │ │ ├── images │ │ │ │ └── swiftlet.png │ │ │ ├── jobs │ │ │ │ ├── JobRegistrar.java │ │ │ │ ├── RoutingConnectorJob.java │ │ │ │ └── RoutingConnectorJobFactory.java │ │ │ ├── manager │ │ │ │ ├── ConnectionManager.java │ │ │ │ ├── event │ │ │ │ │ ├── ConnectionEvent.java │ │ │ │ │ └── ConnectionListener.java │ │ │ │ └── po │ │ │ │ │ ├── POAddObject.java │ │ │ │ │ ├── POCMVisitor.java │ │ │ │ │ ├── PORemoveAllObject.java │ │ │ │ │ └── PORemoveObject.java │ │ │ ├── route │ │ │ │ ├── Route.java │ │ │ │ ├── RouteConverter.java │ │ │ │ ├── RouteExchanger.java │ │ │ │ ├── RouteFilter.java │ │ │ │ ├── RouteTable.java │ │ │ │ ├── po │ │ │ │ │ ├── POConnectionActivatedObject.java │ │ │ │ │ ├── POConnectionRemoveObject.java │ │ │ │ │ ├── POExchangeVisitor.java │ │ │ │ │ └── PORouteObject.java │ │ │ │ └── v400 │ │ │ │ │ └── RouteImpl.java │ │ │ ├── schedule │ │ │ │ ├── DefaultScheduler.java │ │ │ │ ├── RoundRobinScheduler.java │ │ │ │ ├── Scheduler.java │ │ │ │ ├── SchedulerRegistry.java │ │ │ │ └── po │ │ │ │ │ ├── POCloseObject.java │ │ │ │ │ ├── POConnectionAddedObject.java │ │ │ │ │ ├── POConnectionRemovedObject.java │ │ │ │ │ ├── PODeliverObject.java │ │ │ │ │ ├── PODeliveredObject.java │ │ │ │ │ └── POSchedulerVisitor.java │ │ │ └── smqpr │ │ │ │ ├── BulkRequest.java │ │ │ │ ├── CloseStageQueueRequest.java │ │ │ │ ├── DeliveryCallback.java │ │ │ │ ├── DeliveryRequest.java │ │ │ │ ├── KeepAliveRequest.java │ │ │ │ ├── ProtocolReplyRequest.java │ │ │ │ ├── ProtocolRequest.java │ │ │ │ ├── RequestHandler.java │ │ │ │ ├── SMQRFactory.java │ │ │ │ ├── SMQRVisitor.java │ │ │ │ ├── SendRouteRequest.java │ │ │ │ ├── StartStageRequest.java │ │ │ │ ├── v400 │ │ │ │ ├── AdjustRequest.java │ │ │ │ ├── AuthReplyRequest.java │ │ │ │ ├── AuthRequest.java │ │ │ │ ├── CommitReplyRequest.java │ │ │ │ ├── CommitRequest.java │ │ │ │ ├── ConnectReplyRequest.java │ │ │ │ ├── ConnectRequest.java │ │ │ │ ├── RecoveryReplyRequest.java │ │ │ │ ├── RecoveryRequest.java │ │ │ │ ├── RollbackReplyRequest.java │ │ │ │ ├── RollbackRequest.java │ │ │ │ ├── RouteRequest.java │ │ │ │ ├── SMQRFactory.java │ │ │ │ ├── StartDeliveryRequest.java │ │ │ │ ├── ThrottleRequest.java │ │ │ │ └── TransactionRequest.java │ │ │ │ └── v942 │ │ │ │ ├── AdjustRequest.java │ │ │ │ ├── AuthReplyRequest.java │ │ │ │ ├── AuthRequest.java │ │ │ │ ├── CommitReplyRequest.java │ │ │ │ ├── CommitRequest.java │ │ │ │ ├── ConnectReplyRequest.java │ │ │ │ ├── ConnectRequest.java │ │ │ │ ├── NonXACommitRequest.java │ │ │ │ ├── NonXATransactionRequest.java │ │ │ │ ├── RecoveryReplyRequest.java │ │ │ │ ├── RecoveryRequest.java │ │ │ │ ├── RollbackReplyRequest.java │ │ │ │ ├── RollbackRequest.java │ │ │ │ ├── RouteRequest.java │ │ │ │ ├── SMQRFactory.java │ │ │ │ ├── StartDeliveryRequest.java │ │ │ │ ├── ThrottleRequest.java │ │ │ │ └── TransactionRequest.java │ │ │ └── unlimited │ │ │ ├── UConnectionManager.java │ │ │ ├── URoutingSwiftletImpl.java │ │ │ └── USwiftletContext.java │ │ └── resources │ │ └── sys_routing │ │ └── images │ │ └── swiftlet.png ├── sys_scheduler │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── scheduler │ │ │ └── standard │ │ │ ├── AtSchedule.java │ │ │ ├── CalendarFactory.java │ │ │ ├── JobGroupImpl.java │ │ │ ├── RepeatSchedule.java │ │ │ ├── Schedule.java │ │ │ ├── ScheduleEntry.java │ │ │ ├── ScheduleFactory.java │ │ │ ├── Scheduler.java │ │ │ ├── SchedulerCalendar.java │ │ │ ├── SchedulerSwiftletImpl.java │ │ │ ├── SwiftletContext.java │ │ │ ├── Util.java │ │ │ ├── job │ │ │ ├── MessageSenderJob.java │ │ │ └── MessageSenderJobFactory.java │ │ │ └── po │ │ │ ├── CalendarAdded.java │ │ │ ├── CalendarChanged.java │ │ │ ├── CalendarRemoved.java │ │ │ ├── Close.java │ │ │ ├── EventVisitor.java │ │ │ ├── JobFactoryAdded.java │ │ │ ├── JobFactoryRemoved.java │ │ │ ├── JobStart.java │ │ │ ├── JobStop.java │ │ │ ├── JobTerminated.java │ │ │ ├── ScheduleAdded.java │ │ │ ├── ScheduleChanged.java │ │ │ └── ScheduleRemoved.java │ │ └── resources │ │ └── sys_scheduler │ │ └── images │ │ ├── calendar.png │ │ ├── swiftlet.png │ │ ├── trigger.png │ │ └── triggers.png ├── sys_store │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── store │ │ │ └── standard │ │ │ ├── CompositeStoreTransactionImpl.java │ │ │ ├── DurableSubscriberStoreImpl.java │ │ │ ├── NonPersistentStoreImpl.java │ │ │ ├── PersistentStoreImpl.java │ │ │ ├── StoreContext.java │ │ │ ├── StoreReadTransactionImpl.java │ │ │ ├── StoreSwiftletImpl.java │ │ │ ├── StoreTransactionImpl.java │ │ │ ├── StoreWriteTransactionImpl.java │ │ │ ├── cache │ │ │ ├── CacheManager.java │ │ │ ├── CacheReleaseListener.java │ │ │ ├── Page.java │ │ │ ├── Slot.java │ │ │ └── StableStore.java │ │ │ ├── index │ │ │ ├── Index.java │ │ │ ├── IndexAnalyzer.java │ │ │ ├── IndexEntry.java │ │ │ ├── IndexPage.java │ │ │ ├── MessagePage.java │ │ │ ├── MessagePageReference.java │ │ │ ├── PageInputStream.java │ │ │ ├── PageOutputStream.java │ │ │ ├── PageRecorder.java │ │ │ ├── QueueIndex.java │ │ │ ├── QueueIndexEntry.java │ │ │ ├── QueueIndexPage.java │ │ │ ├── ReferenceMap.java │ │ │ ├── RootIndex.java │ │ │ ├── RootIndexEntry.java │ │ │ ├── RootIndexPage.java │ │ │ └── Util.java │ │ │ ├── jobs │ │ │ ├── BackupJob.java │ │ │ ├── BackupJobFactory.java │ │ │ ├── JobRegistrar.java │ │ │ ├── ScanJob.java │ │ │ ├── ScanJobFactory.java │ │ │ ├── ShrinkJob.java │ │ │ └── ShrinkJobFactory.java │ │ │ ├── log │ │ │ ├── AbortLogRecord.java │ │ │ ├── AppendLogFile.java │ │ │ ├── CheckPointFinishedListener.java │ │ │ ├── CheckPointHandler.java │ │ │ ├── CloseLogOperation.java │ │ │ ├── CommitLogRecord.java │ │ │ ├── DeleteLogAction.java │ │ │ ├── InitiateSyncOperation.java │ │ │ ├── InsertLogAction.java │ │ │ ├── LogAction.java │ │ │ ├── LogFile.java │ │ │ ├── LogManager.java │ │ │ ├── LogManagerEventProcessor.java │ │ │ ├── LogManagerFactory.java │ │ │ ├── LogManagerFactoryImpl.java │ │ │ ├── LogManagerListener.java │ │ │ ├── LogOperation.java │ │ │ ├── LogRecord.java │ │ │ ├── ReuseLogFile.java │ │ │ ├── StartLogRecord.java │ │ │ ├── SyncLogOperation.java │ │ │ ├── UpdateLogAction.java │ │ │ └── UpdatePortionLogAction.java │ │ │ ├── pagedb │ │ │ ├── PageSize.java │ │ │ └── StoreConverter.java │ │ │ ├── processor │ │ │ ├── backup │ │ │ │ ├── BackupFinishedListener.java │ │ │ │ ├── BackupProcessor.java │ │ │ │ └── po │ │ │ │ │ ├── BackupCompleted.java │ │ │ │ │ ├── ChangeGenerations.java │ │ │ │ │ ├── ChangePath.java │ │ │ │ │ ├── Close.java │ │ │ │ │ ├── EventVisitor.java │ │ │ │ │ ├── ScanSaveSets.java │ │ │ │ │ └── StartBackup.java │ │ │ ├── scan │ │ │ │ ├── ScanProcessor.java │ │ │ │ └── po │ │ │ │ │ ├── Close.java │ │ │ │ │ ├── EventVisitor.java │ │ │ │ │ └── StartScan.java │ │ │ └── shrink │ │ │ │ ├── ShrinkProcessor.java │ │ │ │ └── po │ │ │ │ ├── Close.java │ │ │ │ ├── EventVisitor.java │ │ │ │ └── StartShrink.java │ │ │ ├── recover │ │ │ └── RecoveryManager.java │ │ │ ├── swap │ │ │ ├── SwapAddress.java │ │ │ ├── SwapFile.java │ │ │ ├── SwapFileFactory.java │ │ │ ├── SwapFileFactoryImpl.java │ │ │ └── SwapFileImpl.java │ │ │ ├── transaction │ │ │ └── TransactionManager.java │ │ │ └── xa │ │ │ ├── PrepareLogRecordImpl.java │ │ │ ├── PreparedLog.java │ │ │ ├── PreparedLogFile.java │ │ │ └── PreparedLogQueue.java │ │ └── resources │ │ └── sys_store │ │ └── images │ │ └── swiftlet.png ├── sys_streams │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── streams │ │ │ ├── AsyncProxy.java │ │ │ ├── ContentTransformer.java │ │ │ ├── ExceptionCallback.java │ │ │ ├── FunctionCallback.java │ │ │ ├── OsSupport.java │ │ │ ├── Parameters.java │ │ │ ├── RepositorySupport.java │ │ │ ├── Stream.java │ │ │ ├── StreamBuilder.java │ │ │ ├── StreamContext.java │ │ │ ├── StreamController.java │ │ │ ├── StreamLibDeployer.java │ │ │ ├── StreamsSwiftlet.java │ │ │ ├── SwiftletContext.java │ │ │ ├── TimeSupport.java │ │ │ ├── TransactionFinishListener.java │ │ │ ├── TransactionFlushListener.java │ │ │ ├── TypeConverter.java │ │ │ ├── comp │ │ │ ├── io │ │ │ │ ├── DestinationInput.java │ │ │ │ ├── Email.java │ │ │ │ ├── Input.java │ │ │ │ ├── InputBuilder.java │ │ │ │ ├── InputCallback.java │ │ │ │ ├── MailServer.java │ │ │ │ ├── ManagementInput.java │ │ │ │ ├── Output.java │ │ │ │ ├── OutputBuilder.java │ │ │ │ ├── QueueInput.java │ │ │ │ ├── QueueOutput.java │ │ │ │ ├── QueueWireTapInput.java │ │ │ │ ├── TempQueue.java │ │ │ │ ├── TopicInput.java │ │ │ │ └── TopicOutput.java │ │ │ ├── jdbc │ │ │ │ ├── JDBCLookup.java │ │ │ │ └── Util.java │ │ │ ├── log │ │ │ │ ├── Log.java │ │ │ │ └── LogInterceptor.java │ │ │ ├── management │ │ │ │ └── CLI.java │ │ │ ├── memory │ │ │ │ ├── ForEachMemoryCallback.java │ │ │ │ ├── ForEachMessageCallback.java │ │ │ │ ├── GroupInactivityTimeout.java │ │ │ │ ├── GroupResult.java │ │ │ │ ├── HeapMemory.java │ │ │ │ ├── InactivityTimeout.java │ │ │ │ ├── Index.java │ │ │ │ ├── Memory.java │ │ │ │ ├── MemoryBuilder.java │ │ │ │ ├── MemoryCreateCallback.java │ │ │ │ ├── MemoryGroup.java │ │ │ │ ├── MemoryRemoveCallback.java │ │ │ │ ├── QueueMemory.java │ │ │ │ ├── RetirementCallback.java │ │ │ │ ├── TempQueueMemory.java │ │ │ │ ├── TxBookKeeper.java │ │ │ │ └── limit │ │ │ │ │ ├── CountLimit.java │ │ │ │ │ ├── Limit.java │ │ │ │ │ ├── LimitBuilder.java │ │ │ │ │ ├── TimeLimit.java │ │ │ │ │ └── TimeUnitChangeLimit.java │ │ │ ├── message │ │ │ │ ├── BytesMessage.java │ │ │ │ ├── ForEachPropertyCallback.java │ │ │ │ ├── MapBody.java │ │ │ │ ├── MapMessage.java │ │ │ │ ├── MapValue.java │ │ │ │ ├── Message.java │ │ │ │ ├── MessageBuilder.java │ │ │ │ ├── ObjectMessage.java │ │ │ │ ├── Property.java │ │ │ │ ├── PropertySet.java │ │ │ │ ├── PropertyValue.java │ │ │ │ ├── StreamBody.java │ │ │ │ ├── StreamMessage.java │ │ │ │ └── TextMessage.java │ │ │ └── timer │ │ │ │ ├── AtTimer.java │ │ │ │ ├── IntervalTimer.java │ │ │ │ ├── NextTimer.java │ │ │ │ ├── Timer.java │ │ │ │ ├── TimerBuilder.java │ │ │ │ └── TimerCallback.java │ │ │ ├── graalvm │ │ │ └── GraalSetup.java │ │ │ ├── jobs │ │ │ ├── JobRegistrar.java │ │ │ ├── StreamsJob.java │ │ │ └── StreamsJobFactory.java │ │ │ └── processor │ │ │ ├── ManagementProcessor.java │ │ │ ├── QueueMessageProcessor.java │ │ │ ├── StreamProcessor.java │ │ │ └── po │ │ │ ├── POClose.java │ │ │ ├── POCollect.java │ │ │ ├── POExecute.java │ │ │ ├── POFunctionCallback.java │ │ │ ├── POMessage.java │ │ │ ├── POMgmtMessage.java │ │ │ ├── POStart.java │ │ │ ├── POStreamVisitor.java │ │ │ ├── POTimer.java │ │ │ └── POWireTapMessage.java │ │ └── resources │ │ └── sys_streams │ │ └── images │ │ └── swiftlet.png ├── sys_threadpool │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── threadpool │ │ │ └── standard │ │ │ ├── SwiftletContext.java │ │ │ ├── ThreadpoolSwiftletImpl.java │ │ │ └── group │ │ │ ├── CloseListener.java │ │ │ ├── EventLoopImpl.java │ │ │ ├── Group.java │ │ │ ├── GroupRegistry.java │ │ │ └── pool │ │ │ ├── PlatformThreadRunner.java │ │ │ ├── RejectionHandler.java │ │ │ ├── ThreadRunner.java │ │ │ └── VirtualThreadRunner.java │ │ └── resources │ │ └── sys_threadpool │ │ └── images │ │ └── swiftlet.png ├── sys_timer │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── timer │ │ │ └── standard │ │ │ ├── Dispatcher.java │ │ │ ├── SwiftletContext.java │ │ │ └── TimerSwiftletImpl.java │ │ └── resources │ │ └── sys_timer │ │ └── images │ │ └── swiftlet.png ├── sys_topicmanager │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── topic │ │ │ └── standard │ │ │ ├── DurableSubscription.java │ │ │ ├── SlowSubscriberCondition.java │ │ │ ├── TopicBroker.java │ │ │ ├── TopicFlowController.java │ │ │ ├── TopicManagerContext.java │ │ │ ├── TopicManagerImpl.java │ │ │ ├── TopicSubscriberTransaction.java │ │ │ ├── TopicSubscription.java │ │ │ ├── TopicTransaction.java │ │ │ ├── announce │ │ │ ├── AnnounceFilters.java │ │ │ ├── TopicAnnounceReceiver.java │ │ │ ├── TopicAnnounceSender.java │ │ │ ├── TopicInfo.java │ │ │ ├── TopicInfoConverter.java │ │ │ ├── TopicInfoFactory.java │ │ │ ├── po │ │ │ │ ├── POAnnounceSenderVisitor.java │ │ │ │ ├── POAnnounceSubscriptions.java │ │ │ │ ├── PODestinationActivated.java │ │ │ │ ├── PODestinationAdded.java │ │ │ │ ├── PODestinationDeactivated.java │ │ │ │ ├── PODestinationRemoved.java │ │ │ │ ├── POSubscriptionAdded.java │ │ │ │ ├── POSubscriptionRemoved.java │ │ │ │ ├── POTopicCreated.java │ │ │ │ ├── POTopicRemoved.java │ │ │ │ ├── POVersionNoteReceived.java │ │ │ │ └── POVersionNoteToSend.java │ │ │ └── v400 │ │ │ │ └── TopicInfoImpl.java │ │ │ └── jobs │ │ │ ├── DeleteDurableJob.java │ │ │ ├── DeleteDurableJobFactory.java │ │ │ └── JobRegistrar.java │ │ └── resources │ │ └── sys_topicmanager │ │ └── images │ │ └── swiftlet.png ├── sys_trace │ ├── config │ │ └── config.xml │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── swiftmq │ │ │ └── impl │ │ │ └── trace │ │ │ └── standard │ │ │ ├── TraceDestination.java │ │ │ ├── TraceSpaceImpl.java │ │ │ └── TraceSwiftletImpl.java │ │ └── resources │ │ └── sys_trace │ │ └── images │ │ └── swiftlet.png └── sys_xa │ ├── config │ └── config.xml │ ├── pom.xml │ └── src │ └── main │ ├── java │ └── com │ │ └── swiftmq │ │ └── impl │ │ └── xa │ │ └── standard │ │ ├── HeuristicHandler.java │ │ ├── SwiftletContext.java │ │ ├── XAContextImpl.java │ │ ├── XALiveContextImpl.java │ │ ├── XARecoveryContextImpl.java │ │ └── XAResourceManagerSwiftletImpl.java │ └── resources │ └── sys_xa │ └── images │ └── swiftlet.png └── testsuite ├── pom.xml └── src └── main └── java ├── amqp ├── Suite.java └── v100 │ ├── Suite.java │ ├── base │ ├── AMQPConnectedSessionTestCase.java │ ├── AMQPConnectedTestCase.java │ ├── AMQPSequenceMessageFactory.java │ ├── AMQPSettableConnectionTestCase.java │ ├── AMQPValueByteMessageFactory.java │ ├── AMQPValueMapMessageFactory.java │ ├── AMQPValueStringMessageFactory.java │ ├── DataMessageFactory.java │ ├── MessageFactory.java │ ├── ReceiveVerifier.java │ └── Util.java │ ├── ps │ ├── Suite.java │ └── one_to_n │ │ ├── Suite.java │ │ ├── durable │ │ ├── Suite.java │ │ └── dedicatedsession │ │ │ ├── Receiver.java │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ ├── at_least_once │ │ │ └── Suite.java │ │ │ ├── at_most_once │ │ │ └── Suite.java │ │ │ └── exactly_once │ │ │ └── Suite.java │ │ └── non_durable │ │ ├── Suite.java │ │ └── dedicatedsession │ │ ├── Receiver.java │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── at_least_once │ │ └── Suite.java │ │ ├── at_most_once │ │ └── Suite.java │ │ └── exactly_once │ │ └── Suite.java │ └── ptp │ ├── Suite.java │ ├── dedicatedsession │ ├── Receiver.java │ ├── Sender.java │ ├── Suite.java │ ├── at_least_once │ │ └── Suite.java │ ├── at_most_once │ │ └── Suite.java │ └── exactly_once │ │ └── Suite.java │ ├── recover │ ├── Suite.java │ ├── receive │ │ ├── ReceiveTester.java │ │ ├── Suite.java │ │ ├── at_least_once │ │ │ └── Suite.java │ │ ├── at_most_once │ │ │ └── Suite.java │ │ └── exactly_once │ │ │ └── Suite.java │ └── send │ │ ├── SendTester.java │ │ ├── Suite.java │ │ ├── at_least_once │ │ └── Suite.java │ │ ├── at_most_once │ │ └── Suite.java │ │ └── exactly_once │ │ └── Suite.java │ ├── requestreply │ ├── Replier.java │ ├── Requestor.java │ ├── Suite.java │ ├── at_least_once │ │ └── Suite.java │ ├── at_most_once │ │ └── Suite.java │ └── exactly_once │ │ └── Suite.java │ ├── singlesession │ ├── Receiver.java │ ├── Sender.java │ ├── Suite.java │ ├── at_least_once │ │ └── Suite.java │ ├── at_most_once │ │ └── Suite.java │ └── exactly_once │ │ └── Suite.java │ └── transacted │ ├── Suite.java │ ├── acquisition │ ├── Suite.java │ ├── commit │ │ ├── Receiver.java │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── at_least_once │ │ │ └── Suite.java │ │ ├── exactly_once │ │ │ └── Suite.java │ │ └── requestreply │ │ │ ├── Replier.java │ │ │ ├── Requestor.java │ │ │ ├── Suite.java │ │ │ ├── at_least_once │ │ │ └── Suite.java │ │ │ └── exactly_once │ │ │ └── Suite.java │ └── rollback │ │ ├── Receiver.java │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── at_least_once │ │ └── Suite.java │ │ ├── exactly_once │ │ └── Suite.java │ │ └── requestreply │ │ ├── Replier.java │ │ ├── Requestor.java │ │ ├── Suite.java │ │ ├── at_least_once │ │ └── Suite.java │ │ └── exactly_once │ │ └── Suite.java │ └── retirement │ ├── Suite.java │ ├── commit │ ├── Receiver.java │ ├── Sender.java │ ├── Suite.java │ ├── at_least_once │ │ └── Suite.java │ ├── exactly_once │ │ └── Suite.java │ └── requestreply │ │ ├── Replier.java │ │ ├── Requestor.java │ │ ├── Suite.java │ │ ├── at_least_once │ │ └── Suite.java │ │ └── exactly_once │ │ └── Suite.java │ └── rollback │ ├── Receiver.java │ ├── Sender.java │ ├── Suite.java │ ├── at_least_once │ └── Suite.java │ ├── exactly_once │ └── Suite.java │ └── requestreply │ ├── Replier.java │ ├── Requestor.java │ ├── Suite.java │ ├── at_least_once │ └── Suite.java │ └── exactly_once │ └── Suite.java ├── jms ├── Suite.java ├── SuiteWithXA.java ├── SuiteWithoutXA.java ├── base │ ├── Checker.java │ ├── JMSTestCase.java │ ├── MsgNoVerifier.java │ ├── MultisessionConnectedXAPTPTestCase.java │ ├── PSTestCase.java │ ├── PTPTestCase.java │ ├── ServerSessionImpl.java │ ├── ServerSessionPoolImpl.java │ ├── SimpleConnectedPSTestCase.java │ ├── SimpleConnectedPTPClusterTestCase.java │ ├── SimpleConnectedPTPTestCase.java │ ├── SimpleConnectedUnifiedMixedTestCase.java │ ├── SimpleConnectedUnifiedPSTestCase.java │ ├── SimpleConnectedUnifiedPTPTestCase.java │ ├── SimpleConnectedUnifiedXAMixedTestCase.java │ ├── SimpleConnectedUnifiedXAPS1MTestCase.java │ ├── SimpleConnectedUnifiedXAPSTestCase.java │ ├── SimpleConnectedUnifiedXAPTPTestCase.java │ ├── SimpleConnectedXAPS1MTestCase.java │ ├── SimpleConnectedXAPSTestCase.java │ ├── SimpleConnectedXAPTPCCClusterTestCase.java │ ├── SimpleConnectedXAPTPClusterTestCase.java │ ├── SimpleConnectedXAPTPTestCase.java │ ├── TestLogger.java │ ├── TestRunnerWithLog.java │ ├── UnifiedMixedTestCase.java │ ├── UnifiedPSTestCase.java │ ├── UnifiedPTPTestCase.java │ ├── UnifiedXAMixedTestCase.java │ ├── UnifiedXAPSTestCase.java │ ├── UnifiedXAPTPTestCase.java │ ├── XAPSTestCase.java │ ├── XAPTPTestCase.java │ └── XidImpl.java ├── cc │ ├── Suite.java │ ├── nontransacted │ │ ├── Suite.java │ │ ├── autoack │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ ├── psdur │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── clientack │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ ├── psdur │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── transacted │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ ├── psdur │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── xa │ │ ├── Suite.java │ │ ├── multiple │ │ ├── Suite.java │ │ └── ptp │ │ │ ├── MDBFinalReceiver.java │ │ │ ├── MDBForwarder.java │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singlesession │ │ │ ├── MDBFinalReceiver.java │ │ │ ├── MDBForwarder.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ ├── psdur │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java ├── ccunified │ ├── Suite.java │ ├── nontransacted │ │ ├── Suite.java │ │ ├── autoack │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ ├── psdur │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── clientack │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ ├── psdur │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── transacted │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ ├── psdur │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── xa │ │ ├── Suite.java │ │ ├── multiple │ │ ├── Suite.java │ │ └── ptp │ │ │ ├── MDBFinalReceiver.java │ │ │ ├── MDBForwarder.java │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singlesession │ │ │ ├── MDBFinalReceiver.java │ │ │ ├── MDBForwarder.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ ├── psdur │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java ├── func │ ├── Suite.java │ ├── browser │ │ ├── Suite.java │ │ └── Tester.java │ ├── msg │ │ ├── Messages.java │ │ └── Suite.java │ ├── nontransacted │ │ ├── Suite.java │ │ ├── autoack │ │ │ ├── PSMultipleTopics.java │ │ │ ├── PSMultipleTopicsDur.java │ │ │ ├── PSSendSingleTopic.java │ │ │ ├── PSSendSingleTopicDur.java │ │ │ ├── PSSendSingleTopicOM.java │ │ │ ├── PTPMultipleQueues.java │ │ │ ├── PTPSendSingleQueue.java │ │ │ ├── PTPSendSingleQueueOM.java │ │ │ ├── Suite.java │ │ │ ├── multireceiver │ │ │ │ ├── Receiver.java │ │ │ │ ├── Sender.java │ │ │ │ └── Suite.java │ │ │ └── multisubscriber │ │ │ │ ├── Publisher.java │ │ │ │ ├── Subscriber.java │ │ │ │ └── Suite.java │ │ └── clientack │ │ │ ├── PSMultipleTopics.java │ │ │ ├── PSMultipleTopicsDur.java │ │ │ ├── PSSendSingleTopic.java │ │ │ ├── PSSendSingleTopicDur.java │ │ │ ├── PSSendSingleTopicOM.java │ │ │ ├── PTPMultipleQueues.java │ │ │ ├── PTPSendSingleQueue.java │ │ │ ├── PTPSendSingleQueueOM.java │ │ │ ├── Suite.java │ │ │ ├── multireceiver │ │ │ ├── Receiver.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ │ └── multisubscriber │ │ │ ├── Publisher.java │ │ │ ├── Subscriber.java │ │ │ └── Suite.java │ ├── prio │ │ ├── Priority.java │ │ └── Suite.java │ ├── redelivered │ │ ├── NonTransactedNP.java │ │ ├── NonTransactedP.java │ │ ├── Suite.java │ │ ├── TransactedNP.java │ │ └── TransactedP.java │ ├── requestreply │ │ ├── Suite.java │ │ ├── onmessage │ │ │ ├── Suite.java │ │ │ ├── identified │ │ │ │ ├── Suite.java │ │ │ │ ├── ps │ │ │ │ │ ├── Replier.java │ │ │ │ │ ├── Requestor.java │ │ │ │ │ └── Suite.java │ │ │ │ └── ptp │ │ │ │ │ ├── Replier.java │ │ │ │ │ ├── Requestor.java │ │ │ │ │ └── Suite.java │ │ │ └── unidentified │ │ │ │ ├── Suite.java │ │ │ │ ├── ps │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ │ │ └── ptp │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ └── receive │ │ │ ├── Suite.java │ │ │ ├── identified │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ │ └── ptp │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ │ └── unidentified │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Replier.java │ │ │ ├── Requestor.java │ │ │ └── Suite.java │ │ │ └── ptp │ │ │ ├── Replier.java │ │ │ ├── Requestor.java │ │ │ └── Suite.java │ ├── selector │ │ ├── PS.java │ │ ├── PSML.java │ │ ├── PTP.java │ │ ├── PTPML.java │ │ ├── Suite.java │ │ └── load │ │ │ ├── Browser.java │ │ │ ├── Receiver.java │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ ├── browse │ │ │ ├── BrowserSuite.java │ │ │ ├── ReceiverSuite.java │ │ │ ├── SenderSuite.java │ │ │ └── Suite.java │ │ │ ├── concurrent │ │ │ └── Suite.java │ │ │ └── preload │ │ │ ├── ReceiverSuite.java │ │ │ ├── SenderSuite.java │ │ │ └── Suite.java │ └── transacted │ │ ├── PSMultipleTopics.java │ │ ├── PSMultipleTopicsDur.java │ │ ├── PSSendSingleTopic.java │ │ ├── PSSendSingleTopicDur.java │ │ ├── PSSendSingleTopicOM.java │ │ ├── PTPMultipleQueues.java │ │ ├── PTPSendSingleQueue.java │ │ ├── PTPSendSingleQueueOM.java │ │ ├── Suite.java │ │ ├── multireceiver │ │ ├── Receiver.java │ │ ├── Sender.java │ │ └── Suite.java │ │ └── multisubscriber │ │ ├── Publisher.java │ │ ├── Subscriber.java │ │ └── Suite.java ├── funcunified │ ├── Suite.java │ ├── browser │ │ ├── Suite.java │ │ └── Tester.java │ ├── msg │ │ ├── Messages.java │ │ └── Suite.java │ ├── nontransacted │ │ ├── Suite.java │ │ ├── autoack │ │ │ ├── PSMultipleTopics.java │ │ │ ├── PSMultipleTopicsDur.java │ │ │ ├── PSSendSingleTopic.java │ │ │ ├── PSSendSingleTopicDur.java │ │ │ ├── PSSendSingleTopicOM.java │ │ │ ├── PTPMultipleQueues.java │ │ │ ├── PTPSendSingleQueue.java │ │ │ ├── PTPSendSingleQueueOM.java │ │ │ ├── Suite.java │ │ │ ├── multireceiver │ │ │ │ ├── Receiver.java │ │ │ │ ├── Sender.java │ │ │ │ └── Suite.java │ │ │ └── multisubscriber │ │ │ │ ├── Publisher.java │ │ │ │ ├── Subscriber.java │ │ │ │ └── Suite.java │ │ └── clientack │ │ │ ├── PSMultipleTopics.java │ │ │ ├── PSMultipleTopicsDur.java │ │ │ ├── PSSendSingleTopic.java │ │ │ ├── PSSendSingleTopicDur.java │ │ │ ├── PSSendSingleTopicOM.java │ │ │ ├── PTPMultipleQueues.java │ │ │ ├── PTPSendSingleQueue.java │ │ │ ├── PTPSendSingleQueueOM.java │ │ │ ├── Suite.java │ │ │ ├── exceptiontest │ │ │ ├── Receiver.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ │ ├── multireceiver │ │ │ ├── Receiver.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ │ └── multisubscriber │ │ │ ├── Publisher.java │ │ │ ├── Subscriber.java │ │ │ └── Suite.java │ ├── prio │ │ ├── Priority.java │ │ └── Suite.java │ ├── redelivered │ │ ├── NonTransactedNP.java │ │ ├── NonTransactedP.java │ │ ├── Suite.java │ │ ├── TransactedNP.java │ │ └── TransactedP.java │ ├── requestreply │ │ ├── Suite.java │ │ ├── onmessage │ │ │ ├── Suite.java │ │ │ ├── identified │ │ │ │ ├── Suite.java │ │ │ │ ├── ps │ │ │ │ │ ├── Replier.java │ │ │ │ │ ├── Requestor.java │ │ │ │ │ └── Suite.java │ │ │ │ └── ptp │ │ │ │ │ ├── Replier.java │ │ │ │ │ ├── Requestor.java │ │ │ │ │ └── Suite.java │ │ │ └── unidentified │ │ │ │ ├── Suite.java │ │ │ │ ├── ps │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ │ │ └── ptp │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ └── receive │ │ │ ├── Suite.java │ │ │ ├── identified │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ │ └── ptp │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ │ └── unidentified │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Replier.java │ │ │ ├── Requestor.java │ │ │ └── Suite.java │ │ │ └── ptp │ │ │ ├── Replier.java │ │ │ ├── Requestor.java │ │ │ └── Suite.java │ ├── selector │ │ ├── PS.java │ │ ├── PSML.java │ │ ├── PTP.java │ │ ├── PTPML.java │ │ └── Suite.java │ └── transacted │ │ ├── PSMultipleTopics.java │ │ ├── PSMultipleTopicsDur.java │ │ ├── PSSendSingleTopic.java │ │ ├── PSSendSingleTopicDur.java │ │ ├── PSSendSingleTopicOM.java │ │ ├── PTPMultipleQueues.java │ │ ├── PTPSendSingleQueue.java │ │ ├── PTPSendSingleQueueOM.java │ │ ├── Suite.java │ │ ├── mixed │ │ ├── SendReceive.java │ │ └── Suite.java │ │ ├── multireceiver │ │ ├── Receiver.java │ │ ├── Sender.java │ │ └── Suite.java │ │ └── multisubscriber │ │ ├── Publisher.java │ │ ├── Subscriber.java │ │ └── Suite.java ├── ha │ ├── Suite.java │ ├── XAOnlySuite.java │ ├── nonpersistent │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── nondurable │ │ │ │ ├── Sender.java │ │ │ │ ├── Suite.java │ │ │ │ ├── autoack │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ │ │ ├── clientack │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ │ │ ├── requestreply │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ │ │ └── transacted │ │ │ │ ├── Receiver.java │ │ │ │ ├── Sender.java │ │ │ │ └── Suite.java │ │ └── ptp │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ ├── autoack │ │ │ ├── Receiver.java │ │ │ └── Suite.java │ │ │ ├── clientack │ │ │ ├── Receiver.java │ │ │ └── Suite.java │ │ │ ├── requestreply │ │ │ ├── Replier.java │ │ │ ├── Requestor.java │ │ │ └── Suite.java │ │ │ └── transacted │ │ │ ├── Receiver.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ └── persistent │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── durable │ │ │ ├── Suite.java │ │ │ ├── cc │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ ├── multisession │ │ │ │ ├── Suite.java │ │ │ │ ├── autoack │ │ │ │ │ ├── Consumer.java │ │ │ │ │ └── Suite.java │ │ │ │ ├── clientack │ │ │ │ │ ├── Consumer.java │ │ │ │ │ └── Suite.java │ │ │ │ └── transacted │ │ │ │ │ ├── Consumer.java │ │ │ │ │ └── Suite.java │ │ │ └── singlesession │ │ │ │ ├── Suite.java │ │ │ │ ├── autoack │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ │ ├── clientack │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ │ └── transacted │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ ├── nontransacted │ │ │ ├── Sender.java │ │ │ ├── SenderSuite.java │ │ │ ├── Suite.java │ │ │ ├── autoack │ │ │ │ ├── SenderSuite.java │ │ │ │ ├── Suite.java │ │ │ │ ├── multiconsumer │ │ │ │ │ ├── Sender.java │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── multisession │ │ │ │ │ │ ├── Suite.java │ │ │ │ │ │ ├── onmessage │ │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ │ ├── ListenerSuite.java │ │ │ │ │ │ │ └── Suite.java │ │ │ │ │ │ └── singletopic │ │ │ │ │ │ │ ├── Suite.java │ │ │ │ │ │ │ └── onmessage │ │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ │ └── Suite.java │ │ │ │ │ └── singlesession │ │ │ │ │ │ ├── Suite.java │ │ │ │ │ │ └── onmessage │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ └── Suite.java │ │ │ │ ├── multiproducer │ │ │ │ │ ├── Listener.java │ │ │ │ │ ├── Sender.java │ │ │ │ │ └── Suite.java │ │ │ │ └── single │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ │ └── receive │ │ │ │ │ ├── Receiver.java │ │ │ │ │ └── Suite.java │ │ │ └── clientack │ │ │ │ ├── Suite.java │ │ │ │ ├── multiconsumer │ │ │ │ ├── Sender.java │ │ │ │ ├── SenderSuite.java │ │ │ │ ├── Suite.java │ │ │ │ └── multisession │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── nonrecover │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ └── Suite.java │ │ │ │ │ ├── recover │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ └── Suite.java │ │ │ │ │ └── singletopic │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── nonrecover │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ └── Suite.java │ │ │ │ │ └── recover │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ └── single │ │ │ │ ├── Suite.java │ │ │ │ ├── nonrecover │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ │ ├── Receiver.java │ │ │ │ │ └── Suite.java │ │ │ │ └── recover │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ ├── Listener.java │ │ │ │ ├── ListenerSuite.java │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ ├── Receiver.java │ │ │ │ ├── ReceiverSuite.java │ │ │ │ └── Suite.java │ │ │ ├── transacted │ │ │ ├── Suite.java │ │ │ ├── commit │ │ │ │ ├── Suite.java │ │ │ │ ├── multiconsumer │ │ │ │ │ ├── Sender.java │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── multisession │ │ │ │ │ │ ├── Suite.java │ │ │ │ │ │ ├── onmessage │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ └── Suite.java │ │ │ │ │ │ └── singletopic │ │ │ │ │ │ ├── Suite.java │ │ │ │ │ │ └── onmessage │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ └── Suite.java │ │ │ │ └── single │ │ │ │ │ ├── Sender.java │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ │ └── receive │ │ │ │ │ ├── Receiver.java │ │ │ │ │ └── Suite.java │ │ │ └── rollback │ │ │ │ ├── Suite.java │ │ │ │ ├── multiconsumer │ │ │ │ ├── Sender.java │ │ │ │ ├── Suite.java │ │ │ │ └── multisession │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ │ └── singletopic │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ └── single │ │ │ │ ├── Sender.java │ │ │ │ ├── SenderSuite.java │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ ├── Listener.java │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ ├── Receiver.java │ │ │ │ ├── ReceiverSuite.java │ │ │ │ └── Suite.java │ │ │ └── xa │ │ │ ├── Suite.java │ │ │ ├── cc │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ ├── multisession │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ └── singlesession │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ ├── onephase │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singledest │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ │ ├── onephaserollback │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singledest │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ │ ├── preparecommit │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singledest │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ │ └── preparerollback │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singledest │ │ │ ├── Receiver.java │ │ │ └── Suite.java │ │ └── ptp │ │ ├── Suite.java │ │ ├── browser │ │ ├── Browser.java │ │ ├── DrainQueue.java │ │ ├── Sender.java │ │ ├── Suite.java │ │ └── single │ │ │ └── Suite.java │ │ ├── cc │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── multiqueue │ │ │ ├── Suite.java │ │ │ ├── multisession │ │ │ │ ├── Suite.java │ │ │ │ ├── autoack │ │ │ │ │ ├── Consumer.java │ │ │ │ │ ├── Forwarder.java │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── SuiteConsume.java │ │ │ │ │ ├── SuiteForward1.java │ │ │ │ │ ├── SuiteForward2.java │ │ │ │ │ ├── SuiteForward3.java │ │ │ │ │ └── SuiteSend.java │ │ │ │ ├── clientack │ │ │ │ │ ├── Consumer.java │ │ │ │ │ ├── Forwarder.java │ │ │ │ │ └── Suite.java │ │ │ │ └── transacted │ │ │ │ │ ├── Consumer.java │ │ │ │ │ ├── Forwarder.java │ │ │ │ │ └── Suite.java │ │ │ └── singlesession │ │ │ │ ├── Suite.java │ │ │ │ ├── autoack │ │ │ │ ├── Consumer.java │ │ │ │ ├── Forwarder.java │ │ │ │ └── Suite.java │ │ │ │ ├── clientack │ │ │ │ ├── Consumer.java │ │ │ │ ├── Forwarder.java │ │ │ │ └── Suite.java │ │ │ │ └── transacted │ │ │ │ ├── Consumer.java │ │ │ │ ├── Forwarder.java │ │ │ │ └── Suite.java │ │ ├── multisession │ │ │ ├── Suite.java │ │ │ ├── autoack │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ ├── clientack │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ └── transacted │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ └── singlesession │ │ │ ├── Suite.java │ │ │ ├── autoack │ │ │ ├── Consumer.java │ │ │ └── Suite.java │ │ │ ├── clientack │ │ │ ├── Consumer.java │ │ │ └── Suite.java │ │ │ └── transacted │ │ │ ├── Consumer.java │ │ │ └── Suite.java │ │ ├── cluster │ │ ├── Suite.java │ │ ├── nontransacted │ │ │ ├── Sender.java │ │ │ ├── SenderNewSession.java │ │ │ ├── Suite.java │ │ │ ├── autoack │ │ │ │ ├── Suite.java │ │ │ │ └── single │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ │ ├── receive │ │ │ │ │ ├── Receiver.java │ │ │ │ │ └── Suite.java │ │ │ │ │ └── receivenewsession │ │ │ │ │ ├── Receiver.java │ │ │ │ │ └── Suite.java │ │ │ └── clientack │ │ │ │ ├── Suite.java │ │ │ │ └── single │ │ │ │ ├── Suite.java │ │ │ │ ├── nonrecover │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ │ ├── Receiver.java │ │ │ │ │ └── Suite.java │ │ │ │ └── recover │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ ├── Listener.java │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ ├── transacted │ │ │ ├── Suite.java │ │ │ ├── commit │ │ │ │ ├── Suite.java │ │ │ │ └── single │ │ │ │ │ ├── Sender.java │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ │ └── receive │ │ │ │ │ ├── Receiver.java │ │ │ │ │ └── Suite.java │ │ │ └── rollback │ │ │ │ ├── Suite.java │ │ │ │ └── single │ │ │ │ ├── Sender.java │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ ├── Listener.java │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ └── xa │ │ │ ├── Suite.java │ │ │ ├── cc │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ ├── multisession │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ └── singlesession │ │ │ │ ├── Consumer.java │ │ │ │ └── Suite.java │ │ │ ├── onephase │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singledest │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ │ ├── onephaserollback │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singledest │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ │ ├── preparecommit │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singledest │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ │ └── preparerollback │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── singledest │ │ │ ├── Receiver.java │ │ │ └── Suite.java │ │ ├── composite │ │ ├── Suite.java │ │ ├── nontransacted │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ ├── autoack │ │ │ │ ├── Receiver.java │ │ │ │ ├── SelectorReceiver.java │ │ │ │ └── Suite.java │ │ │ └── clientack │ │ │ │ ├── Receiver.java │ │ │ │ ├── SelectorReceiver.java │ │ │ │ └── Suite.java │ │ ├── transacted │ │ │ ├── Suite.java │ │ │ ├── commit │ │ │ │ ├── Receiver.java │ │ │ │ ├── SelectorReceiver.java │ │ │ │ ├── Sender.java │ │ │ │ └── Suite.java │ │ │ └── rollback │ │ │ │ ├── Receiver.java │ │ │ │ ├── SelectorReceiver.java │ │ │ │ ├── Sender.java │ │ │ │ └── Suite.java │ │ └── xa │ │ │ ├── Suite.java │ │ │ ├── onephase │ │ │ ├── Receiver.java │ │ │ ├── SelectorReceiver.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ │ ├── preparecommit │ │ │ ├── Receiver.java │ │ │ ├── SelectorReceiver.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ │ └── preparerollback │ │ │ ├── Receiver.java │ │ │ ├── SelectorReceiver.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ ├── nontransacted │ │ ├── Sender.java │ │ ├── SenderNewSession.java │ │ ├── SenderSuite.java │ │ ├── Suite.java │ │ ├── autoack │ │ │ ├── SenderSuite.java │ │ │ ├── SingleSenderSuite.java │ │ │ ├── Suite.java │ │ │ ├── multiconsumer │ │ │ │ ├── Sender.java │ │ │ │ ├── Suite.java │ │ │ │ ├── multisession │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ ├── ListenerSuite.java │ │ │ │ │ │ └── Suite.java │ │ │ │ └── singlesession │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ └── single │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ ├── Listener.java │ │ │ │ └── Suite.java │ │ │ │ ├── receive │ │ │ │ ├── Receiver.java │ │ │ │ ├── ReceiverSuite.java │ │ │ │ └── Suite.java │ │ │ │ └── receivenewsession │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ ├── clientack │ │ │ ├── Suite.java │ │ │ ├── multiconsumer │ │ │ │ ├── Sender.java │ │ │ │ ├── SenderSuite.java │ │ │ │ ├── Suite.java │ │ │ │ └── multisession │ │ │ │ │ ├── Suite.java │ │ │ │ │ ├── nonrecover │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ │ ├── Listener.java │ │ │ │ │ │ └── Suite.java │ │ │ │ │ └── recover │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ └── single │ │ │ │ ├── Suite.java │ │ │ │ ├── nonrecover │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ │ ├── Receiver.java │ │ │ │ │ └── Suite.java │ │ │ │ └── recover │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ ├── Listener.java │ │ │ │ ├── ListenerSuite.java │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ ├── Receiver.java │ │ │ │ ├── ReceiverSuite.java │ │ │ │ └── Suite.java │ │ └── requestreply │ │ │ ├── Suite.java │ │ │ ├── autoack │ │ │ ├── Replier.java │ │ │ ├── Requestor.java │ │ │ └── Suite.java │ │ │ └── clientack │ │ │ ├── Replier.java │ │ │ ├── Requestor.java │ │ │ └── Suite.java │ │ ├── routing │ │ └── xa │ │ │ └── preparecommit │ │ │ ├── router1 │ │ │ ├── Consumer.java │ │ │ ├── Forwarder.java │ │ │ ├── Sender.java │ │ │ └── Suite.java │ │ │ └── router2 │ │ │ ├── Forwarder.java │ │ │ └── Suite.java │ │ ├── transacted │ │ ├── Suite.java │ │ ├── commit │ │ │ ├── Suite.java │ │ │ ├── multiconsumer │ │ │ │ ├── Sender.java │ │ │ │ ├── Suite.java │ │ │ │ └── multisession │ │ │ │ │ ├── Suite.java │ │ │ │ │ └── onmessage │ │ │ │ │ ├── Listener.java │ │ │ │ │ └── Suite.java │ │ │ └── single │ │ │ │ ├── Sender.java │ │ │ │ ├── Suite.java │ │ │ │ ├── onmessage │ │ │ │ ├── Listener.java │ │ │ │ └── Suite.java │ │ │ │ └── receive │ │ │ │ ├── Receiver.java │ │ │ │ └── Suite.java │ │ ├── requestreply │ │ │ ├── Suite.java │ │ │ └── commit │ │ │ │ ├── Replier.java │ │ │ │ ├── Requestor.java │ │ │ │ └── Suite.java │ │ └── rollback │ │ │ ├── Suite.java │ │ │ ├── multiconsumer │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ └── multisession │ │ │ │ ├── Suite.java │ │ │ │ └── onmessage │ │ │ │ ├── Listener.java │ │ │ │ └── Suite.java │ │ │ └── single │ │ │ ├── Sender.java │ │ │ ├── Suite.java │ │ │ ├── onmessage │ │ │ ├── Listener.java │ │ │ └── Suite.java │ │ │ └── receive │ │ │ ├── Receiver.java │ │ │ └── Suite.java │ │ └── xa │ │ ├── Suite.java │ │ ├── cc │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── multiqueue │ │ │ ├── Suite.java │ │ │ ├── multisession │ │ │ │ ├── Consumer.java │ │ │ │ ├── Forwarder.java │ │ │ │ └── Suite.java │ │ │ ├── rollback │ │ │ │ ├── Suite.java │ │ │ │ └── multisession │ │ │ │ │ ├── Consumer.java │ │ │ │ │ ├── Forwarder.java │ │ │ │ │ └── Suite.java │ │ │ └── singlesession │ │ │ │ ├── Consumer.java │ │ │ │ ├── Forwarder.java │ │ │ │ └── Suite.java │ │ ├── multisession │ │ │ ├── Consumer.java │ │ │ └── Suite.java │ │ └── singlesession │ │ │ ├── Consumer.java │ │ │ └── Suite.java │ │ ├── jca │ │ ├── Consumer.java │ │ ├── Sender.java │ │ └── Suite.java │ │ ├── onephase │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Consumer.java │ │ │ ├── Forwarder.java │ │ │ └── Suite.java │ │ └── singledest │ │ │ ├── Receiver.java │ │ │ ├── ReceiverSuite.java │ │ │ ├── SenderSuite.java │ │ │ └── Suite.java │ │ ├── onephaserollback │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Consumer.java │ │ │ ├── Forwarder.java │ │ │ └── Suite.java │ │ └── singledest │ │ │ ├── Receiver.java │ │ │ ├── ReceiverSuite.java │ │ │ ├── SenderSuite.java │ │ │ └── Suite.java │ │ ├── preparecommit │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Consumer.java │ │ │ ├── Forwarder.java │ │ │ └── Suite.java │ │ └── singledest │ │ │ ├── Receiver.java │ │ │ ├── ReceiverSuite.java │ │ │ ├── SenderSuite.java │ │ │ └── Suite.java │ │ └── preparerollback │ │ ├── Sender.java │ │ ├── Suite.java │ │ ├── multidest │ │ ├── Consumer.java │ │ ├── Forwarder.java │ │ └── Suite.java │ │ └── singledest │ │ ├── Receiver.java │ │ ├── ReceiverSuite.java │ │ ├── SenderSuite.java │ │ └── Suite.java ├── xa │ ├── Suite.java │ ├── endfailonephasecommit │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── endfailprepare │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── endfailrollback │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── noendrollback │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── onephasecommit │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── preparecommit │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── preparerollback │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── recover │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── rollback │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ ├── specials │ │ ├── Suite.java │ │ ├── concurrentcommit │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ ├── differentsessions │ │ │ ├── Suite.java │ │ │ ├── exceptions │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ ├── noendrollback │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ ├── suspendresume │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ ├── tmjoin │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ ├── txtimeout │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── xaflowcontrol │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── redelivered │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── suspendresume │ │ ├── Suite.java │ │ ├── multitx │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ ├── multitxlocal │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ ├── singletx │ │ ├── Suite.java │ │ ├── multidest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ │ ├── Suite.java │ │ │ │ └── Tester.java │ │ └── singledest │ │ │ ├── Suite.java │ │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── singletxlocal │ │ ├── Suite.java │ │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java └── xaunified │ ├── Suite.java │ ├── endfailonephasecommit │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── endfailprepare │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── endfailrollback │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── noendrollback │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── onephasecommit │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── preparecommit │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── preparerollback │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── recover │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── rollback │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── mixed │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── specials │ ├── Suite.java │ └── redelivered │ │ ├── Suite.java │ │ └── Tester.java │ └── suspendresume │ ├── Suite.java │ ├── multitx │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── multitxlocal │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ ├── singletx │ ├── Suite.java │ ├── multidest │ │ ├── Suite.java │ │ ├── ps │ │ │ ├── Suite.java │ │ │ └── Tester.java │ │ └── ptp │ │ │ ├── Suite.java │ │ │ └── Tester.java │ └── singledest │ │ ├── Suite.java │ │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ └── singletxlocal │ ├── Suite.java │ ├── multidest │ ├── Suite.java │ ├── ps │ │ ├── Suite.java │ │ └── Tester.java │ └── ptp │ │ ├── Suite.java │ │ └── Tester.java │ └── singledest │ ├── Suite.java │ ├── ps │ ├── Suite.java │ └── Tester.java │ └── ptp │ ├── Suite.java │ └── Tester.java ├── load └── requestreply │ └── identified │ └── multitempqueues │ └── multisessions │ ├── Suite.java │ ├── notimeout │ ├── Suite.java │ └── ptp │ │ ├── Replier.java │ │ ├── Requestor.java │ │ └── Suite.java │ └── timeout │ ├── Suite.java │ └── ptp │ ├── Replier.java │ ├── Requestor.java │ └── Suite.java ├── nio └── connections │ ├── Suite.java │ └── Tester.java └── perf └── ptp ├── Receiver.java ├── Sender.java └── SuiteSingleSR.java /.gitignore: -------------------------------------------------------------------------------- 1 | distribution/target 2 | router/target 3 | swiftlets/*/target 4 | testsuite/target 5 | .idea 6 | .DS_Store 7 | *.iml -------------------------------------------------------------------------------- /distribution/disttemplates/certs/client.truststore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/distribution/disttemplates/certs/client.truststore -------------------------------------------------------------------------------- /distribution/disttemplates/certs/server.keystore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/distribution/disttemplates/certs/server.keystore -------------------------------------------------------------------------------- /distribution/disttemplates/client/NOTICE: -------------------------------------------------------------------------------- 1 | SwiftMQ Community Edition 2 | Copyright [1996-2019] IIT Software GmbH 3 | 4 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/amqp/starter: -------------------------------------------------------------------------------- 1 | export class=$1 2 | shift 3 | java -cp .:../../jars/swiftmq.jar -Dswiftmq.jsse.anoncipher.enabled=false -Dswiftmq.amqp.frame.debug=false -Dswiftmq.amqp.debug=false $class $@ 4 | 5 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/amqp/starter.bat: -------------------------------------------------------------------------------- 1 | set class=%1 2 | shift 3 | java -cp .;../../jars/swiftmq.jar -Dswiftmq.jsse.anoncipher.enabled=false -Dswiftmq.amqp.frame.debug=false -Dswiftmq.amqp.debug=false %class% %1 %2 %3 %4 %5 %6 %7 %8 %9 4 | 5 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/cli/AdminClient$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/distribution/disttemplates/client/samples/cli/AdminClient$1.class -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/cli/starter: -------------------------------------------------------------------------------- 1 | java -cp .:../../jars/swiftmq.jar $1 $2 $3 $4 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/cli/starter.bat: -------------------------------------------------------------------------------- 1 | java -cp .;../../jars/swiftmq.jar %1 %2 %3 %4 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/router_network/starter: -------------------------------------------------------------------------------- 1 | java -cp .:../../jars/swiftmq.jar $1 $2 $3 $4 $5 $6 $7 $8 $9 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/router_network/starter.bat: -------------------------------------------------------------------------------- 1 | java -cp .;../../jars/swiftmq.jar %1 %2 %3 %4 %5 %6 %7 %8 %9 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/management/install.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains 2 | new swiftmq 3 | cc /sys$streams/domains/swiftmq/packages 4 | new samples 5 | cc /sys$streams/domains/swiftmq/packages/samples/streams 6 | new queuestats script-file ../../samples/streams/management/queuestats.js 7 | save 8 | 9 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/management/remove.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains/swiftmq/packages/samples/streams 2 | delete queuestats 3 | save 4 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/nuclear/install.cli: -------------------------------------------------------------------------------- 1 | cc /sys$queuemanager/queues 2 | new tempin 3 | cc /sys$streams/domains 4 | new swiftmq 5 | cc /sys$streams/domains/swiftmq/packages 6 | new samples 7 | cc /sys$streams/domains/swiftmq/packages/samples/streams 8 | new tempmonitor script-file ../../samples/streams/nuclear/tempmonitor.js 9 | cc /sys$streams/domains/swiftmq/packages/samples/streams/tempmonitor/parameters 10 | new input-queue value tempin 11 | new mail-host value localhost 12 | new mail-user value please@change.me 13 | new mail-password value secret 14 | new mail-from value tempmonitor@company.com 15 | new mail-to value admin@company.com 16 | new mail-bcc value boss@company.com 17 | cc /sys$streams/domains/swiftmq/packages/samples/streams 18 | new tempproducer script-file ../../samples/streams/nuclear/tempproducer.js 19 | cc /sys$streams/domains/swiftmq/packages/samples/streams/tempproducer/parameters 20 | new output-queue value tempin 21 | save 22 | 23 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/nuclear/remove.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains/swiftmq/packages/samples/streams 2 | delete tempmonitor 3 | delete tempproducer 4 | cc /sys$queuemanager/queues 5 | delete tempin 6 | save 7 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/nuclear/tempproducer.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Author: IIT Software GmbH, Muenster/Germany, (c) 2016, All Rights Reserved 3 | */ 4 | 5 | // Check parameters 6 | var outputQueue = parameters.require("output-queue"); 7 | 8 | // Create the Output to send the temp messages 9 | stream.create().output(outputQueue).queue(); 10 | 11 | // Static temp data that will generate a warning and critical condition 12 | var temps = [90, 97, 101, 80, 90, 110, 120, 200, 250, 500, 450, 320, 401, 402, 450, 800]; 13 | var idx = 0; 14 | 15 | // Timer to send temps in a 2 secs interval 16 | stream.create().timer("ticker").interval().seconds(2).onTimer(function (timer) { 17 | stream.log().info("Sending temp: " + temps[idx]); 18 | var msg = stream.create().message().message().nonpersistent().property("TEMP").set(temps[idx++]); 19 | if (idx == temps.length) 20 | idx = 0; 21 | stream.output(outputQueue).send(msg); 22 | }); 23 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/ordercollect/remove.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains/swiftmq/packages/samples/streams 2 | delete ordercollector 3 | delete itemstatistics 4 | delete orderheadproducer 5 | delete orderposproducer 6 | cc /sys$queuemanager/queues 7 | delete stream_ordercollector_memory_orderhead 8 | delete stream_ordercollector_memory_orderpos 9 | delete orderscollected 10 | delete orderhead 11 | delete orderpos 12 | save 13 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/replier/install.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains 2 | new swiftmq 3 | cc /sys$streams/domains/swiftmq/packages 4 | new samples 5 | cc /sys$streams/domains/swiftmq/packages/samples/streams 6 | new replier script-file ../../samples/streams/replier/replier.js 7 | save 8 | 9 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/replier/remove.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains/swiftmq/packages/samples/streams 2 | delete replier 3 | save 4 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/samples/streams/replier/replier.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Author: IIT Software GmbH, Muenster/Germany, (c) 2016, All Rights Reserved 3 | */ 4 | 5 | // A simple echo service that creates an input on a temp queue where it receives its requests 6 | // The temp queue is registered in JNDI so that JMS clients can look it up and send requests to it 7 | stream.create().input(stream.create().tempQueue("requestQueue").registerJNDI()).queue(); 8 | 9 | stream.onMessage(function () { 10 | 11 | stream.create().output(null).forAddress(stream.current().replyTo()) 12 | .send(stream.create().message().textMessage().correlationId(stream.current().messageId()) 13 | .body("RE: " + stream.current().body())).close(); 14 | }); 15 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/cli: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.admin.cli.CLI smqp://localhost:4001 ConnectionFactory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/cli.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.admin.cli.CLI smqp://localhost:4001 ConnectionFactory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/cliamqp: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.amqp.v100.mgmt.CLILauncher amqp://localhost:5672 $1 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/cliamqp.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.amqp.v100.mgmt.CLILauncher amqp://localhost:5672 %1 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/clis: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret -Dcli.username=$1 -Dcli.password=$2 com.swiftmq.admin.cli.CLI smqp://localhost:4001 ConnectionFactory $3 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/clis.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret -Dcli.username=%1 -Dcli.password=%2 com.swiftmq.admin.cli.CLI smqp://localhost:4001 ConnectionFactory %3 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/preconfigproc: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar com.swiftmq.preconfig.Processor $1 $2 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/preconfigproc.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar com.swiftmq.preconfig.Processor %1 %2 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/repoamqp: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.streamrepo.AMQPRepo $@ 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/repoamqp.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.streamrepo.AMQPRepo %* 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/repojms: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.streamrepo.JMSRepo $@ 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/repojms.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.streamrepo.JMSRepo %* 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/runclient: -------------------------------------------------------------------------------- 1 | export cp=$1 2 | shift 3 | java -Xmx512M -cp $cp:../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret $@ 4 | 5 | -------------------------------------------------------------------------------- /distribution/disttemplates/client/scripts/shutdown.cli: -------------------------------------------------------------------------------- 1 | # CLI-Script to shutdown router 2 | # 3 | sr router 4 | halt 5 | exit 6 | 7 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/NOTICE: -------------------------------------------------------------------------------- 1 | SwiftMQ Community Edition 2 | Copyright [1996-2019] IIT Software GmbH, Muenster, Germany 3 | 4 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/deploy/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/log/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/preconfig/01-upgrade-to-12.1.0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/preconfig/04-upgrade-to-13.1.2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/store/backup/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/store/db/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/store/durables/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/store/log/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/store/swap/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/streamlib/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/data/trace/dummy.txt: -------------------------------------------------------------------------------- 1 | Placeholder to ensure the creation of this directory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/external-licenses/jquery-MIT-license.txt: -------------------------------------------------------------------------------- 1 | Copyright 2012 jQuery Foundation and other contributors 2 | http://jquery.com/ 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining 5 | a copy of this software and associated documentation files (the 6 | "Software"), to deal in the Software without restriction, including 7 | without limitation the rights to use, copy, modify, merge, publish, 8 | distribute, sublicense, and/or sell copies of the Software, and to 9 | permit persons to whom the Software is furnished to do so, subject to 10 | the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 19 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 20 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/optional-swiftlets/extension/dummy.txt: -------------------------------------------------------------------------------- 1 | Ensure directory is created -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/Readme.txt: -------------------------------------------------------------------------------- 1 | SwiftMQ Examples 2 | ================ 3 | 4 | This directory contains JMS, AMQP and Streams example programs for SwiftMQ. 5 | 6 | There are 3 subdirectories, each containing scripts to start 7 | an example. The scripts are named 'starter' resp. 'starter.bat'. 8 | 9 | router_network 10 | -------------- 11 | 12 | Contains JMS examples to be executed within a router network. 13 | 14 | amqp 15 | ---- 16 | 17 | Contains examples to demonstrate the SwiftMQ AMQP 1.0 Client. 18 | They can be used with a single router as well as with a 19 | router network. 20 | 21 | 22 | cli 23 | --- 24 | 25 | Contains examples on how to use the CLI Admin API and CLI Message Interface. 26 | 27 | streams 28 | ------- 29 | 30 | Contains subdirectories with SwiftMQ Streams samples. 31 | 32 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/amqp/starter: -------------------------------------------------------------------------------- 1 | export class=$1 2 | shift 3 | java -cp .:../../jars/swiftmq.jar -Dswiftmq.jsse.anoncipher.enabled=false -Dswiftmq.amqp.frame.debug=false -Dswiftmq.amqp.debug=false $class $@ 4 | 5 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/amqp/starter.bat: -------------------------------------------------------------------------------- 1 | set class=%1 2 | shift 3 | java -cp .;../../jars/swiftmq.jar -Dswiftmq.jsse.anoncipher.enabled=false -Dswiftmq.amqp.frame.debug=false -Dswiftmq.amqp.debug=false %class% %1 %2 %3 %4 %5 %6 %7 %8 %9 4 | 5 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/cli/AdminClient$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/distribution/disttemplates/router/samples/cli/AdminClient$1.class -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/cli/starter: -------------------------------------------------------------------------------- 1 | java -cp .:../../jars/swiftmq.jar $1 $2 $3 $4 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/cli/starter.bat: -------------------------------------------------------------------------------- 1 | java -cp .;../../jars/swiftmq.jar %1 %2 %3 %4 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/router_network/starter: -------------------------------------------------------------------------------- 1 | java -cp .:../../jars/swiftmq.jar $1 $2 $3 $4 $5 $6 $7 $8 $9 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/router_network/starter.bat: -------------------------------------------------------------------------------- 1 | java -cp .;../../jars/swiftmq.jar %1 %2 %3 %4 %5 %6 %7 %8 %9 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/management/install.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains 2 | new swiftmq 3 | cc /sys$streams/domains/swiftmq/packages 4 | new samples 5 | cc /sys$streams/domains/swiftmq/packages/samples/streams 6 | new queuestats script-file ../../samples/streams/management/queuestats.js 7 | save 8 | 9 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/management/remove.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains/swiftmq/packages/samples/streams 2 | delete queuestats 3 | save 4 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/nuclear/install.cli: -------------------------------------------------------------------------------- 1 | cc /sys$queuemanager/queues 2 | new tempin 3 | cc /sys$streams/domains 4 | new swiftmq 5 | cc /sys$streams/domains/swiftmq/packages 6 | new samples 7 | cc /sys$streams/domains/swiftmq/packages/samples/streams 8 | new tempmonitor script-file ../../samples/streams/nuclear/tempmonitor.js 9 | cc /sys$streams/domains/swiftmq/packages/samples/streams/tempmonitor/parameters 10 | new input-queue value tempin 11 | new mail-host value localhost 12 | new mail-user value please@change.me 13 | new mail-password value secret 14 | new mail-from value tempmonitor@company.com 15 | new mail-to value admin@company.com 16 | new mail-bcc value boss@company.com 17 | cc /sys$streams/domains/swiftmq/packages/samples/streams 18 | new tempproducer script-file ../../samples/streams/nuclear/tempproducer.js 19 | cc /sys$streams/domains/swiftmq/packages/samples/streams/tempproducer/parameters 20 | new output-queue value tempin 21 | save 22 | 23 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/nuclear/remove.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains/swiftmq/packages/samples/streams 2 | delete tempmonitor 3 | delete tempproducer 4 | cc /sys$queuemanager/queues 5 | delete tempin 6 | save 7 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/nuclear/tempproducer.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Author: IIT Software GmbH, Muenster/Germany, (c) 2016, All Rights Reserved 3 | */ 4 | 5 | // Check parameters 6 | var outputQueue = parameters.require("output-queue"); 7 | 8 | // Create the Output to send the temp messages 9 | stream.create().output(outputQueue).queue(); 10 | 11 | // Static temp data that will generate a warning and critical condition 12 | var temps = [90, 97, 101, 80, 90, 110, 120, 200, 250, 500, 450, 320, 401, 402, 450, 800]; 13 | var idx = 0; 14 | 15 | // Timer to send temps in a 2 secs interval 16 | stream.create().timer("ticker").interval().seconds(2).onTimer(function (timer) { 17 | stream.log().info("Sending temp: " + temps[idx]); 18 | var msg = stream.create().message().message().nonpersistent().property("TEMP").set(temps[idx++]); 19 | if (idx == temps.length) 20 | idx = 0; 21 | stream.output(outputQueue).send(msg); 22 | }); 23 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/ordercollect/remove.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains/swiftmq/packages/samples/streams 2 | delete ordercollector 3 | delete itemstatistics 4 | delete orderheadproducer 5 | delete orderposproducer 6 | cc /sys$queuemanager/queues 7 | delete stream_ordercollector_memory_orderhead 8 | delete stream_ordercollector_memory_orderpos 9 | delete orderscollected 10 | delete orderhead 11 | delete orderpos 12 | save 13 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/replier/install.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains 2 | new swiftmq 3 | cc /sys$streams/domains/swiftmq/packages 4 | new samples 5 | cc /sys$streams/domains/swiftmq/packages/samples/streams 6 | new replier script-file ../../samples/streams/replier/replier.js 7 | save 8 | 9 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/replier/remove.cli: -------------------------------------------------------------------------------- 1 | cc /sys$streams/domains/swiftmq/packages/samples/streams 2 | delete replier 3 | save 4 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/samples/streams/replier/replier.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Author: IIT Software GmbH, Muenster/Germany, (c) 2016, All Rights Reserved 3 | */ 4 | 5 | // A simple echo service that creates an input on a temp queue where it receives its requests 6 | // The temp queue is registered in JNDI so that JMS clients can look it up and send requests to it 7 | stream.create().input(stream.create().tempQueue("requestQueue").registerJNDI()).queue(); 8 | 9 | stream.onMessage(function () { 10 | 11 | stream.create().output(null).forAddress(stream.current().replyTo()) 12 | .send(stream.create().message().textMessage().correlationId(stream.current().messageId()) 13 | .body("RE: " + stream.current().body())).close(); 14 | }); 15 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/checkconfig: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | if [[ ! -d /swiftmq/data/config ]]; then 3 | mkdir /swiftmq/data/config 4 | fi 5 | if [[ ! -d /swiftmq/data/preconfig ]]; then 6 | mkdir /swiftmq/data/preconfig 7 | fi 8 | cp /swiftmq/initialpreconfig/* /swiftmq/data/preconfig/. 9 | if [[ ! -e /swiftmq/data/config/routerconfig.xml ]]; then 10 | cp /swiftmq/initialconfig/routerconfig.xml /swiftmq/data/config/. 11 | fi 12 | if [[ ! -e /swiftmq/data/deploy ]]; then 13 | mkdir /swiftmq/data/deploy 14 | fi 15 | if [[ ! -e /swiftmq/data/log ]]; then 16 | mkdir /swiftmq/data/log 17 | fi 18 | 19 | rsync -av /swiftmq/optional-swiftlets/extension/ /swiftmq/data/deploy/ 20 | cd /swiftmq/scripts 21 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/checkstore: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo $1 3 | if [ "$1" = "JDBC" ]; then 4 | echo "Using JDBC Store Swiftlet" 5 | rm -f /swiftmq/kernel/sys\$store/* 6 | cp /swiftmq/optional-swiftlets/kernel/sys_store_jdbc/deploy/* /swiftmq/kernel/sys\$store/. 7 | if [ "$(ls -A /swiftmq/jdbc-driver)" ]; then 8 | cp /swiftmq/jdbc-driver/* /swiftmq/kernel/sys\$store/. 9 | fi 10 | else 11 | echo "Using standard Store Swiftlet" 12 | rm -f /swiftmq/kernel/sys\$store/* 13 | cp /swiftmq/opt/sys\$store/standard/* /swiftmq/kernel/sys\$store/. 14 | fi 15 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/cli: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.admin.cli.CLI smqp://localhost:4001 ConnectionFactory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/cli.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.admin.cli.CLI smqp://localhost:4001 ConnectionFactory 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/cliamqp: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.amqp.v100.mgmt.CLILauncher amqp://localhost:5672 $1 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/cliamqp.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.amqp.v100.mgmt.CLILauncher amqp://localhost:5672 %1 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/clis: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret -Dcli.username=$1 -Dcli.password=$2 com.swiftmq.admin.cli.CLI smqp://localhost:4001 ConnectionFactory $3 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/clis.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret -Dcli.username=%1 -Dcli.password=%2 com.swiftmq.admin.cli.CLI smqp://localhost:4001 ConnectionFactory %3 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/preconfigproc: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar com.swiftmq.preconfig.Processor $1 $2 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/preconfigproc.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar com.swiftmq.preconfig.Processor %1 %2 2 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/repoamqp: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.streamrepo.AMQPRepo $@ 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/repoamqp.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.streamrepo.AMQPRepo %* 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/repojms: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.streamrepo.JMSRepo $@ 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/repojms.bat: -------------------------------------------------------------------------------- 1 | java -cp ../jars/swiftmq.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret com.swiftmq.streamrepo.JMSRepo %* 2 | 3 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/scripts/shutdown.cli: -------------------------------------------------------------------------------- 1 | # CLI-Script to shutdown router 2 | # 3 | sr router 4 | halt 5 | exit 6 | 7 | -------------------------------------------------------------------------------- /distribution/disttemplates/router/version.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright 2019 IIT Software GmbH 3 | # 4 | # IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | # 16 | # 17 | 18 | vendor = ${vendor} 19 | distribution = ${distribution} 20 | release = ${release} 21 | -------------------------------------------------------------------------------- /distribution/disttemplates/testsuite/NOTICE: -------------------------------------------------------------------------------- 1 | SwiftMQ Community Edition 2 | Copyright [1996-2019] IIT Software GmbH 3 | 4 | -------------------------------------------------------------------------------- /distribution/disttemplates/testsuite/scripts/amqp/createqueues.cli: -------------------------------------------------------------------------------- 1 | wr router 2 | sr router 3 | cc /sys$queuemanager/queues 4 | new amqp_testqueue1 5 | new amqp_testqueue2 6 | new amqp_testqueue3 7 | new amqp_testqueue4 8 | new amqp_testqueue5 9 | new amqp_testqueue6 10 | new amqp_testqueue7 11 | new amqp_testqueue8 12 | new amqp_testqueue9 13 | new amqp_testqueue10 14 | cc /sys$topicmanager/topics 15 | new amqp_testtopic1 16 | new amqp_testtopic2 17 | new amqp_testtopic3 18 | new amqp_testtopic4 19 | new amqp_testtopic5 20 | new amqp_testtopic6 21 | new amqp_testtopic7 22 | new amqp_testtopic8 23 | new amqp_testtopic9 24 | new amqp_testtopic10 25 | save 26 | exit 27 | 28 | -------------------------------------------------------------------------------- /distribution/disttemplates/testsuite/scripts/amqp/deletequeues.cli: -------------------------------------------------------------------------------- 1 | wr router 2 | sr router 3 | cc /sys$queuemanager/queues 4 | delete amqp_testqueue1 5 | delete amqp_testqueue2 6 | delete amqp_testqueue3 7 | delete amqp_testqueue4 8 | delete amqp_testqueue5 9 | delete amqp_testqueue6 10 | delete amqp_testqueue7 11 | delete amqp_testqueue8 12 | delete amqp_testqueue9 13 | delete amqp_testqueue10 14 | cc /sys$topicmanager/topics 15 | delete amqp_testtopic1 16 | delete amqp_testtopic2 17 | delete amqp_testtopic3 18 | delete amqp_testtopic4 19 | delete amqp_testtopic5 20 | delete amqp_testtopic6 21 | delete amqp_testtopic7 22 | delete amqp_testtopic8 23 | delete amqp_testtopic9 24 | delete amqp_testtopic10 25 | save 26 | exit 27 | -------------------------------------------------------------------------------- /distribution/disttemplates/testsuite/scripts/jms/createqueues.cli: -------------------------------------------------------------------------------- 1 | wr router 2 | sr router 3 | cc /sys$queuemanager/queues 4 | new t0 5 | new t1 6 | new t2 7 | new t3 8 | new t4 9 | new testqueue1 10 | new testqueue2 11 | new testqueue3 12 | new testqueue4 13 | new testqueue5 14 | new complink1 15 | new complink2 16 | new complink3 17 | new c1 18 | new c2 19 | new c3 20 | new c4 21 | new c5 22 | new c6 23 | cc /sys$queuemanager/clustered-queues 24 | new cqueue 25 | cc cqueue/queue-bindings 26 | new c1 27 | new c2 28 | new c3 29 | new c4 30 | new c5 31 | new c6 32 | cc /sys$queuemanager/composite-queues 33 | new compqueue 34 | cc compqueue/queue-bindings 35 | new complink1 generate-new-message-id false change-destination true 36 | new complink2 generate-new-message-id false change-destination false 37 | new complink3 generate-new-message-id false change-destination false message-selector "Prop = 'X'" 38 | cc /sys$topicmanager/topics 39 | new testtopic1 40 | new testtopic2 41 | new testtopic3 42 | new testtopic4 43 | new testtopic5 44 | save 45 | exit 46 | 47 | -------------------------------------------------------------------------------- /distribution/disttemplates/testsuite/scripts/jms/deletequeues.cli: -------------------------------------------------------------------------------- 1 | wr router 2 | sr router 3 | cc /sys$queuemanager/clustered-queues 4 | delete cqueue 5 | cc /sys$queuemanager/composite-queues 6 | delete compqueue 7 | cc /sys$queuemanager/queues 8 | delete t0 9 | delete t1 10 | delete t2 11 | delete t3 12 | delete t4 13 | delete testqueue1 14 | delete testqueue2 15 | delete testqueue3 16 | delete testqueue4 17 | delete testqueue5 18 | delete complink1 19 | delete complink2 20 | delete complink3 21 | delete c1 22 | delete c2 23 | delete c3 24 | delete c4 25 | delete c5 26 | delete c6 27 | cc /sys$topicmanager/topics 28 | delete testtopic1 29 | delete testtopic2 30 | delete testtopic3 31 | delete testtopic4 32 | delete testtopic5 33 | save 34 | exit 35 | -------------------------------------------------------------------------------- /distribution/disttemplates/testsuite/scripts/runamqp: -------------------------------------------------------------------------------- 1 | export ROUTER=$1 2 | export TESTSUITE=`pwd` 3 | cd $ROUTER/scripts 4 | ./clis admin secret $TESTSUITE/amqp/createqueues.cli 5 | cd $TESTSUITE 6 | java -Xmx1024M -cp $TESTSUITE/../jars/swiftmq-testsuite.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret -Dusesasl=true -Danonlogin=true -Dnmsgs=1000 -Dpersistent=true -Dnpairs=10 org.junit.runner.JUnitCore amqp.Suite 7 | cd $ROUTER/scripts 8 | ./clis admin secret $TESTSUITE/amqp/deletequeues.cli 9 | cd $TESTSUITE 10 | -------------------------------------------------------------------------------- /distribution/disttemplates/testsuite/scripts/runjms: -------------------------------------------------------------------------------- 1 | export ROUTER=$1 2 | export TESTSUITE=`pwd` 3 | cd $ROUTER/scripts 4 | ./clis admin secret $TESTSUITE/jms/createqueues.cli 5 | cd $TESTSUITE 6 | java -Xmx1024M -cp $TESTSUITE/../jars/swiftmq-testsuite.jar -Djavax.net.ssl.trustStore=../certs/client.truststore -Djavax.net.ssl.trustStorePassword=secret -Dswiftmq.reconnect.debug=false -Dswiftmq.client.debugtofile.enabled=true -Djndi.class=com.swiftmq.jndi.InitialContextFactoryImpl -Djndi.url="smqp://localhost:4001/host2=localhost;port2=4002;reconnect=true;retrydelay=1000;maxretries=1000;timeout=10000;type=com.swiftmq.net.PlainSocketFactory;debug=false" -Djndi.qcf=plainsocket@router -Djndi.queue=testqueue@router -Djndi.composite.queue=compqueue -Dha.composite.nmsgs=20000 -Djndi.cluster.queue=cqueue -Djndi.cluster.cc.queue=c1 -Djndi.tcf=plainsocket@router -Djndi.topic=testtopic -Dha.cluster.nmsgs=20000 -Dload.requestreply.requestors=10 -Dload.requestreply.msgs=10000 -Dfunc.selector.load.nmsgs=25000 -Dswiftmq.request.timeout=600000 -Dswiftmq.message.tracking.enabled=false -Dswiftmq.message.tracking.filename=track_ps.out -Dswiftmq.smqp.handler.debug=false org.junit.runner.JUnitCore jms.func.Suite jms.funcunified.Suite 7 | cd $ROUTER/scripts 8 | ./clis admin secret $TESTSUITE/jms/deletequeues.cli 9 | cd $TESTSUITE 10 | -------------------------------------------------------------------------------- /distribution/docker/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ghcr.io/graalvm/graalvm-community:24.0.0 2 | RUN microdnf install -y rsync gzip 3 | COPY swiftmq.tar.gz /swiftmq.tar.gz 4 | WORKDIR / 5 | RUN tar xvfz swiftmq.tar.gz 6 | RUN mkdir -p /swiftmq/preconfig mkdir /swiftmq/initialconfig mkdir /swiftmq/initialpreconfig 7 | COPY /swiftmq/data/config/routerconfig.xml /swiftmq/initialconfig/. 8 | COPY /swiftmq/data/preconfig/* /swiftmq/initialpreconfig/. 9 | ENV SWIFTMQ_INITIAL_CONFIG /swiftmq/initialconfig/routerconfig.xml 10 | ENV SWIFTMQ_IN_DOCKER true 11 | WORKDIR /swiftmq/scripts 12 | RUN echo $JAVA_HOME > .javahome && echo $JAVA_HOME/bin > .executables 13 | CMD ./checkconfig && exec ./router $SWIFTMQ_PRECONFIG 14 | 15 | 16 | -------------------------------------------------------------------------------- /distribution/src/assembly/client.xml: -------------------------------------------------------------------------------- 1 | 2 | client 3 | 4 | tar.gz 5 | zip 6 | 7 | false 8 | 9 | 10 | disttemplates/client 11 | ${project.artifactId}_${project.version}_client 12 | 0755 13 | 14 | 15 | disttemplates/certs 16 | ${project.artifactId}_${project.version}_client/certs 17 | false 18 | 19 | 20 | 21 | 22 | ../router/target/swiftmq.jar 23 | ${project.artifactId}_${project.version}_client/jars 24 | 25 | 26 | -------------------------------------------------------------------------------- /distribution/src/assembly/filter.properties: -------------------------------------------------------------------------------- 1 | vendor=IIT Software GmbH, Muenster, Germany 2 | release=13.01.02 3 | distribution=Community Edition 4 | 5 | 6 | -------------------------------------------------------------------------------- /router/src/main/java/com/swiftmq/JavaHome.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2020 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq; 19 | 20 | public class JavaHome { 21 | public static void main(String[] args) { 22 | System.out.print(System.getProperty("java.home")); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_amqp 15 | 13.1.2 16 | 17 | 18 | 19 | 20 | com.swiftmq 21 | swiftmq-client 22 | 13.1.2 23 | 24 | 25 | 26 | ${project.artifactId} 27 | 28 | 29 | maven-compiler-plugin 30 | 3.11.0 31 | 32 | 21 33 | 21 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/Handler.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp; 19 | 20 | import com.swiftmq.net.client.InboundHandler; 21 | 22 | public interface Handler extends InboundHandler { 23 | String getVersion(); 24 | 25 | void collect(long lastCollect); 26 | 27 | void close(); 28 | } 29 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/HandlerFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp; 19 | 20 | public interface HandlerFactory { 21 | Handler createHandler(VersionedConnection versionedConnection); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/OutboundTracer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp; 19 | 20 | public interface OutboundTracer { 21 | String getTraceKey(); 22 | 23 | String getTraceString(Object obj); 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v00_09_01/Exchange.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v00_09_01; 19 | 20 | public interface Exchange { 21 | int DIRECT = 1; 22 | int FANOUT = 2; 23 | int TOPIC = 3; 24 | 25 | int getType(); 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v00_09_01/ExchangeFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v00_09_01; 19 | 20 | public interface ExchangeFactory { 21 | Exchange create() throws Exception; 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v00_09_01/transformer/DestinationFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v00_09_01.transformer; 19 | 20 | import javax.jms.Destination; 21 | 22 | public interface DestinationFactory { 23 | Destination create(String name); 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v00_09_01/transformer/Util.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v00_09_01.transformer; 19 | 20 | public class Util { 21 | static final String PROP_MESSAGE_FORMAT = "MESSAGE_FORMAT"; 22 | static final long MESSAGE_FORMAT = 91; 23 | } -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/EndWithErrorExceptionVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00; 19 | 20 | public interface EndWithErrorExceptionVisitor { 21 | public void visit(LinkEndException exception); 22 | 23 | public void visit(SessionEndException exception); 24 | 25 | public void visit(ConnectionEndException exception); 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/EndWithErrorExceptionVisitorAdapter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00; 19 | 20 | public class EndWithErrorExceptionVisitorAdapter implements EndWithErrorExceptionVisitor { 21 | public void visit(LinkEndException exception) { 22 | } 23 | 24 | public void visit(SessionEndException exception) { 25 | } 26 | 27 | public void visit(ConnectionEndException exception) { 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transaction/InvalidTransactionId.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transaction; 19 | 20 | public class InvalidTransactionId extends Exception { 21 | public InvalidTransactionId(String s) { 22 | super(s); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transaction/QueueReceiverProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transaction; 19 | 20 | import com.swiftmq.swiftlet.queue.QueueReceiver; 21 | 22 | public interface QueueReceiverProvider extends ResourceProvider { 23 | QueueReceiver getQueueReceiver(); 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transaction/QueueSenderProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transaction; 19 | 20 | import com.swiftmq.swiftlet.queue.QueueSender; 21 | 22 | public interface QueueSenderProvider extends ResourceProvider { 23 | QueueSender getQueueSender(); 24 | 25 | } 26 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transaction/ResourceProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transaction; 19 | 20 | public interface ResourceProvider { 21 | void increaseActiveTransactions(); 22 | 23 | void decreaseActiveTransactions(); 24 | 25 | void closeResource(); 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transformer/BodyFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transformer; 19 | 20 | import com.swiftmq.amqp.v100.client.AMQPException; 21 | import com.swiftmq.amqp.v100.messaging.AMQPMessage; 22 | import com.swiftmq.jms.MessageImpl; 23 | 24 | import javax.jms.JMSException; 25 | 26 | public interface BodyFactory { 27 | void createBody(MessageImpl jmsMessage, AMQPMessage amqpMessage) throws JMSException, AMQPException; 28 | } 29 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transformer/DestinationFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transformer; 19 | 20 | import com.swiftmq.amqp.v100.generated.messaging.message_format.AddressIF; 21 | 22 | import javax.jms.Destination; 23 | 24 | public interface DestinationFactory { 25 | public Destination create(AddressIF addressIF); 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transformer/MessageFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transformer; 19 | 20 | import com.swiftmq.amqp.v100.messaging.AMQPMessage; 21 | import com.swiftmq.jms.MessageImpl; 22 | 23 | public interface MessageFactory { 24 | String PROP_ERROR = "JMS_SWIFTMQ_TRANSFORM_ERROR"; 25 | String PROP_ERROR_CAUSE = "JMS_SWIFTMQ_TRANSFORM_CAUSE"; 26 | 27 | MessageImpl create(AMQPMessage source) throws Exception; 28 | } 29 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transformer/NameTranslator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transformer; 19 | 20 | public interface NameTranslator { 21 | String translate(String source); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transformer/NullNameTranslator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transformer; 19 | 20 | public class NullNameTranslator implements NameTranslator { 21 | public String translate(String source) { 22 | return source; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/amqp/v01_00_00/transformer/UnderscoreToDashNameTranslator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.amqp.v01_00_00.transformer; 19 | 20 | public class UnderscoreToDashNameTranslator implements NameTranslator { 21 | public String translate(String source) { 22 | return source.replace('_', '-'); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/java/com/swiftmq/impl/amqp/sasl/v01_00_00/SASLVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.amqp.sasl.v01_00_00; 19 | 20 | import com.swiftmq.impl.amqp.sasl.v01_00_00.po.POClose; 21 | import com.swiftmq.impl.amqp.sasl.v01_00_00.po.POSaslFrameReceived; 22 | import com.swiftmq.impl.amqp.sasl.v01_00_00.po.POSendInit; 23 | import com.swiftmq.tools.pipeline.POVisitor; 24 | 25 | public interface SASLVisitor extends POVisitor { 26 | void visit(POSendInit po); 27 | 28 | void visit(POSaslFrameReceived po); 29 | 30 | void visit(POClose po); 31 | } 32 | -------------------------------------------------------------------------------- /swiftlets/sys_amqp/src/main/resources/sys_amqp/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_amqp/src/main/resources/sys_amqp/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_authentication/src/main/java/com/swiftmq/impl/auth/standard/ResourceGrant.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.auth.standard; 19 | 20 | public class ResourceGrant { 21 | String resourceName; 22 | 23 | protected ResourceGrant(String resourceName) { 24 | this.resourceName = resourceName; 25 | } 26 | 27 | public String getResourceName() { 28 | return (resourceName); 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /swiftlets/sys_authentication/src/main/resources/sys_authentication/images/groups.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_authentication/src/main/resources/sys_authentication/images/groups.png -------------------------------------------------------------------------------- /swiftlets/sys_authentication/src/main/resources/sys_authentication/images/rlg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_authentication/src/main/resources/sys_authentication/images/rlg.png -------------------------------------------------------------------------------- /swiftlets/sys_authentication/src/main/resources/sys_authentication/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_authentication/src/main/resources/sys_authentication/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_authentication/src/main/resources/sys_authentication/images/users.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_authentication/src/main/resources/sys_authentication/images/users.png -------------------------------------------------------------------------------- /swiftlets/sys_deploy/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_deploy 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_deploy/src/main/resources/sys_deploy/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_deploy/src/main/resources/sys_deploy/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_jms/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_jms 15 | 13.1.2 16 | 17 | 18 | 19 | 20 | com.swiftmq 21 | swiftmq-client 22 | 13.1.2 23 | 24 | 25 | 26 | ${project.artifactId} 27 | 28 | 29 | maven-compiler-plugin 30 | 3.11.0 31 | 32 | 21 33 | 21 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /swiftlets/sys_jms/src/main/java/com/swiftmq/impl/jms/standard/VersionedJMSConnection.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.jms.standard; 19 | 20 | import com.swiftmq.swiftlet.net.InboundHandler; 21 | import com.swiftmq.tools.requestreply.Reply; 22 | 23 | public interface VersionedJMSConnection { 24 | InboundHandler getInboundHandler(); 25 | 26 | void sendReply(Reply reply); 27 | 28 | void collect(long lastCollectTime); 29 | 30 | void close(); 31 | } 32 | -------------------------------------------------------------------------------- /swiftlets/sys_jms/src/main/java/com/swiftmq/impl/jms/standard/v750/ConnectionVisitorAdapter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.jms.standard.v750; 19 | 20 | import com.swiftmq.jms.smqp.v750.SMQPVisitorAdapter; 21 | 22 | public class ConnectionVisitorAdapter extends SMQPVisitorAdapter { 23 | public void visit(CollectRequest collectRequest) { 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /swiftlets/sys_jms/src/main/java/com/swiftmq/impl/jms/standard/v750/SessionVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.jms.standard.v750; 19 | 20 | import com.swiftmq.jms.smqp.v750.SMQPVisitorAdapter; 21 | import com.swiftmq.tools.requestreply.GenericRequest; 22 | 23 | public class SessionVisitor extends SMQPVisitorAdapter { 24 | public void visit(DeliveryItem item) { 25 | } 26 | 27 | public void visit(RegisterMessageProcessor request) { 28 | } 29 | 30 | public void visit(RunMessageProcessor request) { 31 | } 32 | 33 | public void visitGenericRequest(GenericRequest request) { 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /swiftlets/sys_jms/src/main/java/com/swiftmq/impl/jms/standard/v750/TransactionFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.jms.standard.v750; 19 | 20 | import com.swiftmq.swiftlet.queue.QueueTransaction; 21 | 22 | public interface TransactionFactory { 23 | 24 | QueueTransaction createTransaction() throws Exception; 25 | 26 | void markForClose(); 27 | 28 | boolean isMarkedForClose(); 29 | } 30 | 31 | -------------------------------------------------------------------------------- /swiftlets/sys_jms/src/main/resources/sys_jms/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_jms/src/main/resources/sys_jms/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_jndi/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_jndi 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_jndi/src/main/resources/sys_jndi/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_jndi/src/main/resources/sys_jndi/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_log/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_log 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_log/src/main/resources/sys_log/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_log/src/main/resources/sys_log/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_mgmt/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_mgmt 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_mgmt/src/main/java/com/swiftmq/impl/mgmt/standard/Dispatcher.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mgmt.standard; 19 | 20 | import com.swiftmq.impl.mgmt.standard.po.EventObject; 21 | 22 | public interface Dispatcher { 23 | void process(EventObject event); 24 | 25 | void flush(); 26 | 27 | boolean isInvalid(); 28 | 29 | boolean isExpired(); 30 | 31 | void doExpire(); 32 | 33 | void doDisconnect(); 34 | 35 | void close(); 36 | } 37 | -------------------------------------------------------------------------------- /swiftlets/sys_mgmt/src/main/java/com/swiftmq/impl/mgmt/standard/po/CheckExpire.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mgmt.standard.po; 19 | 20 | import com.swiftmq.tools.pipeline.POObject; 21 | import com.swiftmq.tools.pipeline.POVisitor; 22 | 23 | public class CheckExpire extends POObject { 24 | public CheckExpire() { 25 | super(null, null); 26 | } 27 | 28 | public void accept(POVisitor visitor) { 29 | ((EventVisitor) visitor).visit(this); 30 | } 31 | 32 | public String toString() { 33 | return "[CheckExpire]"; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /swiftlets/sys_mgmt/src/main/java/com/swiftmq/impl/mgmt/standard/po/Close.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mgmt.standard.po; 19 | 20 | import com.swiftmq.tools.concurrent.Semaphore; 21 | import com.swiftmq.tools.pipeline.POObject; 22 | import com.swiftmq.tools.pipeline.POVisitor; 23 | 24 | public class Close extends POObject { 25 | public Close(Semaphore sem) { 26 | super(null, sem); 27 | } 28 | 29 | public void accept(POVisitor visitor) { 30 | ((EventVisitor) visitor).visit(this); 31 | } 32 | 33 | public String toString() { 34 | return "[Close]"; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /swiftlets/sys_mgmt/src/main/java/com/swiftmq/impl/mgmt/standard/po/EventObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mgmt.standard.po; 19 | 20 | import com.swiftmq.tools.concurrent.Semaphore; 21 | import com.swiftmq.tools.pipeline.POObject; 22 | 23 | public abstract class EventObject extends POObject { 24 | public EventObject(Semaphore semaphore) { 25 | super(null, semaphore); 26 | } 27 | 28 | public EventObject() { 29 | this(null); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /swiftlets/sys_mgmt/src/main/java/com/swiftmq/impl/mgmt/standard/po/EventVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mgmt.standard.po; 19 | 20 | public interface EventVisitor extends EventObjectVisitor { 21 | public void visit(CheckExpire event); 22 | 23 | public void visit(SendUpdates event); 24 | 25 | public void visit(Close event); 26 | 27 | public void visit(Disconnect event); 28 | } 29 | -------------------------------------------------------------------------------- /swiftlets/sys_mgmt/src/main/java/com/swiftmq/impl/mgmt/standard/po/SendUpdates.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mgmt.standard.po; 19 | 20 | import com.swiftmq.tools.pipeline.POObject; 21 | import com.swiftmq.tools.pipeline.POVisitor; 22 | 23 | public class SendUpdates extends POObject { 24 | public SendUpdates() { 25 | super(null, null); 26 | } 27 | 28 | public void accept(POVisitor visitor) { 29 | ((EventVisitor) visitor).visit(this); 30 | } 31 | 32 | public String toString() { 33 | return "[SendUpdates]"; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /swiftlets/sys_mgmt/src/main/resources/sys_mgmt/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_mgmt/src/main/resources/sys_mgmt/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_mqtt/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_mqtt 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_mqtt/src/main/java/com/swiftmq/impl/mqtt/po/POClose.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mqtt.po; 19 | 20 | import com.swiftmq.tools.concurrent.Semaphore; 21 | import com.swiftmq.tools.pipeline.POObject; 22 | import com.swiftmq.tools.pipeline.POVisitor; 23 | 24 | public class POClose extends POObject { 25 | public POClose(Semaphore semaphore) { 26 | super(null, semaphore); 27 | } 28 | 29 | public void accept(POVisitor visitor) { 30 | ((MQTTVisitor) visitor).visit(this); 31 | } 32 | 33 | public String toString() { 34 | return "[POClose]"; 35 | } 36 | } -------------------------------------------------------------------------------- /swiftlets/sys_mqtt/src/main/java/com/swiftmq/impl/mqtt/retain/Retainer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mqtt.retain; 19 | 20 | import com.swiftmq.impl.mqtt.v311.netty.handler.codec.mqtt.MqttPublishMessage; 21 | 22 | import java.util.List; 23 | 24 | public interface Retainer { 25 | void add(String mqttTopic, MqttPublishMessage message); 26 | 27 | List get(String mqttTopic); 28 | 29 | void close(); 30 | } 31 | -------------------------------------------------------------------------------- /swiftlets/sys_mqtt/src/main/java/com/swiftmq/impl/mqtt/session/AssociateSessionCallback.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mqtt.session; 19 | 20 | import com.swiftmq.impl.mqtt.connection.MQTTConnection; 21 | 22 | public interface AssociateSessionCallback { 23 | MQTTConnection getMqttConnection(); 24 | 25 | void associated(MQTTSession session); 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_mqtt/src/main/java/com/swiftmq/impl/mqtt/v311/MqttListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mqtt.v311; 19 | 20 | import com.swiftmq.impl.mqtt.v311.netty.handler.codec.mqtt.MqttMessage; 21 | 22 | import java.util.List; 23 | 24 | public interface MqttListener { 25 | void onMessage(List messageList); 26 | 27 | void onException(Exception e); 28 | } 29 | -------------------------------------------------------------------------------- /swiftlets/sys_mqtt/src/main/java/com/swiftmq/impl/mqtt/v311/netty/util/Constant.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | package com.swiftmq.impl.mqtt.v311.netty.util; 18 | 19 | /** 20 | * A singleton which is safe to compare via the {@code ==} operator. Created and managed by {@link ConstantPool}. 21 | */ 22 | public interface Constant> extends Comparable { 23 | 24 | /** 25 | * Returns the unique number assigned to this {@link Constant}. 26 | */ 27 | int id(); 28 | 29 | /** 30 | * Returns the name of this {@link Constant}. 31 | */ 32 | String name(); 33 | } 34 | -------------------------------------------------------------------------------- /swiftlets/sys_mqtt/src/main/java/com/swiftmq/impl/mqtt/v311/netty/util/internal/EmptyArrays.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.mqtt.v311.netty.util.internal; 19 | 20 | 21 | public final class EmptyArrays { 22 | 23 | public static final byte[] EMPTY_BYTES = {}; 24 | 25 | private EmptyArrays() { 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /swiftlets/sys_mqtt/src/main/resources/sys_mqtt/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_mqtt/src/main/resources/sys_mqtt/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_net_netty/src/main/java/com/swiftmq/impl/net/netty/Countable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.net.netty; 19 | 20 | public interface Countable { 21 | void addByteCount(long cnt); 22 | 23 | long getByteCount(); 24 | 25 | void resetByteCount(); 26 | } 27 | 28 | -------------------------------------------------------------------------------- /swiftlets/sys_net_netty/src/main/resources/sys_net/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_net_netty/src/main/resources/sys_net/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_queuemanager 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/cluster/ClusteredQueueFlowController.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.cluster; 19 | 20 | import com.swiftmq.swiftlet.queue.FlowController; 21 | 22 | public class ClusteredQueueFlowController extends FlowController { 23 | public void setLastDelay(long lastDelay) { 24 | this.lastDelay.set(lastDelay); 25 | } 26 | 27 | public long getNewDelay() { 28 | return lastDelay.get(); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/cluster/ClusteredQueueMetric.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.cluster; 19 | 20 | import com.swiftmq.tools.dump.Dumpable; 21 | 22 | import java.util.List; 23 | 24 | public interface ClusteredQueueMetric extends Dumpable { 25 | String getClusteredQueueName(); 26 | 27 | void setReceiverSomewhere(boolean b); 28 | 29 | boolean isReceiverSomewhere(); 30 | 31 | List getQueueMetrics(); 32 | } 33 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/cluster/ClusteredQueueMetricCollection.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.cluster; 19 | 20 | import com.swiftmq.tools.dump.Dumpable; 21 | 22 | import java.util.List; 23 | 24 | public interface ClusteredQueueMetricCollection extends Dumpable { 25 | String getRouterName(); 26 | 27 | List getClusteredQueueMetrics(); 28 | } 29 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/cluster/DispatchPolicyListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.cluster; 19 | 20 | public interface DispatchPolicyListener { 21 | void dispatchQueueRemoved(String queueName); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/cluster/MessageGroupDispatchPolicyFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.cluster; 19 | 20 | import com.swiftmq.impl.queue.standard.SwiftletContext; 21 | import com.swiftmq.mgmt.Entity; 22 | 23 | public interface MessageGroupDispatchPolicyFactory { 24 | MessageGroupDispatchPolicy create(SwiftletContext ctx, Entity myEntity, String clusteredQueueName, DispatchPolicy parent); 25 | } 26 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/cluster/QueueMetric.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.cluster; 19 | 20 | import com.swiftmq.tools.dump.Dumpable; 21 | 22 | 23 | public interface QueueMetric extends Dumpable { 24 | String getQueueName(); 25 | 26 | void setHasReceiver(boolean b); 27 | 28 | boolean hasReceiver(); 29 | 30 | void setRouterName(String routerName); 31 | 32 | String getRouterName(); 33 | 34 | void setRedispatch(boolean redispatch); 35 | 36 | boolean isRedispatch(); 37 | } 38 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/command/ViewEntry.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.command; 19 | 20 | import com.swiftmq.swiftlet.queue.MessageEntry; 21 | 22 | public class ViewEntry { 23 | MessageEntry messageEntry; 24 | int index; 25 | 26 | public ViewEntry(MessageEntry messageEntry, int index) { 27 | this.messageEntry = messageEntry; 28 | this.index = index; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/composite/CompositeQueueFlowController.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.composite; 19 | 20 | import com.swiftmq.swiftlet.queue.FlowController; 21 | 22 | public class CompositeQueueFlowController extends FlowController { 23 | public void setLastDelay(long lastDelay) { 24 | this.lastDelay.set(lastDelay); 25 | } 26 | 27 | public long getNewDelay() { 28 | return lastDelay.get(); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/queue/CacheTableFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.queue; 19 | 20 | import java.util.Map; 21 | 22 | public interface CacheTableFactory { 23 | Map createCacheTable(String queueName, int initialSize); 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/queue/CacheTableFactoryImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.queue; 19 | 20 | import java.util.HashMap; 21 | import java.util.Map; 22 | 23 | public class CacheTableFactoryImpl implements CacheTableFactory { 24 | public Map createCacheTable(String queueName, int initialSize) { 25 | return new HashMap(initialSize); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/queue/MessageLockedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.queue; 19 | 20 | import com.swiftmq.swiftlet.queue.QueueException; 21 | 22 | public class MessageLockedException extends QueueException { 23 | public MessageLockedException(String string) { 24 | super(string); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/java/com/swiftmq/impl/queue/standard/queue/MessageQueueFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.queue.standard.queue; 19 | 20 | import com.swiftmq.impl.queue.standard.SwiftletContext; 21 | import com.swiftmq.swiftlet.store.NonPersistentStore; 22 | import com.swiftmq.swiftlet.store.PersistentStore; 23 | 24 | public interface MessageQueueFactory { 25 | public MessageQueue createMessageQueue(SwiftletContext ctx, String localQueueName, Cache cache, PersistentStore pStore, NonPersistentStore nStore, long cleanUpDelay); 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_queuemanager/src/main/resources/sys_queuemanager/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_queuemanager/src/main/resources/sys_queuemanager/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_routing/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_routing 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/connection/event/ActivationListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.routing.single.connection.event; 19 | 20 | import com.swiftmq.impl.routing.single.connection.RoutingConnection; 21 | 22 | public interface ActivationListener { 23 | void activated(RoutingConnection routingConnection); 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/manager/event/ConnectionListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.routing.single.manager.event; 19 | 20 | 21 | public interface ConnectionListener { 22 | void connectionAdded(ConnectionEvent evt); 23 | 24 | void connectionRemoved(ConnectionEvent evt); 25 | } 26 | 27 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/manager/po/POCMVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.routing.single.manager.po; 19 | 20 | import com.swiftmq.tools.pipeline.POVisitor; 21 | 22 | public interface POCMVisitor extends POVisitor { 23 | void visit(POAddObject po); 24 | 25 | void visit(PORemoveObject po); 26 | 27 | void visit(PORemoveAllObject po); 28 | } 29 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/route/po/POExchangeVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.routing.single.route.po; 19 | 20 | import com.swiftmq.tools.pipeline.POVisitor; 21 | 22 | public interface POExchangeVisitor extends POVisitor { 23 | void visit(PORouteObject po); 24 | 25 | void visit(POConnectionActivatedObject po); 26 | 27 | void visit(POConnectionRemoveObject po); 28 | } 29 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/schedule/po/POSchedulerVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.routing.single.schedule.po; 19 | 20 | import com.swiftmq.tools.pipeline.POVisitor; 21 | 22 | public interface POSchedulerVisitor extends POVisitor { 23 | void visit(PODeliverObject po); 24 | 25 | void visit(PODeliveredObject po); 26 | 27 | void visit(POConnectionAddedObject po); 28 | 29 | void visit(POConnectionRemovedObject po); 30 | 31 | void visit(POCloseObject po); 32 | } 33 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/smqpr/DeliveryCallback.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.routing.single.smqpr; 19 | 20 | public interface DeliveryCallback { 21 | public void delivered(DeliveryRequest deliveryRequest); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/single/smqpr/RequestHandler.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.routing.single.smqpr; 19 | 20 | import com.swiftmq.tools.requestreply.Request; 21 | 22 | public interface RequestHandler { 23 | public void visited(Request request); 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/java/com/swiftmq/impl/routing/unlimited/UConnectionManager.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.routing.unlimited; 19 | 20 | import com.swiftmq.impl.routing.single.SwiftletContext; 21 | import com.swiftmq.impl.routing.single.manager.ConnectionManager; 22 | 23 | public class UConnectionManager extends ConnectionManager { 24 | public UConnectionManager(SwiftletContext context) { 25 | super(context); 26 | } 27 | 28 | protected boolean isLicenseLimit() { 29 | return false; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /swiftlets/sys_routing/src/main/resources/sys_routing/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_routing/src/main/resources/sys_routing/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_scheduler/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_scheduler 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_scheduler/src/main/resources/sys_scheduler/images/calendar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_scheduler/src/main/resources/sys_scheduler/images/calendar.png -------------------------------------------------------------------------------- /swiftlets/sys_scheduler/src/main/resources/sys_scheduler/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_scheduler/src/main/resources/sys_scheduler/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_scheduler/src/main/resources/sys_scheduler/images/trigger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_scheduler/src/main/resources/sys_scheduler/images/trigger.png -------------------------------------------------------------------------------- /swiftlets/sys_scheduler/src/main/resources/sys_scheduler/images/triggers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_scheduler/src/main/resources/sys_scheduler/images/triggers.png -------------------------------------------------------------------------------- /swiftlets/sys_store/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_store 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/cache/CacheReleaseListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.cache; 19 | 20 | public interface CacheReleaseListener { 21 | void releaseCache(); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/index/PageRecorder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.index; 19 | 20 | public interface PageRecorder { 21 | public void recordPageNo(long pageNo); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/index/QueueIndexPage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.index; 19 | 20 | import com.swiftmq.impl.store.standard.StoreContext; 21 | 22 | public class QueueIndexPage extends IndexPage { 23 | public QueueIndexPage(StoreContext ctx, int pageNo) { 24 | super(ctx, pageNo); 25 | } 26 | 27 | protected IndexEntry createIndexEntry() { 28 | return new QueueIndexEntry(); 29 | } 30 | 31 | public String toString() { 32 | return "[QueueIndexPage" + super.toString() + "]"; 33 | } 34 | } 35 | 36 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/index/RootIndexPage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.index; 19 | 20 | import com.swiftmq.impl.store.standard.StoreContext; 21 | 22 | public class RootIndexPage extends IndexPage { 23 | 24 | public RootIndexPage(StoreContext ctx, int pageNo) { 25 | super(ctx, pageNo); 26 | } 27 | 28 | protected IndexEntry createIndexEntry() { 29 | return new RootIndexEntry(); 30 | } 31 | 32 | public String toString() { 33 | return "[RootIndexPage" + super.toString() + "]"; 34 | } 35 | } 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/log/CheckPointFinishedListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.log; 19 | 20 | public interface CheckPointFinishedListener { 21 | public void checkpointFinished(); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/log/CheckPointHandler.java: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | * Copyright 2019 IIT Software GmbH 4 | * 5 | * IIT Software GmbH 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 | package com.swiftmq.impl.store.standard.log; 20 | 21 | public interface CheckPointHandler { 22 | public void lockForCheckPoint(); 23 | 24 | public void performCheckPoint(); 25 | 26 | public void checkPointDone(); 27 | } 28 | 29 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/log/InitiateSyncOperation.java: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | * Copyright 2019 IIT Software GmbH 4 | * 5 | * IIT Software GmbH 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 | package com.swiftmq.impl.store.standard.log; 20 | 21 | public class InitiateSyncOperation extends LogOperation { 22 | /** 23 | * @return 24 | */ 25 | int getOperationType() { 26 | return OPER_INITIATE_SYNC; 27 | } 28 | 29 | public String toString() { 30 | return "[InitiateSyncOperation]"; 31 | } 32 | } -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/log/LogManagerFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.log; 19 | 20 | import com.swiftmq.impl.store.standard.StoreContext; 21 | 22 | public interface LogManagerFactory { 23 | LogManager createLogManager(StoreContext ctx, CheckPointHandler checkPointHandler, String path, long maxLogSize, boolean forceSync) throws Exception; 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/log/LogManagerListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.log; 19 | 20 | public interface LogManagerListener { 21 | public void startProcessing(); 22 | 23 | public void stopProcessing(); 24 | } 25 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/log/LogOperation.java: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | * Copyright 2019 IIT Software GmbH 4 | * 5 | * IIT Software GmbH 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 | package com.swiftmq.impl.store.standard.log; 20 | 21 | public abstract class LogOperation { 22 | public final static int OPER_SYNC_LOG = 1; 23 | public final static int OPER_LOG_REC = 2; 24 | public final static int OPER_CLOSE_LOG = 3; 25 | public final static int OPER_INITIATE_SYNC = 4; 26 | 27 | abstract int getOperationType(); 28 | } 29 | 30 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/log/SyncLogOperation.java: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | * Copyright 2019 IIT Software GmbH 4 | * 5 | * IIT Software GmbH 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 | package com.swiftmq.impl.store.standard.log; 20 | 21 | public class SyncLogOperation extends LogOperation { 22 | /** 23 | * @return 24 | */ 25 | int getOperationType() { 26 | return OPER_SYNC_LOG; 27 | } 28 | 29 | public String toString() { 30 | return "[SyncLogOperation]"; 31 | } 32 | } 33 | 34 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/processor/backup/BackupFinishedListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.processor.backup; 19 | 20 | public interface BackupFinishedListener { 21 | void backupFinished(boolean success, String exception); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/processor/backup/po/BackupCompleted.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.processor.backup.po; 19 | 20 | import com.swiftmq.tools.pipeline.POObject; 21 | import com.swiftmq.tools.pipeline.POVisitor; 22 | 23 | public class BackupCompleted extends POObject { 24 | public BackupCompleted() { 25 | super(null, null); 26 | } 27 | 28 | public void accept(POVisitor poVisitor) { 29 | ((EventVisitor) poVisitor).visit(this); 30 | } 31 | 32 | public String toString() { 33 | return "[BackupCompleted]"; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/processor/backup/po/EventVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.processor.backup.po; 19 | 20 | import com.swiftmq.tools.pipeline.POVisitor; 21 | 22 | public interface EventVisitor extends POVisitor { 23 | public void visit(ScanSaveSets po); 24 | 25 | public void visit(ChangePath po); 26 | 27 | public void visit(ChangeGenerations po); 28 | 29 | public void visit(StartBackup po); 30 | 31 | public void visit(BackupCompleted po); 32 | 33 | public void visit(Close po); 34 | } 35 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/processor/scan/po/EventVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.processor.scan.po; 19 | 20 | import com.swiftmq.tools.pipeline.POVisitor; 21 | 22 | public interface EventVisitor extends POVisitor { 23 | void visit(StartScan po); 24 | 25 | void visit(Close po); 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/processor/shrink/po/EventVisitor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.processor.shrink.po; 19 | 20 | import com.swiftmq.tools.pipeline.POVisitor; 21 | 22 | public interface EventVisitor extends POVisitor { 23 | void visit(StartShrink po); 24 | 25 | void visit(Close po); 26 | } 27 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/swap/SwapAddress.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.swap; 19 | 20 | 21 | public class SwapAddress { 22 | public SwapFile swapFile = null; 23 | public long filePointer = 0; 24 | 25 | public String toString() { 26 | return "[SwapAddress, swapFile=" + swapFile + ", filePointer=" + filePointer + "]"; 27 | } 28 | } 29 | 30 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/java/com/swiftmq/impl/store/standard/swap/SwapFileFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.store.standard.swap; 19 | 20 | 21 | public interface SwapFileFactory { 22 | SwapFile createSwapFile(String path, String filename, long maxLength) throws Exception; 23 | } 24 | -------------------------------------------------------------------------------- /swiftlets/sys_store/src/main/resources/sys_store/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_store/src/main/resources/sys_store/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/java/com/swiftmq/impl/streams/FunctionCallback.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.streams; 19 | 20 | public interface FunctionCallback { 21 | void execute(Object context); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/java/com/swiftmq/impl/streams/TransactionFinishListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.streams; 19 | 20 | public interface TransactionFinishListener { 21 | public void transactionFinished(); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/java/com/swiftmq/impl/streams/TransactionFlushListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.streams; 19 | 20 | public interface TransactionFlushListener { 21 | public void flush(); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/java/com/swiftmq/impl/streams/comp/io/InputCallback.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.streams.comp.io; 19 | 20 | /** 21 | * Callback that can be registered on an Input (onInput). 22 | * 23 | * @author IIT Software GmbH, Muenster/Germany, (c) 2016, All Rights Reserved 24 | */ 25 | public interface InputCallback { 26 | 27 | /** 28 | * Single callback method executed as the function call as 29 | * function (input){...} 30 | * 31 | * @param input the current Input 32 | */ 33 | public void execute(Input input); 34 | } 35 | -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/java/com/swiftmq/impl/streams/comp/log/LogInterceptor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.streams.comp.log; 19 | 20 | public interface LogInterceptor { 21 | void logged(long time, String state, String message); 22 | } 23 | -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/java/com/swiftmq/impl/streams/comp/memory/ForEachMemoryCallback.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.streams.comp.memory; 19 | 20 | /** 21 | * Callback that can be registered on the forEach() method of a MemoryGroup or a GroupResult. 22 | * 23 | * @author IIT Software GmbH, Muenster/Germany, (c) 2017, All Rights Reserved 24 | */ 25 | public interface ForEachMemoryCallback { 26 | 27 | /** 28 | * Single method to be executed for each Memory of a MemoryGroup 29 | * 30 | * @param memory Memory 31 | */ 32 | public void execute(Memory memory); 33 | } 34 | -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/java/com/swiftmq/impl/streams/comp/message/ForEachPropertyCallback.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.streams.comp.message; 19 | 20 | /** 21 | * Callback that can be registered on the forEach() method of a PropertySet. 22 | * 23 | * @author IIT Software GmbH, Muenster/Germany, (c) 2016, All Rights Reserved 24 | */ 25 | public interface ForEachPropertyCallback { 26 | /** 27 | * Single method to be executed for each Property of a PropertySet 28 | * 29 | * @param property Property 30 | */ 31 | public void execute(Property property); 32 | } 33 | -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/java/com/swiftmq/impl/streams/comp/timer/TimerCallback.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.streams.comp.timer; 19 | 20 | /** 21 | * Callback that can be registered on a Timer (onTimer). 22 | * 23 | * @author IIT Software GmbH, Muenster/Germany, (c) 2016, All Rights Reserved 24 | */ 25 | public interface TimerCallback { 26 | 27 | /** 28 | * Single callback method executed as the function call as 29 | * function (timer){...} 30 | * 31 | * @param timer Timer 32 | */ 33 | public void execute(Timer timer); 34 | } 35 | -------------------------------------------------------------------------------- /swiftlets/sys_streams/src/main/resources/sys_streams/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_streams/src/main/resources/sys_streams/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_threadpool/src/main/java/com/swiftmq/impl/threadpool/standard/group/CloseListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.threadpool.standard.group; 19 | 20 | @FunctionalInterface 21 | public interface CloseListener { 22 | void onClose(EventLoopImpl eventLoop); 23 | } 24 | -------------------------------------------------------------------------------- /swiftlets/sys_threadpool/src/main/java/com/swiftmq/impl/threadpool/standard/group/pool/ThreadRunner.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.threadpool.standard.group.pool; 19 | 20 | import java.util.concurrent.CompletableFuture; 21 | import java.util.concurrent.TimeUnit; 22 | 23 | public interface ThreadRunner { 24 | CompletableFuture execute(Runnable task); 25 | 26 | int getActiveThreadCount(); 27 | 28 | void shutdown(); 29 | 30 | void shutdown(long timeout, TimeUnit unit); 31 | } -------------------------------------------------------------------------------- /swiftlets/sys_threadpool/src/main/resources/sys_threadpool/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_threadpool/src/main/resources/sys_threadpool/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_timer/config/config.xml: -------------------------------------------------------------------------------- 1 | 8 | 9 | 16 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /swiftlets/sys_timer/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_timer 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_timer/src/main/resources/sys_timer/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_timer/src/main/resources/sys_timer/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_topicmanager/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_topicmanager 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_topicmanager/src/main/java/com/swiftmq/impl/topic/standard/TopicFlowController.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.topic.standard; 19 | 20 | import com.swiftmq.swiftlet.queue.FlowController; 21 | 22 | public class TopicFlowController extends FlowController { 23 | 24 | public void setLastDelay(long lastDelay) { 25 | this.lastDelay.set(lastDelay); 26 | } 27 | 28 | public long getNewDelay() { 29 | return lastDelay.get(); 30 | } 31 | } 32 | 33 | -------------------------------------------------------------------------------- /swiftlets/sys_topicmanager/src/main/java/com/swiftmq/impl/topic/standard/announce/TopicInfo.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package com.swiftmq.impl.topic.standard.announce; 19 | 20 | 21 | public interface TopicInfo { 22 | boolean isCreationInfo(); 23 | 24 | String getDestination(); 25 | 26 | String getRouterName(); 27 | 28 | String getTopicName(); 29 | 30 | String[] getTokenizedPredicate(); 31 | 32 | int getNumberSubscriptions(); 33 | } 34 | 35 | -------------------------------------------------------------------------------- /swiftlets/sys_topicmanager/src/main/resources/sys_topicmanager/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_topicmanager/src/main/resources/sys_topicmanager/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_trace/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_trace 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_trace/src/main/resources/sys_trace/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_trace/src/main/resources/sys_trace/images/swiftlet.png -------------------------------------------------------------------------------- /swiftlets/sys_xa/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.swiftmq 8 | swiftmq-ce 9 | 13.1.2 10 | ../../pom.xml 11 | 12 | 13 | com.swiftmq.swiftlets 14 | sys_xa 15 | 13.1.2 16 | 17 | 18 | 19 | com.swiftmq 20 | swiftmq-client 21 | 13.1.2 22 | 23 | 24 | 25 | ${project.artifactId} 26 | 27 | 28 | maven-compiler-plugin 29 | 3.11.0 30 | 31 | 21 32 | 21 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /swiftlets/sys_xa/src/main/resources/sys_xa/images/swiftlet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iitsoftware/swiftmq-ce/256d5fb105b4b5f560aa97f3f5671055dafc8655/swiftlets/sys_xa/src/main/resources/sys_xa/images/swiftlet.png -------------------------------------------------------------------------------- /testsuite/src/main/java/amqp/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package amqp; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(amqp.v100.Suite.suite()); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "amqp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/amqp/v100/base/MessageFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package amqp.v100.base; 19 | 20 | import com.swiftmq.amqp.v100.messaging.AMQPMessage; 21 | 22 | public interface MessageFactory { 23 | public AMQPMessage create(int sequenceNo) throws Exception; 24 | 25 | public AMQPMessage createReplyMessage(AMQPMessage request) throws Exception; 26 | 27 | public void verify(AMQPMessage message) throws Exception; 28 | } 29 | -------------------------------------------------------------------------------- /testsuite/src/main/java/amqp/v100/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package amqp.v100.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(amqp.v100.ps.one_to_n.Suite.suite()); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ps"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/base/Checker.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.base; 19 | 20 | import javax.jms.Message; 21 | 22 | public interface Checker { 23 | public boolean isMatch(Message msg); 24 | } 25 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/base/TestLogger.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.base; 19 | 20 | import org.junit.runner.Description; 21 | import org.junit.runner.notification.RunListener; 22 | 23 | public class TestLogger extends RunListener { 24 | 25 | @Override 26 | public void testStarted(Description description) throws Exception { 27 | System.out.println("Starting test: " + description.getDisplayName()); 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/nontransacted/autoack/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.nontransacted.autoack.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ps"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/nontransacted/autoack/psdur/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.nontransacted.autoack.psdur; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "psdur"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/nontransacted/autoack/ptp/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.nontransacted.autoack.ptp; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/nontransacted/clientack/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.nontransacted.clientack.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ps"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/nontransacted/clientack/psdur/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.nontransacted.clientack.psdur; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "psdur"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/nontransacted/clientack/ptp/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.nontransacted.clientack.ptp; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/transacted/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.transacted.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/transacted/psdur/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.transacted.psdur; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "psdur"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/transacted/ptp/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.transacted.ptp; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/xa/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.xa.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/xa/psdur/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.xa.psdur; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "psdur"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/cc/xa/ptp/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.cc.xa.ptp; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/nontransacted/autoack/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.nontransacted.autoack.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ps"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/nontransacted/autoack/ptp/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.nontransacted.autoack.ptp; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/nontransacted/clientack/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.nontransacted.clientack.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ps"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/transacted/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.transacted.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/transacted/psdur/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.transacted.psdur; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "psdur"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/transacted/ptp/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.transacted.ptp; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/xa/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.xa.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/xa/psdur/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.xa.psdur; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "psdur"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ccunified/xa/ptp/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ccunified.xa.ptp; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ptp"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/func/browser/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.func.browser; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "browser"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/funcunified/browser/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.funcunified.browser; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("test")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "browser"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ha/nonpersistent/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ha.nonpersistent.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(jms.ha.nonpersistent.ps.nondurable.Suite.suite()); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ps"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/ha/persistent/ps/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.ha.persistent.ps; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(jms.ha.persistent.ps.durable.Suite.suite()); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "ps"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/xa/recover/multidest/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.xa.recover.multidest; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(jms.xa.recover.multidest.ptp.Suite.suite()); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "multidest"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/xa/specials/concurrentcommit/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.xa.specials.concurrentcommit; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("testP")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "concurrentcommit"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/jms/xa/specials/redelivered/Suite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package jms.xa.specials.redelivered; 19 | 20 | import junit.framework.Test; 21 | import junit.framework.TestSuite; 22 | 23 | public class Suite extends TestSuite { 24 | public static Test suite() { 25 | TestSuite suite = new Suite(); 26 | suite.addTest(new Tester("testP")); 27 | return suite; 28 | } 29 | 30 | public String toString() { 31 | return "redelivered"; 32 | } 33 | 34 | public static void main(String args[]) { 35 | junit.textui.TestRunner.run(suite()); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /testsuite/src/main/java/perf/ptp/SuiteSingleSR.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 IIT Software GmbH 3 | * 4 | * IIT Software GmbH licenses this file to You under the Apache License, Version 2.0 5 | * (the "License"); you may not use this file except in compliance with 6 | * the License. You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | * 16 | */ 17 | 18 | package perf.ptp; 19 | 20 | import junit.extensions.ActiveTestSuite; 21 | import junit.framework.Test; 22 | import junit.framework.TestSuite; 23 | 24 | public class SuiteSingleSR extends ActiveTestSuite { 25 | public static Test suite() { 26 | TestSuite suite = new SuiteSingleSR(); 27 | suite.addTest(new Receiver("testReceive")); 28 | suite.addTest(new Sender("testSend")); 29 | return suite; 30 | } 31 | 32 | public static void main(String args[]) { 33 | junit.textui.TestRunner.run(suite()); 34 | } 35 | } 36 | 37 | --------------------------------------------------------------------------------