Commit Graph
276 Commits
Author SHA1 Message Date
Andreas Mager 7b57f04db9 broker/test/ServerIntegrationDBAuthenticatorTest: code formatter used 2017-02-01 17:13:41 +01:00
Andreas Mager 42bd234c76 broker/test/MQTTWebSocket: code formatter used 2017-02-01 17:13:41 +01:00
Andreas Mager 59af0f34ec broker/test/MessageCollector: code formatter used 2017-02-01 17:13:41 +01:00
Andreas Mager 57aaac8a8f broker/test/IntegrationUtils: code formatter used 2017-02-01 17:13:41 +01:00
Andreas Mager dd41de430e broker/test/ConfigurationClassLoaderTest: code formatter used 2017-02-01 17:13:41 +01:00
Andreas Mager ae43010da3 broker/test/Utils: code formatter used 2017-02-01 17:13:41 +01:00
Andrea Selva ff4c5dff3b Merge pull request #261 from AndreasMager/adding-assertj 2017-02-01 13:39:32 +01:00
Andreas Mager 94475d2b04 ProtocolProcessorTest#testCleanRetainedStoreAfterAQoS0AndRetainedTrue:
check added if test is in the correct state
2017-01-30 16:07:16 +01:00
Andreas Mager f25af642b0 SubscriptionsStoreTest: containsExactlyInAnyOrder used for matches 2017-01-30 15:51:50 +01:00
Andreas Mager c5b7fd52c5 SubscriptionsStoreTest: assertj used for assertions 2017-01-30 15:51:50 +01:00
Andreas Mager f460d6a230 SubscriptionsStoreTest: classname used for static access 2017-01-30 15:50:42 +01:00
Andreas Mager 504ac3055e SubscriptionsStoreTest: whitespaces removed 2017-01-30 15:50:42 +01:00
andsel 1c64186a00 Switched from Moquette's MQTT codec to Netty's MQTT codec ones 2017-01-28 15:59:44 +01:00
Andreas Mager 01e7465f0c MemorySessionStore: HashMap replaced by Map Interface 2017-01-26 21:42:21 +01:00
Andreas Mager 6f7011c9f2 MemorySessionStore#m_persistentSubscriptions: Map Layout changed
If one clientid subscribes a lot of topics the old implementation
struggles with the for loops
2017-01-23 18:37:43 +01:00
Luis Barrios d7d97a74d8 Add simple connection management capabilities to the broker. An external codebase will now be able to monitor and close the opened connections. 2017-01-12 17:00:18 +01:00
Luis Barrios 46fcdc0894 Allow InterceptHandler to specify the messages they can intercept. This allows us to improve the performance of the broker interceptor, and will make log traces more clear.
- Add methods to return an unique identifier and the supported message types at the InterceptHandler interface.
- Include a default implementation of the new methods in the AbstractInterceptHandler. By default, all the interceptors will be able to handle any message (same as before).
- Comment verifyNoMoreInteractions() call from the BrokerInterceptorTest.testAddAndRemoveInterceptHandler(). The removeInterceptHandler() method of the broker interceptor
  polls the InterceptHandler, so an interaction will always exist after the call to onSubscribe().
