andsel
949e531448
Switched to Netty 4.1.12 to use MqttMessageBuilders
2017-06-10 16:55:00 +02:00
Andreas Mager
fcb7870a38
MemorySessionStore: Session class added
...
MemorySessionStore$Session: clientSession field added
MemorySessionStore#pendingAck: secondPhaseStore & inflightStore &
inboundFlightMeessageToGuid added
ClientSession#cleanup missed these messages
SubscriptionsDirectoryTest: fixed
SessionsStore#dropInFlightMessagesInSession: changed to cleanSession
2017-06-02 18:09:23 +02:00
andsel
d9ff81131c
Merged topic subscription search and publish into single MessagePublisher method
...
First step on implementing H2 storage
Minor, fixed not imported class
Cleaned MessageStore interface to avoid duplication of methods used in couple. Switched from guid + message to move messages
Separated ISubscriptionsStore from ISessionStore
Implemented H2 queue
2017-06-02 10:13:34 +02:00
Andreas Mager
9221a87812
editorconfig: max line length set
...
max line length warnings removed
missing Copyright added
useless publics removed
unmaintainable Javadoc tags: @author removed
helper class warnings removed
field default value initialization removed
Multiple warnings removed
pref: checkstyle warnings removed
Checkstyle will fail the build process if it detects violations
switch default cases error logger added
2017-04-13 22:16:57 +02:00
andsel
6dc762f47f
Introduced the FlightZone concept (inbound and outbound) and separated logic of storage system.
2017-04-09 19:22:50 +02:00
andsel
5c6889fbd5
Separated persistence layer, created submodule for MapDB persistence letting the broker use the in-memory message store
2017-04-01 16:21:34 +02:00
Andreas Mager
dd106434ce
broker/Server: ScheduledExecutorService moved from MapDBPersistentStore
...
broker/ProtocolProcessorBootstrapper: tabs removed
broker/MapDBPersistentStore: bonding to Server removed
2017-03-22 23:16:14 +01:00
Andreas Mager
63d2f2dd69
broker/MapDBPersistentStore: Interfaces used for the Constructors
...
broker/IStore: Interface added for MapDBPersistentStore
broker/ProtocolProcessorBootstrapper: class loader for store added
broker/ISessionsStore#mapToGuid: moved to IMessagesStore
broker/ProtocolProcessorBootstrapper: getter used for SessionStore
broker/Server: getter for processor added
broker/ProtocolProcessor: getter added for Stores
2017-03-20 13:04:14 +01:00
andsel
ec6ec09cee
Minor fixed comment ( #281 )
2017-03-19 22:01:23 +01:00
andsel
e5c46e7a55
Purge nodes without subscriptions as described by PR #274
2017-03-05 12:37:18 +01:00
Andreas Mager
a2e51b2c31
broker/Topic: class added
...
broker/Topic: String Topics replaced by Topic class
broker/Topic#parseTopic: access set to private
broker/SubscriptionsStoreTest: topic tests moved to own class
broker/TopicTest: containsExactly used
broker/TopicTest: TopicAssert class added
broker/TopicTest$TopicAssert#containsToken: method added
broker/TopicTest$TopicAssert#matches: method added
2017-02-19 18:29:37 +01:00
Andreas Mager
e42e1257c9
broker/MemorySessionStore: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
2b9a21d475
broker/MapDBPersistentStoreTest: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
9e6cfe4002
broker/SubscriptionsStoreTest: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
3351b92ea6
broker/FileAuthenticatorTest: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
a946357ea3
broker/DBAuthenticatorTest: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
f4120433d9
broker/AuthorizationsCollectorTest: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
25f9bdd9b6
broker/ACLFileParserTest: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
a0a758949e
broker/ProtocolProcessorTest: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
5125132f23
broker/ProtocolProcessor_CONNECT_Test: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
5206cc3df7
broker/NettyChannelAssertions: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
65faa69852
broker/MockReceiverChannel: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
83dc0f99b6
broker/MockAuthenticator: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
edc2515caa
broker/MemoryStorageService: code formatter used
2017-02-01 17:13:43 +01:00
Andreas Mager
be8a2f4ca4
broker/MemoryMessagesStore: code formatter used
2017-02-01 17:13:42 +01:00
Andreas Mager
0bf059afcf
broker/BrokerInterceptorTest: code formatter used
2017-02-01 17:13:42 +01:00
Andreas Mager
47c76fafc1
broker/ClientSessionTest: code formatter used
2017-02-01 17:13:42 +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
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