This repository was archived by the owner on Nov 17, 2020. It is now read-only.
Pagination for connections, channels, exchanges, queues#76
Merged
michaelklishin merged 36 commits intomasterfrom Nov 20, 2015
Merged
Pagination for connections, channels, exchanges, queues#76michaelklishin merged 36 commits intomasterfrom
michaelklishin merged 36 commits intomasterfrom
Conversation
Contributor
There was a problem hiding this comment.
Please add spaces around ==, <= and other operators.
Contributor
|
This is far from being complete: while pagination works OK for queues, it lacks server-side filtering and there's no pagination for exchanges, channels, and connections. I'm afraid this won't make it for 3.6.0. |
…rabbitmq-management into rabbitmq-management-50
michaelklishin
added a commit
that referenced
this pull request
Nov 20, 2015
Pagination for connections, channels, exchanges, queues
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #50.
Back-end
Requests
Server side requests are:
The APIs are valid for:
queuesexchangesconnectionschannelsParams
pageis the page numberpage_sizeis the number of elements for page you want to see ( if is not defined the default value is100).nameis case insensitive.use_regexwhen istrueenables regular expression for the paramnameThe output is always the same:
_Note: the old
API(s)still working with the old output._Errors
The pagination API handle the following errors case:
pageorpage_sizeare not integer values.Example:
http://localhost:15672/api/queues?page=no_int_valgets:
"error": "bad_request", "reason": "…"test
pageorpage_sizeare out of the limit.Example:
http://localhost:15672/api/queues?page=1&page_size=1000000gets:
"error": "…","reason": "…"test
The limit are valid, but the API trying to access to a not-exist page.
Example:
http://localhost:15672/api/queues?page=2&page_size=11gets:
"error": "bad_request", "reason": "Page out of range…"( for example the user is looking a page that does not exist anymore )
test
UI
We have changed the calls from the UI side, using the pagination.
Auto-refresh
We had a problem with the
autorefresh, we solved skipping the autorefresh function when one pagination component is selected.Redirect
We had to implement the auto-redirect page in case the page you are looking does not exist anymore.
We wanted to implement an time control based to avoid to flood the server, in case too much redirect are called. This is a precaution.
Dispatcher
We modified the behavior from static to dynamic.
Store preferences
In order to handle the navigation, we had to store all the pagination info using store pref