@jayesol/jayeson.lib.delivery
v2.0.6
Published
Javascript implementation of Delivery
Downloads
3
Maintainers
Keywords
Readme
v 1.4.1
- Use StreamFinder 1.6.0: Supports advertisements with paths.
- New message group for Name Feed: group 30.
- Prevent streams from getting excluded more than once by having only one ReconnectClientTask.
- Not to attempt to load truststore if truststores are not provided in the SSL config.
v 1.3.9
- Use StreamFinder 1.4.1 : Sends advertisements containing all unadvertised streams instead of one advertisement per stream.
- Use StreamFinder 1.5.0 : Split streams inside an advertisement into chunks of 100.
- Fix memory leak of event loop not garbage collected if connection fails by shutting down the event loop.
- Fix guice circular dependency between AuthService and AuthGroupProcessor.
- Fix reconnection missing streams issue #18763.
- Fix relayer oom issue #19366.
- Fix disconnection from stream by not sending deregistration request twice #19650
- Created ConsumptionStopEvent class in Java. An instance will be sent upon successful deregistration from stream.
- Fixed not able to reconnect to redis server as a result of a change in redis server ip.
- Added keepalive sending from subscriber to publisher and made sending of keepalive from publisher to subscriber be configurable and default to false.
v 1.2.0
- Use StreamFinder 1.3.0 : Discovering with scope information
- TypeScript Support for delivery
- Improved keep-aliv sending. Will only send if there are no other messages sent
- Bug fixes involving release of reference counted messages, AuthMessage time out. Config change: Move
authMsgTimeout
toauthServiceConfig
- StreamStopMessage implementation. PE can explictly tell subscriber that it is stopping a stream and subscriber can failover. Refer to wiki for more information
v 1.1.2
- Use StreamFinder 1.2.3
- Use Netty 4.0.36.Final
- Support multiple scopes in subscriber(Update subscriber config.Will not work with older config)
- Fixed Reconnection bug in Subscriber where reconnection trying stops after some retries
- Remove StreamRegistry Group Processing from Eventloop.(No change is needed in PE)
- To Describing PE callback behavoiur more explcitly:
- PE should expect messages from an endpoint AFTER call of actOnStreamRegistrationRequest()
- PE should initiate sending messages ONLY afte call of startPublishing()
- To Describing PE callback behavoiur more explcitly:
- Subscriber now dont make unnecessary connection to StreamFinder if application is not using subscriber module(i.e If no discovery streams in config).
- Exposed default handlers in JsonBaseMessageClass. Applications can now extend JSonBaseMessageClass to do custom transformation of message within pipeline itself. E:g here
- Added Abstrations for using with jruby
- Minor bug fixes and improved logging
Registered MessageGroups. Please register your message group before using on common infrastructure
| Group | Byte |
| ------------------------------- | ------ |
| ObscureGroup(used internally) | 0 |
| StreamRegistryGroup | 2 |
| ConnectionCheckingGroup(keep alive) | 4 |
| Authentication Group | 5 |
| GenericMessageGroup | 6 |
| OrderFeed |11 |
| MinMax Feed |12|
| Vodds Config Feed |13|
| Soccer Results Feed |14|
| Sports Results Feed |15|
| Name Feed |30|
| SoccerFeed |69|
| Ping Pong Feed(Demo Example) |71|
| Sports Feed |70|
Develeoper Notes
We follow google java style guide
https://google.github.io/styleguide/javaguide.html
Few Points to take note(Copied from style guide ):
4.1 Braces
4.1.1 Braces are used where optional
Braces are used with if, else, for, do and while statements, even when the body is empty or contains only a single statement.
4.1.2 Nonempty blocks: K & R style
Braces follow the Kernighan and Ritchie style ("Egyptian brackets") for nonempty blocks and block-like constructs:
No line break before the opening brace.
Line break after the opening brace.
Line break before the closing brace.
Line break after the closing brace if that brace terminates a statement or the body of a method, constructor or named class. For example, there is no line break after the brace if it is followed by else or a comma.
Example:
@Override public void method() {
if (condition()) {
try {
something();
} catch (ProblemException e) {
recover();
}
}
}
};```