-
Notifications
You must be signed in to change notification settings - Fork 149
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
Introduce GqlStatusObject
support as notifications to ResultSummary
#1194
Introduce GqlStatusObject
support as notifications to ResultSummary
#1194
Conversation
The bolt protocol 5.5 should support a slightly different way of configuring notifications filtering. This new configuration change the name of categories to classification to be aligned with the definitions on Gql standard. This changes doesn't includes add the protocol to handshake and the proper configuration on the driver side.
support as notifications to
ResultSummary` support as notifications to
ResultSummary`
support as notifications to
ResultSummary`GqlStatusObject
support as notifications to ResultSummary
Co-authored-by: Stephen Cathcart <[email protected]>
packages/bolt-connection/test/bolt/behaviour/notification-filter.js
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple of general questions but other than that it seems to meet the ADR spec well 😄 👍
PR description is not up-to-date.
I thought this isn't the case.
This only applies to the reactive driver, doesn't it? Might be worth being explicit here.
See first point. |
Co-authored-by: Robsdedude <[email protected]>
Co-authored-by: Robsdedude <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔔
Co-authored-by: Robsdedude <[email protected]>
Introduces
ResultSummary.gqlStatusObjects
as preview feature.GqlStatusObject
is a GQL compliantNotification
object and status of query execution, this new object includesgqlStatus
andstatusDescription
.ResultSummary.gqlStatusObjects
always contains at least 1 status representing theSuccess
,No Data
orOmitted Result
. When discarding records in a RxSession while connected to a non-GQL-aware server, the driver might not be able to tell apartSuccess
andNo Data
.The GqlStatusObjects will be presented in the following order:
02xxx
) has precedence over a warning;01xxx
) has precedence over a success.00xxx
) has precedence over anything informational (03xxx
)Migrating from Notification
Most of the properties present in the
Notification
are present in the new object, exceptcode
andtitle
.The
GqlStatusObject.gqlStatus
is equivalent ofcode
in theNotification
, but with values compliant with GQL.The properties
GqlStatusObject.classification
andGqlStatusObject.rawClassification
are equivalent toNotification.category
andNotification.rawCategory
. The name change is needed becausecategory
has a different meaning in GQL.Configuration
Filtering
gqlStatusObjects
can be done using in the same way as filteringnotifications
. However, non-notification status can not be filtered (such asSuccess
orNo Data
).The property
disabledClassifications
was added toNotificationFilter
for being named consistently with GQL. This property is equivalent todisabledCategories
and it be can used interchangeably. However, they can not be used at the same time. An exception will be raised in this scenario.