Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove redundant listener calls in data service [4] #1537

Conversation

djing-chan
Copy link
Contributor

@djing-chan djing-chan commented Dec 19, 2023

Based on #1536

Make PrivateChats* MVC classes abstract
Make all final classes final for helping to understand the complex inheritance structure
Channel sounds too much like a domain class and it was initially not very clear to me whats the purpose of that class.
Store last selected private channel
…nd entering view.

This allows to deactivate listeners when we switch tabs. E.g. when changing a channel the newly selected channel would trigger the handler on the old view. This led  to bugs that the newly added message in the new channel was published on the previously selected channel. It also avoids that the newly selected channel gets displayed its messages on the old transitioning view.
@djing-chan djing-chan changed the title Remove redundant listener calls in data service Remove redundant listener calls in data service [4] Dec 19, 2023
…eded and just adds complexity.

I leave still the changes with the more fine-grained transitions callbacks.

It is now more clear why the bug with duplicated entries happened. It is fixed with a contains check before adding a new item, but @namloan should have a look if the delay at adding is still needed (was added as performance fix).
…ING.

Apply that status when sending message started.
…adcast of the mailbox msg. Only after at least one successful broadcast completed we set the state to ADDED_TO_MAILBOX.

Convert pending states at init to failed state.
Use that for successful states at message delivery
…the framework requires that persistence service classes are available when the persistence framework read in all data.

As we do not want to pass the default node which is created later via a setter to PeerGroupService, it got refactored so that clients use node instead. This also reduced the usage of PeerGroupService where not needed. The peer group management could need more refactoring as it's a bit messy as it is now.
…licated listener calls have been redundant and caused issues on the clients (e.g. creating simultaneously 2 outbound connections)
@djing-chan djing-chan force-pushed the remove-redundant-listener-calls-in-data-service branch from d965c64 to 6caca44 Compare December 19, 2023 10:33
Copy link
Contributor

@HenrikJannsen HenrikJannsen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

Copy link
Contributor

@alvasw alvasw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK

@alvasw alvasw merged commit 0d05a7e into bisq-network:main Dec 19, 2023
15 checks passed
@djing-chan djing-chan deleted the remove-redundant-listener-calls-in-data-service branch December 19, 2023 18:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants