-<xsd:schema xmlns="http://opendaylight.org/xmlns/blueprint/v1.0.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+<xsd:schema xmlns="http://opendaylight.org/xmlns/blueprint/v1.0.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:bp="http://www.osgi.org/xmlns/blueprint/v1.0.0"
- targetNamespace="http://opendaylight.org/xmlns/blueprint/v1.0.0" elementFormDefault="qualified"
+ 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"/ -->
- <xsd:complexType name="TroutedRpcImplementation">
+ <!--
+ 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="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"/>
</xsd:sequence>
<xsd:attribute name="binding-class" type="bp:Tclass" use="required"/>
<xsd:attribute name="list-key-value" type="xsd:string" use="optional"/>
+ <xsd:attribute name="default-config-file-name" type="xsd:string" use="optional"/>
<xsd:attribute name="id" type="xsd:ID" use="required"/>
+ <xsd:attribute name="update-strategy" type="TupdateStrategy" use="optional" default="reload"/>
</xsd:complexType>
<xsd:element name="clustered-app-config" type="TclusteredAppConfig"/>
-
+ <xsd:simpleType name="TupdateStrategy">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="none"/>
+ <xsd:enumeration value="reload"/>
+ </xsd:restriction>
+ </xsd:simpleType>
<xsd:complexType name="TspecificReferenceList">
<xsd:attribute name="interface" type="bp:Tclass" use="required"/>
<xsd:attribute name="id" type="xsd:ID"/>
</xsd:complexType>
<xsd:element name="specific-reference-list" type="TspecificReferenceList"/>
-</xsd:schema>
\ No newline at end of file
+
+ <xsd:complexType name="TstaticReference">
+ <xsd:attribute name="interface" type="bp:Tclass" use="required"/>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+ <xsd:element name="static-reference" type="TstaticReference"/>
+</xsd:schema>