ietf-subscribed-notifications@2019-07-30.yang | ietf-subscribed-notifications@2019-07-30-formatted.yang | |||
---|---|---|---|---|
module ietf-subscribed-notifications { | module ietf-subscribed-notifications { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace | namespace "urn:ietf:params:xml:ns:yang:ietf-subscribed-notifications"; | |||
"urn:ietf:params:xml:ns:yang:ietf-subscribed-notifications"; | ||||
prefix sn; | prefix sn; | |||
import ietf-inet-types { | import ietf-inet-types { | |||
prefix inet; | prefix inet; | |||
reference | reference | |||
"RFC 6991: Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
import ietf-interfaces { | import ietf-interfaces { | |||
prefix if; | prefix if; | |||
reference | reference | |||
skipping to change at line 28 ¶ | skipping to change at line 26 ¶ | |||
import ietf-netconf-acm { | import ietf-netconf-acm { | |||
prefix nacm; | prefix nacm; | |||
reference | reference | |||
"RFC 8341: Network Configuration Access Control Model"; | "RFC 8341: Network Configuration Access Control Model"; | |||
} | } | |||
import ietf-network-instance { | import ietf-network-instance { | |||
prefix ni; | prefix ni; | |||
reference | reference | |||
"RFC 8529: YANG Data Model for Network Instances"; | "RFC 8529: YANG Data Model for Network Instances"; | |||
} | } | |||
import ietf-restconf { | import ietf-restconf { | |||
prefix rc; | prefix rc; | |||
reference | reference | |||
"RFC 8040: RESTCONF Protocol"; | "RFC 8040: RESTCONF Protocol"; | |||
} | } | |||
import ietf-yang-types { | import ietf-yang-types { | |||
prefix yang; | prefix yang; | |||
reference | reference | |||
"RFC 6991: Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
skipping to change at line 188 ¶ | skipping to change at line 185 ¶ | |||
notification. Therefore, it does not participate in a regular | notification. Therefore, it does not participate in a regular | |||
event stream and does not need to be specifically subscribed | event stream and does not need to be specifically subscribed | |||
to in order to be received. This statement can only occur as | to in order to be received. This statement can only occur as | |||
a substatement of the YANG 'notification' statement. This | a substatement of the YANG 'notification' statement. This | |||
statement is not for use outside of this YANG module."; | statement is not for use outside of this YANG module."; | |||
} | } | |||
/* | /* | |||
* IDENTITIES | * IDENTITIES | |||
*/ | */ | |||
/* Identities for RPC and notification errors */ | /* Identities for RPC and notification errors */ | |||
identity delete-subscription-error { | identity delete-subscription-error { | |||
description | description | |||
"Base identity for the problem found while attempting to | "Base identity for the problem found while attempting to | |||
fulfill either a 'delete-subscription' RPC request or a | fulfill either a 'delete-subscription' RPC request or a | |||
'kill-subscription' RPC request."; | 'kill-subscription' RPC request."; | |||
} | } | |||
identity establish-subscription-error { | identity establish-subscription-error { | |||
description | description | |||
"Base identity for the problem found while attempting to | "Base identity for the problem found while attempting to | |||
fulfill an 'establish-subscription' RPC request."; | fulfill an 'establish-subscription' RPC request."; | |||
} | } | |||
identity modify-subscription-error { | identity modify-subscription-error { | |||
description | description | |||
"Base identity for the problem found while attempting to | "Base identity for the problem found while attempting to | |||
fulfill a 'modify-subscription' RPC request."; | fulfill a 'modify-subscription' RPC request."; | |||
} | } | |||
identity subscription-suspended-reason { | identity subscription-suspended-reason { | |||
description | description | |||
"Base identity for the problem condition communicated to a | "Base identity for the problem condition communicated to a | |||
receiver as part of a 'subscription-suspended' | receiver as part of a 'subscription-suspended' | |||
notification."; | notification."; | |||
} | } | |||
identity subscription-terminated-reason { | identity subscription-terminated-reason { | |||
description | description | |||
"Base identity for the problem condition communicated to a | "Base identity for the problem condition communicated to a | |||
receiver as part of a 'subscription-terminated' | receiver as part of a 'subscription-terminated' | |||
notification."; | notification."; | |||
} | } | |||
identity dscp-unavailable { | identity dscp-unavailable { | |||
base establish-subscription-error; | base establish-subscription-error; | |||
if-feature "dscp"; | if-feature "dscp"; | |||
description | description | |||
"The publisher is unable to mark notification messages with | "The publisher is unable to mark notification messages with | |||
prioritization information in a way that will be respected | prioritization information in a way that will be respected | |||
during network transit."; | during network transit."; | |||
} | } | |||
skipping to change at line 502 ¶ | skipping to change at line 499 ¶ | |||
default "0"; | default "0"; | |||
description | description | |||
"The desired network transport priority level. This is the | "The desired network transport priority level. This is the | |||
priority set on notification messages encapsulating the | priority set on notification messages encapsulating the | |||
results of the subscription. This transport priority is | results of the subscription. This transport priority is | |||
shared for all receivers of a given subscription."; | shared for all receivers of a given subscription."; | |||
} | } | |||
leaf weighting { | leaf weighting { | |||
if-feature "qos"; | if-feature "qos"; | |||
type uint8 { | type uint8 { | |||
range "0 .. 255"; | range "0 .. 255"; | |||
} | } | |||
description | description | |||
"Relative weighting for a subscription. Larger weights get | "Relative weighting for a subscription. Larger weights get | |||
more resources. Allows an underlying transport layer to | more resources. Allows an underlying transport layer to | |||
perform informed load-balance allocations between various | perform informed load-balance allocations between various | |||
subscriptions."; | subscriptions."; | |||
reference | reference | |||
"RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2), | "RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2), | |||
Section 5.3.2"; | Section 5.3.2"; | |||
} | } | |||
skipping to change at line 693 ¶ | skipping to change at line 691 ¶ | |||
output { | output { | |||
leaf id { | leaf id { | |||
type subscription-id; | type subscription-id; | |||
mandatory true; | mandatory true; | |||
description | description | |||
"Identifier used for this subscription."; | "Identifier used for this subscription."; | |||
} | } | |||
leaf replay-start-time-revision { | leaf replay-start-time-revision { | |||
if-feature "replay"; | if-feature "replay"; | |||
type yang:date-and-time; | type yang:date-and-time; | |||
description | description | |||
"If a replay has been requested, this object represents | "If a replay has been requested, this object represents | |||
the earliest time covered by the event buffer for the | the earliest time covered by the event buffer for the | |||
requested event stream. The value of this object is the | requested event stream. The value of this object is the | |||
'replay-log-aged-time' if it exists. Otherwise, it is | 'replay-log-aged-time' if it exists. Otherwise, it is | |||
the 'replay-log-creation-time'. All buffered event | the 'replay-log-creation-time'. All buffered event | |||
records after this time will be replayed to a receiver. | records after this time will be replayed to a receiver. | |||
This object will only be sent if the starting time has | This object will only be sent if the starting time has | |||
been revised to be later than the time requested by the | been revised to be later than the time requested by the | |||
subscriber."; | subscriber."; | |||
} | } | |||
} | } | |||
} | } | |||
rc:yang-data establish-subscription-stream-error-info { | rc:yang-data establish-subscription-stream-error-info { | |||
container establish-subscription-stream-error-info { | container establish-subscription-stream-error-info { | |||
description | description | |||
"If any 'establish-subscription' RPC parameters are | "If any 'establish-subscription' RPC parameters are | |||
unsupportable against the event stream, a subscription | unsupportable against the event stream, a subscription | |||
is not created and the RPC error response MUST indicate the | is not created and the RPC error response MUST indicate the | |||
skipping to change at line 725 ¶ | skipping to change at line 723 ¶ | |||
subscription's RPC error response to indicate the reason for | subscription's RPC error response to indicate the reason for | |||
the failure. This yang-data MUST be inserted if hints are | the failure. This yang-data MUST be inserted if hints are | |||
to be provided back to the subscriber."; | to be provided back to the subscriber."; | |||
leaf reason { | leaf reason { | |||
type identityref { | type identityref { | |||
base establish-subscription-error; | base establish-subscription-error; | |||
} | } | |||
description | description | |||
"Indicates the reason why the subscription has failed to | "Indicates the reason why the subscription has failed to | |||
be created to a targeted event stream."; | be created to a targeted event stream."; | |||
} | } | |||
leaf filter-failure-hint { | leaf filter-failure-hint { | |||
type string; | type string; | |||
description | description | |||
"Information describing where and/or why a provided | "Information describing where and/or why a provided | |||
filter was unsupportable for a subscription. The | filter was unsupportable for a subscription. The | |||
syntax and semantics of this hint are | syntax and semantics of this hint are | |||
implementation specific."; | implementation specific."; | |||
} | } | |||
} | } | |||
} | } | |||
rpc modify-subscription { | rpc modify-subscription { | |||
description | description | |||
"This RPC allows a subscriber to modify a dynamic | "This RPC allows a subscriber to modify a dynamic | |||
subscription's parameters. If successful, the changed | subscription's parameters. If successful, the changed | |||
subscription parameters remain in effect for the duration of | subscription parameters remain in effect for the duration of | |||
the subscription, until the subscription is again modified, or | the subscription, until the subscription is again modified, or | |||
skipping to change at line 782 ¶ | skipping to change at line 780 ¶ | |||
type identityref { | type identityref { | |||
base modify-subscription-error; | base modify-subscription-error; | |||
} | } | |||
description | description | |||
"Information in a 'modify-subscription' RPC error response | "Information in a 'modify-subscription' RPC error response | |||
that indicates the reason why the subscription to an event | that indicates the reason why the subscription to an event | |||
stream has failed to be modified."; | stream has failed to be modified."; | |||
} | } | |||
leaf filter-failure-hint { | leaf filter-failure-hint { | |||
type string; | type string; | |||
description | description | |||
"Information describing where and/or why a provided | "Information describing where and/or why a provided | |||
filter was unsupportable for a subscription. The syntax | filter was unsupportable for a subscription. The syntax | |||
and semantics of this hint are | and semantics of this hint are | |||
implementation specific."; | implementation specific."; | |||
} | } | |||
} | } | |||
} | } | |||
rpc delete-subscription { | rpc delete-subscription { | |||
description | description | |||
"This RPC allows a subscriber to delete a subscription that | "This RPC allows a subscriber to delete a subscription that | |||
was previously created by that same subscriber using the | was previously created by that same subscriber using the | |||
'establish-subscription' RPC. | 'establish-subscription' RPC. | |||
skipping to change at line 946 ¶ | skipping to change at line 944 ¶ | |||
"This notification indicates that a subscription has started | "This notification indicates that a subscription has started | |||
and notifications will now be sent."; | and notifications will now be sent."; | |||
leaf id { | leaf id { | |||
type subscription-id; | type subscription-id; | |||
mandatory true; | mandatory true; | |||
description | description | |||
"This references the affected subscription."; | "This references the affected subscription."; | |||
} | } | |||
uses subscription-policy { | uses subscription-policy { | |||
refine "target/stream/replay-start-time" { | refine "target/stream/replay-start-time" { | |||
description | description | |||
"Indicates the time that a replay is using for the | "Indicates the time that a replay is using for the | |||
streaming of buffered event records. This will be | streaming of buffered event records. This will be | |||
populated with the most recent of the following: | populated with the most recent of the following: | |||
the event time of the previous event record sent to a | the event time of the previous event record sent to a | |||
receiver, the 'replay-log-creation-time', the | receiver, the 'replay-log-creation-time', the | |||
'replay-log-aged-time', or the most recent publisher | 'replay-log-aged-time', or the most recent publisher | |||
boot time."; | boot time."; | |||
} | } | |||
refine "target/stream/stream-filter/within-subscription" { | refine "target/stream/stream-filter/within-subscription" { | |||
description | description | |||
"Filter applied to the subscription. If the | "Filter applied to the subscription. If the | |||
'stream-filter-name' is populated, the filter in the | 'stream-filter-name' is populated, the filter in the | |||
subscription came from the 'filters' container. | subscription came from the 'filters' container. | |||
Otherwise, it is populated in-line as part of the | Otherwise, it is populated in-line as part of the | |||
subscription."; | subscription."; | |||
} | } | |||
augment "target/stream" { | augment "target/stream" { | |||
description | description | |||
"This augmentation adds additional parameters specific to a | "This augmentation adds additional parameters specific to a | |||
'subscription-started' notification."; | 'subscription-started' notification."; | |||
leaf replay-previous-event-time { | leaf replay-previous-event-time { | |||
when "../replay-start-time"; | when '../replay-start-time'; | |||
if-feature "replay"; | if-feature "replay"; | |||
type yang:date-and-time; | type yang:date-and-time; | |||
description | description | |||
"If there is at least one event in the replay buffer | "If there is at least one event in the replay buffer | |||
prior to 'replay-start-time', this gives the time of | prior to 'replay-start-time', this gives the time of | |||
the event generated immediately prior to the | the event generated immediately prior to the | |||
'replay-start-time'. | 'replay-start-time'. | |||
If a receiver previously received event records for | If a receiver previously received event records for | |||
this configured subscription, it can compare this time | this configured subscription, it can compare this time | |||
to the last event record previously received. If the | to the last event record previously received. If the | |||
two are not the same (perhaps due to a reboot), then a | two are not the same (perhaps due to a reboot), then a | |||
dynamic replay can be initiated to acquire any missing | dynamic replay can be initiated to acquire any missing | |||
event records."; | event records."; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
notification subscription-suspended { | notification subscription-suspended { | |||
sn:subscription-state-notification; | sn:subscription-state-notification; | |||
description | description | |||
"This notification indicates that a suspension of the | "This notification indicates that a suspension of the | |||
subscription by the publisher has occurred. No further | subscription by the publisher has occurred. No further | |||
skipping to change at line 1070 ¶ | skipping to change at line 1068 ¶ | |||
available in this event stream."; | available in this event stream."; | |||
} | } | |||
leaf replay-support { | leaf replay-support { | |||
if-feature "replay"; | if-feature "replay"; | |||
type empty; | type empty; | |||
description | description | |||
"Indicates that event record replay is available on this | "Indicates that event record replay is available on this | |||
event stream."; | event stream."; | |||
} | } | |||
leaf replay-log-creation-time { | leaf replay-log-creation-time { | |||
when "../replay-support"; | when '../replay-support'; | |||
if-feature "replay"; | if-feature "replay"; | |||
type yang:date-and-time; | type yang:date-and-time; | |||
mandatory true; | mandatory true; | |||
description | description | |||
"The timestamp of the creation of the log used to support | "The timestamp of the creation of the log used to support | |||
the replay function on this event stream. This time | the replay function on this event stream. This time | |||
might be earlier than the earliest available information | might be earlier than the earliest available information | |||
contained in the log. This object is updated if the log | contained in the log. This object is updated if the log | |||
resets for some reason."; | resets for some reason."; | |||
} | } | |||
leaf replay-log-aged-time { | leaf replay-log-aged-time { | |||
when "../replay-support"; | when '../replay-support'; | |||
if-feature "replay"; | if-feature "replay"; | |||
type yang:date-and-time; | type yang:date-and-time; | |||
description | description | |||
"The timestamp associated with the last event record that | "The timestamp associated with the last event record that | |||
has been aged out of the log. This timestamp identifies | has been aged out of the log. This timestamp identifies | |||
how far back in history this replay log extends, if it | how far back in history this replay log extends, if it | |||
doesn't extend back to the 'replay-log-creation-time'. | doesn't extend back to the 'replay-log-creation-time'. | |||
This object MUST be present if replay is supported and any | This object MUST be present if replay is supported and any | |||
event records have been aged out of the log."; | event records have been aged out of the log."; | |||
} | } | |||
skipping to change at line 1236 ¶ | skipping to change at line 1232 ¶ | |||
parameters."; | parameters."; | |||
} | } | |||
enum invalid { | enum invalid { | |||
value 2; | value 2; | |||
description | description | |||
"The subscription as a whole is unsupportable with its | "The subscription as a whole is unsupportable with its | |||
current parameters."; | current parameters."; | |||
} | } | |||
enum concluded { | enum concluded { | |||
value 3; | value 3; | |||
description | description | |||
"A subscription is inactive, as it has hit a | "A subscription is inactive, as it has hit a | |||
stop time. It no longer has receivers in the | stop time. It no longer has receivers in the | |||
'receiver active' or 'receiver suspended' state, | 'receiver active' or 'receiver suspended' state, | |||
but the subscription has not yet been removed from | but the subscription has not yet been removed from | |||
configuration."; | configuration."; | |||
} | } | |||
} | } | |||
config false; | config false; | |||
description | description | |||
"The presence of this leaf indicates that the subscription | "The presence of this leaf indicates that the subscription | |||
originated from configuration, not through a control | originated from configuration, not through a control | |||
channel or RPC. The value indicates the state of the | channel or RPC. The value indicates the state of the | |||
subscription as established by the publisher."; | subscription as established by the publisher."; | |||
} | } | |||
container receivers { | container receivers { | |||
End of changes. 20 change blocks. | ||||
73 lines changed or deleted | 70 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |