+
+ /**
+ * Extensions to {@link NetconfRpcService} defining additional RPC availability.
+ */
+ // Note: This is not an interface on purpose, to make the set of extensions well-known
+ enum Extension implements DOMServiceExtension<NetconfRpcService, Extension> {
+ /**
+ * This device supports
+ * <a href="https://www.rfc-editor.org/rfc/rfc4741#section-8.3">Candidate Configuration Capability</a>.
+ * The following RPCs are supported:
+ * <ul>
+ * <li>{@link Commit}</li>
+ * <li>{@link DiscardChanges}</li>
+ * </ul>
+ */
+ CANDIDATE,
+ /**
+ * This device supports
+ * <a href="https://www.rfc-editor.org/rfc/rfc4741#section-8.4">Confirmed Commit Capability 1.0</a>.
+ * The following RPCs are supported:
+ * <ul>
+ * <li>{@link Commit}</li>
+ * <li>{@link DiscardChanges}</li>
+ * </ul>
+ */
+ CONFIRMED_COMMIT_1_0,
+ /**
+ * This device supports
+ * <a href="https://www.rfc-editor.org/rfc/rfc6241#section-8.4">Confirmed Commit Capability 1.1</a>.
+ * The following RPCs are supported:
+ * <ul>
+ * <li>{@link CancelCommit}</li>
+ * <li>{@link Commit}</li>
+ * <li>{@link DiscardChanges}</li>
+ * </ul>
+ */
+ CONFIRMED_COMMIT_1_1,
+ /**
+ * This device supports <a href="https://www.rfc-editor.org/rfc/rfc6022">NETCONF Monitoring</a>. The following
+ * RPCs are supported:
+ * <ul>
+ * <li>{@link GetSchema}</li>
+ * </ul>
+ */
+ MONITORING,
+ /**
+ * This device supports <a href="https://www.rfc-editor.org/rfc/rfc5277">Event Notifications</a>. The following
+ * RPCs are supported:
+ * <ul>
+ * <li>{@link CreateSubscription}</li>
+ * </ul>
+ * {@link CreateSubscription} is supported.
+ */
+ NOTIFICATIONS,
+ /**
+ * This device supports <a href="https://www.rfc-editor.org/rfc/rfc4741#section-8.6">Validate Capability</a>.
+ * The following RPCs are supported:
+ * <ul>
+ * <li>{@link Validate}</li>
+ * </ul>
+ */
+ VALIDATE_1_0,
+ /**
+ * This device supports <a href="https://www.rfc-editor.org/rfc/rfc6241#section-8.6">Validate Capability</a>.
+ * The following RPCs are supported:
+ * <ul>
+ * <li>{@link Validate}</li>
+ * </ul>
+ */
+ VALIDATE_1_1;
+ }