2017-01-10 17:06:13 +01:00
andsel ac8a11fefa Removed the reference counter for stored messages 2017-01-09 21:59:09 +01:00
andsel 081631242f Removed old 'map based queues' to use persistent BlockingQueues from MapDB 2017-01-09 21:53:26 +01:00
andsel 3f0ab75efb Updated copiright to year 2017 2017-01-04 14:37:29 +01:00
andsel 12a3c65c9b Fixed javadoc (issue #164) 2017-01-04 12:52:42 +01:00
andsel 480e36579c Fixed NPE exception of inflight ACK because the publisher with clean=true removed all messages, also the published from message store 2017-01-04 11:17:30 +01:00
andsel 4029ddd2b1 Removed ClasspathConfig to use the ClasspathResourceLoader and basic ResourceLoaderConfig
Removed FilesystemConfig to use the FileResourceLoader and basic ResourceLoaderConfig
2016-12-31 19:30:41 +01:00
andsel 0f41c9ea08 Changed default behaviour to use persistent sotre, now use in memory as default and not FS moquette.mapdb (Fix issue #242) 2016-12-31 16:06:18 +01:00
andsel a146ffb30e Minor changes to distribution's log4j config file to include the messagelog logger 2016-12-31 15:28:06 +01:00
andsel ac2086a0e0 Fixed failing test due to more strict endpoint check from Netty 4.1.x 2016-12-30 00:33:10 +01:00
andsel db7a597bcc Fixed timeout in test 2016-12-28 22:22:27 +01:00
andsel 686c5f4c65 Embedded pub and sub client into same process of the plain test broker to use same nanosecs 2016-12-24 15:36:20 +01:00
andsel e812efd6b7 Added MQTT messages logger 2016-12-18 19:51:40 +01:00
andsel a54b122094 Substituted complex test to check lowering of qos level to the same accepted on subscription time 2016-12-13 23:43:02 +01:00
andsel 296af8b4f6 Renamed route2Subscribers() to publish2Subscribers() 2016-12-13 23:43:01 +01:00
andsel 3355e7c334 Moved selection of subscriptions out of route2Subscribers 2016-12-13 23:43:01 +01:00
andsel b6239b3c5c Changed SUBSCRIPTION processing to be based on concurrent FSM 2016-11-27 21:35:20 +01:00
andsel 38746ad0dd Moved existing CONNECT processing to an FSM 2016-11-27 21:35:20 +01:00
andsel 7508275cf7 Changed the way a Client session is active and moved to event and states of Channel for CONNECT and DISCONNET messages 2016-11-05 18:29:08 +01:00
Andrea Selva ccdb50e760 Merge pull request #224 from bcw104/master
broker: notify when client connection lost
2016-11-05 17:08:09 +01:00
bcw 3e89bc5d2c notify when client connection lost;
implement onConnectionLost() method in AbstractInterceptHandler.java;
2016-10-24 11:37:10 +08:00
teranisi 81a1d8d2b2 Add 'getSubscriptions' API on Server.
Add a test for sessions without clean session flag.
2016-10-20 14:23:57 +09:00
andsel 912a88ec0a Minor, switched from .replace to .put (JDK 1.7 compatibility) 2016-09-23 12:10:42 +02:00
andsel 8215e89d77 Changed String for guids to its value object 2016-09-23 11:51:25 +02:00
andsel ac5a4daa6f Changed the way of create MapDB's messages and session stores, it's now more coupled (they are the same stuff at the end) 2016-09-23 10:11:50 +02:00
andsel 4d637a349b Fixed drop messages in clean session phase, introduced ref counter 2016-09-23 09:45:47 +02:00
andsel 5efad350d8 Fixed the configuration of HZ for local tests to avoid multicast preferring tcp local address 2016-09-12 17:49:40 +02:00
Jacoby 36daf153db * Bugfix - persistence file could not be deleted under Windows because it was in use by the server 2016-08-18 16:20:14 +02:00
Andrea Selva 8b7458a6c4 Merge pull request #191 from kevto/hotfix/allow-zero-byte-clientid
Allow zero byte client identifiers in the connect message.
2016-08-07 22:29:56 +02:00
Kevin Berendsen 807debb622 Terminating the connection if the client failed to receive a CONNACK packet with a non-zero return code. Stated in 3.2.2.3 of MQTT 3.1.1 specificaton.
Was checking the wrong channel to see if it was still open or not. The channel that the test was checking on was disconnected a few lines above.
2016-08-07 13:34:06 +02:00
Kevin Berendsen bc6525e431 MQTT3.1.3-6 stated that the client can connect without giving up an client identifier. However, the broker should generate one for the client id as of the client gave the identifier to broker. The client will now disconnect if the client hasn't given up an identifier with clean session set to 0. Done this regarding issue #190
NettyChannelAssertions class has been modified so you could add a message to the assertion.

Unit tests have been added to test the modified processConnect() method.

The server can allow zero byte client identifiers through moquette configuration.
2016-08-07 13:17:41 +02:00
Andrea Selva 3085ee54d8 Merge pull request #189 from andsel/mackristof-feat/cluster
Mackristof feat/cluster
2016-07-22 12:13:16 +02:00
andsel fedd2965cc Fixed Hazelcast itnegration tests, removing unusefull thread sleeps, but more important permitting the co existence of 2 Brokers in the same JVM 2016-07-22 12:09:10 +02:00
kevto 486b4fe8ba Moved the overrideSubscription test from SubscriptionsStoreTest to a new test case named ClientSession. Removed a parameter in ClientSession.subscribe method. topicFilter param had no use but for logging purposes. 2016-07-17 14:24:19 +02:00