Improve segmented journal actor metrics
[controller.git] / opendaylight / blueprint / src / main / resources / opendaylight-blueprint-ext-1.0.0.xsd
index a95ba620ea06c7e2d6dfe57d2ae7ed1e97ac3db5..297bbb439404c903c0921b9a99747da4ceeedbc3 100644 (file)
@@ -3,24 +3,77 @@
     targetNamespace="http://opendaylight.org/xmlns/blueprint/v1.0.0" elementFormDefault="qualified"
     attributeFormDefault="unqualified" version="1.0.0">
 
+  <!--
+   Copyright © 2016, 2018 Brocade Communications Systems, Inc. and others.
+
+   This program and the accompanying materials are made available under the
+   terms of the Eclipse Public License v1.0 which accompanies this distribution,
+   and is available at http://www.eclipse.org/legal/epl-v10.html
+   -->
+
   <xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0"/>
 
   <xsd:attribute name="restart-dependents-on-updates" type="xsd:boolean"/>
   <xsd:attribute name="use-default-for-reference-types" type="xsd:boolean"/>
   <xsd:attribute name="type" type="xsd:string"/>
 
-  <xsd:complexType name="TrpcImplementation">
+  <!--
+       String representation of an instance identifier. Precise string format
+       is undefined just now.
+   -->
+  <xsd:simpleType name="Tpath">
+    <xsd:restriction base="xsd:string"/>
+  </xsd:simpleType>
+
+  <!--
+       A promise to instantiate actions of specified binding interface.
+       Specified interface must define at least one action. In case a bean
+       is specified, it will be used as the implementation of last resort
+       for actions not otherwise bound. If a bean is not specified, a blank
+       implementation will be substituted.
+   -->
+  <xsd:complexType name="TactionProvider">
+    <xsd:attribute name="interface" type="bp:Tclass" use="required"/>
+    <xsd:attribute name="ref" type="bp:Tidref" use="optional"/>
+  </xsd:complexType>
+  <xsd:element name="action-provider" type="TactionProvider"/>
+
+  <!--
+       A reference to an action-provider providing specified interface.
+       Specified interface must define at least one action.
+   -->
+  <xsd:complexType name="TactionService">
+    <xsd:attribute name="interface" type="bp:Tclass" use="required"/>
+    <xsd:attribute name="id" type="xsd:ID"/>
+  </xsd:complexType>
+  <xsd:element name="action-service" type="TactionService"/>
+
+  <!--
+       Implementation of an action at specific instance. This is used
+       to provide binding to actions on specific context, rather than
+       to a more general contract of action-provider.
+  <xsd:complexType name="TactionImplementation">
     <xsd:attribute name="interface" type="bp:Tclass" use="optional"/>
     <xsd:attribute name="ref" type="bp:Tidref" use="required"/>
+    <xsd:attribute name="path" type="Tpath" use="required"/>
+    <xsd:attribute name="id" type="xsd:ID"/>
   </xsd:complexType>
-  <xsd:element name="rpc-implementation" type="TrpcImplementation"/>
+  <xsd:element name="action-implementation" type="TactionImplementation"/ -->
+
+  <!--
+       A reference to a specific action-implementation.
+  <xsd:complexType name="TactionInstance">
+    <xsd:attribute name="interface" type="bp:Tclass" use="required"/>
+    <xsd:attribute name="path" type="Tpath" use="required"/>
+    <xsd:attribute name="id" type="xsd:ID"/>
+  </xsd:complexType>
+  <xsd:element name="action-instance" type="TactionInstance"/ -->
 
-  <xsd:complexType name="TroutedRpcImplementation">
+  <xsd:complexType name="TrpcImplementation">
     <xsd:attribute name="interface" type="bp:Tclass" use="optional"/>
     <xsd:attribute name="ref" type="bp:Tidref" use="required"/>
-    <xsd:attribute name="id" type="xsd:ID"/>
   </xsd:complexType>
-  <xsd:element name="routed-rpc-implementation" type="TroutedRpcImplementation"/>
+  <xsd:element name="rpc-implementation" type="TrpcImplementation"/>
 
   <xsd:complexType name="TrpcService">
     <xsd:attribute name="interface" type="bp:Tclass" use="required"/>