Comments (9)
@dyutiman what you describe is custom application logic that you have to implement yourself.
From the CometD point of view, the messages have been received and they will be processed.
Whether some of them contain an application-specific "event id", CometD cannot know and won't know what it means, so you have to implement your own logic.
from cometd.
It seems like working!!
Thank you so much @sbordet
from cometd.
If the messages have been fully received, they will be processed by CometD.
If you want to stop the processing of already received messages, you can just ignore them, and you do this in your application.
You want to do this on the client or on the server?
from cometd.
I want to do this on the client side.
We keep track of the event id we process and in the next subscription we used the last processed event id to begin. Here as the events are still in process even after we disconnect the client, the next immediate subscription is picking an intermiddiate event id (among those which are being processed).
This is causing duplicate event processing.
from cometd.
Thanks for the reply @sbordet
Yes I agree that it is application specific. I just wanted to check if there is any way available that when I disconnect the client the background Jetty thread which received all the events can be interrupted.
from cometd.
You can do this with a client extension, something like this:
bayeuxClient.addExtension(new Extension() {
boolean rcv(ClientSession session, Message.Mutable message) {
if (bayeuxClient.isDisconnected()) {
// Drop the message.
return false;
}
return true;
}
});
from cometd.
This is great. Thanks a lot! Let me try this out and confirm.
from cometd.
Does it work for you?
from cometd.
I will update here once we try this.
from cometd.
Related Issues (20)
- When is JakartaEE 10 compatible version release planned for cometd ? HOT 5
- The BayeuxClient in java sends advice on /meta/connect HOT 6
- long poll protocol stops polling HOT 6
- The Promise in server extensions seems counter to the documentataion HOT 10
- How does a message know it's lazy? HOT 2
- Do lazy channels using the default maxTimeout get that default from the sending or receiving transport? HOT 4
- Cannot share scheduler between `BayeuxClient` and Jetty `HttpClient` HOT 1
- Not all options copied to OortComet instances
- NullPointerException while notifying listener org.cometd.client.transport.LongPollingTransport HOT 1
- Move cometd.js to ES6 HOT 7
- Wrong Jetty version in CometD 6.x/7.x MANIFEST HOT 1
- Support the "Partitioned" cookie attribute HOT 2
- WebSocket transport improvements HOT 6
- Getting NullPointerException on receiving /meta/subscribe message HOT 5
- Wrong processing of Set-Cookie with "expires" with Jetty client HOT 2
- Salesforce Set-Cookie ignored with Jetty client HOT 1
- Idle timeout listener races with long-polling connection re-opening timeout when using `CometDHandler` HOT 1
- Sweep mechanism can stop working abruptly HOT 10
- Cannot access SessionId from BayeuxContext HOT 10
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cometd.