Skip to main content

Module subscription_filter

Module subscription_filter 

Source
Expand description

The subscription filter carried by the SUBSCRIPTION_FILTER parameter, named LOCATION_FILTER from draft-19.

Drafts 15 and later moved SUBSCRIBE’s Filter Type, Start Location and End Group into one length-prefixed parameter value. The subscription filter that drafts 15 and later carry inside a parameter.

Through draft-14 a subscription’s filter is a group of fields on SUBSCRIBE and its relatives: a Filter Type, and the Start Location and End Group that type promises. Draft-15 moved the whole group into one length-prefixed parameter, and draft-19 renamed that parameter from SUBSCRIPTION_FILTER to LOCATION_FILTER while leaving both its type number, 0x21, and its contents alone.

The move is why this module exists. A parameter value is a run of bytes, and a codec that carries it as bytes carries the Filter Type with it — including the values the drafts require a receiver to close the session over, and including the Start Location a relay needs in order to know which Objects it was asked for.

Structs§

SubscriptionFilter
A decoded subscription filter.

Enums§

FilterEnd
The end of an AbsoluteRange filter, in whichever of the two forms the draft that carried it writes.

Constants§

SUBSCRIPTION_FILTER_PARAMETER
The parameter type carrying a subscription filter on drafts 15 and later.