You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by gn...@apache.org on 2015/11/27 12:08:40 UTC
svn commit: r1716829 [2/3] - in /aries/trunk/blueprint: ./
blueprint-spring-extender/ blueprint-spring-extender/src/
blueprint-spring-extender/src/main/ blueprint-spring-extender/src/main/java/
blueprint-spring-extender/src/main/java/org/ blueprint-spr...
Added: aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.1.xsd
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.1.xsd?rev=1716829&view=auto
==============================================================================
--- aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.1.xsd (added)
+++ aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.1.xsd Fri Nov 27 11:08:40 2015
@@ -0,0 +1,601 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<xsd:schema xmlns="http://www.springframework.org/schema/osgi"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:beans="http://www.springframework.org/schema/beans"
+ xmlns:tool="http://www.springframework.org/schema/tool"
+ targetNamespace="http://www.springframework.org/schema/osgi"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.1">
+
+ <xsd:import namespace="http://www.springframework.org/schema/beans"/>
+ <xsd:import namespace="http://www.springframework.org/schema/tool"/>
+
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Namespace support for the core services provided by Spring Dynamic Modules.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:attributeGroup name="defaults">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[Defaults for Spring-DM OSGi declarations.]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <!-- attributes -->
+ <xsd:attribute name="default-timeout" type="xsd:long" default="30000">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Default timeout (in milliseconds) for all reference (service importers) elements that do not explicitly specify one.
+ Default value is 300000 ms (5 minutes).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="default-cardinality" type="TdefaultCardinalityOptions" default="1..X">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Default cardinality (of the relationship to the backing service(s)) for all OSGi references (singular or collections)
+ elements that do not explicitly specify one.
+ Default value is '1..X' (resolved to '1..1' for osgi:reference and '1..N' for osgi:list/set) which means that a backing
+ service must exist (this is a mandatory service reference). A value of '0..X' (resolved to '0..1' for osgi:reference
+ and '0..N' for osgi:list/set) indicates that it is acceptable to be no backing service (an optional service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:simpleType name="TdefaultCardinalityOptions">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="1..X">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ A backing service must exist (this is a mandatory service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="0..X">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ A backing service can be missing (this is an optional service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- reference -->
+ <xsd:element name="reference" type="TsingleReference">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a reference to a service obtained via the OSGi service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="Treference">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <xsd:element name="interfaces" type="beans:listOrSetType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The set of service interfaces to advertise in the service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="listener" type="Tlistener" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will receive notification when a service backing this reference is
+ bound or unbound.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="interface" use="optional" type="xsd:token">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The service interface that the services obtained via the registry are required to support.
+ By convention this is a Java interface type, but may also be a (non-final) class type.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:expected-type type="java.lang.Class" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="filter" use="optional" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines an OSGi filter expression that is used to constrain the set of matching services
+ in the service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="depends-on" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Used to refer to the name of another bean that this bean depends on. Ensures that the
+ service registry look-up does not happen until after the dependent bean has been created
+ (most commonly used to refer to a bundle bean).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="bean-name" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Convenient shortcut for specifying a filter expression that matches on the bean-name property
+ that is automatically advertised for beans published using the service element.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="context-class-loader" type="TreferenceClassLoaderOptions" default="client">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines how the context class loader is managed when invoking operations on a service
+ backing this service reference. The default value is 'client' which means that the context
+ class loader has visibility of the resources on this bundle's classpath. Alternate
+ options are 'service-provider' which means that the context class loader has visibility of
+ resources on the bundle classpath of the bundle that exported the service, and 'unmanaged'
+ which does not do any management of the context class loader.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TreferenceClassLoaderOptions">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="client"/>
+ <xsd:enumeration value="service-provider"/>
+ <xsd:enumeration value="unmanaged"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:complexType name="Tlistener">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will be notified when the service backing the enclosing service reference element is bound or
+ unbound. Use either the 'ref' attribute or a nested bean declaration for the listener bean.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <!-- nested bean declaration -->
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="skip"/>
+ </xsd:sequence>
+
+ <!-- shortcut for bean references -->
+ <xsd:attribute name="ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Refers by name to the bean that will receive bind and unbind events
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="bind-method" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The name of the method to be invoked when a backing service is bound.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="unbind-method" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The name of the method to be invoked when a backing service is unbound.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+ <!-- single reference -->
+ <xsd:complexType name="TsingleReference">
+ <xsd:complexContent>
+ <xsd:extension base="Treference">
+ <xsd:attribute name="cardinality" use="optional" type="TsingleReferenceCardinality">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the required cardinality of the relationship to the backing service. If not specified,
+ the default-cardinality attribute will apply. A value is '1..1' means that a backing service
+ must exist (this is a mandatory service reference). A value of '0..1' indicates that it is
+ acceptable to be no backing service (an optional service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="timeout" use="optional" type="xsd:long">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ For a 'reference' element, the amount of time (in milliseconds) to wait for a backing service to be
+ available when an operation is invoked. If not specified, the default-timeout attribute will apply.
+ See also the default-timeout attribute of the osgi element.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TsingleReferenceCardinality">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="1..1"/>
+ <xsd:enumeration value="0..1"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- reference collections (set, list) -->
+ <xsd:element name="list" type="TreferenceCollection">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.service.importer.support.OsgiServiceCollectionProxyFactoryBean"><![CDATA[
+ Defines a bean of type 'List' that contains all of the services matching the given criteria.
+ The list members are managed dynamically as matching backing services come and go.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.List"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="set" type="TreferenceCollection">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.service.importer.support.OsgiServiceCollectionProxyFactoryBean"><![CDATA[
+ Defines a bean of type 'Set' that contains all of the services matching the given criteria.
+ The set members are managed dynamically as matching backing services come and go.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.Set"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TreferenceCollection">
+ <xsd:complexContent>
+ <xsd:extension base="Treference">
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <xsd:element name="comparator" type="Tcomparator">
+ <xsd:annotation>
+ <xsd:documentation source="java:java.util.Comparator"><![CDATA[
+ Used to define an inline bean of type Comparator that will be used to sort the matching services.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:expected-type type="java.util.Comparator" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="comparator-ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Used to refer to a named bean implementing the Comparator interface that will be used to
+ sort the matching services.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ <xsd:attribute name="cardinality" use="optional" type="TcollectionCardinality">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the required cardinality of the relationship to the backing services. If not specified,
+ the default-cardinality attribute will apply. A value of '1..N' means that at least one backing
+ service must exist (this is a mandatory service reference. A value of '0..N' indicates that it
+ is acceptable for there to be no backing service (an optional service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ <xsd:attribute name="greedy-proxying" use="optional" type="xsd:boolean" default="false">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Indicates whether the proxies created for the imported OSGi services will be generated using
+ just the classes specified (false) or all the classes exported by the service and visible to
+ the importing bundle (true). The default value is false.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="Tcomparator">
+ <xsd:annotation>
+ <xsd:documentation source="java:java.util.Comparator"><![CDATA[
+ Used to define an inline bean of type Comparator that will be used to sort the matching services.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.Comparator" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ <xsd:choice>
+ <xsd:element name="natural" type="TnaturalOrdering"/>
+ <xsd:sequence minOccurs="1" maxOccurs="1">
+ <!-- nested bean declaration -->
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="skip"/>
+ </xsd:sequence>
+ </xsd:choice>
+ </xsd:complexType>
+
+ <xsd:complexType name="TnaturalOrdering">
+ <xsd:attribute name="basis" type="TorderingBasis" use="required"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TorderingBasis">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="service"/>
+ <xsd:enumeration value="service-reference"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="TcollectionCardinality">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="1..N"/>
+ <xsd:enumeration value="0..N"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- service -->
+
+ <xsd:element name="service" type="Tservice"/>
+
+ <xsd:complexType name="Tservice">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.service.exporter.support.OsgiServiceFactoryBean"><![CDATA[
+ Exports the reference bean as a service in the OSGi service registry. The bean defined by this element is of
+ type org.osgi.framework.ServiceRegistration.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="org.osgi.framework.ServiceRegistration"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <xsd:element name="interfaces" type="beans:listOrSetType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The set of service interfaces to advertise in the service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="service-properties" type="beans:mapType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the service properties.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="registration-listener" type="TserviceRegistrationListener" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will be notified when this service is registered or unregistered in the
+ OSGi service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <!-- nested bean declaration -->
+ <xsd:any namespace="##other" minOccurs="0" maxOccurs="1" processContents="skip"/>
+ </xsd:sequence>
+ <xsd:attribute name="interface" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the interface to advertise for this service in the service registry.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:expected-type type="java.lang.Class" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Refers to the named bean to be exported as a service in the service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="depends-on" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Used to ensure that the service is not exported to the registry before the named bean
+ has been created.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="context-class-loader" type="TserviceClassLoaderOptions" default="unmanaged">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines how the context class loader will be managed when an operation is invoked on the
+ exported service. The default value is 'unmanaged' which means that no management of
+ the context class loader is attempted. A value of 'service-provider' guarantees that
+ the context class loader will have visibility of all the resources on the class path of
+ bundle exporting the service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="auto-export" type="TautoExportModes" default="disabled">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Enables Spring to automatically manage the set of service interfaces advertised for the
+ service. By default this facility is disabled. A value of 'interfaces' advertises all
+ of the Java interfaces supported by the exported service. A value of 'class-hierarchy'
+ advertises all the Java classes in the hierarchy of the exported service. A value of
+ 'all-classes' advertises all Java interfaces and classes.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="ranking" type="xsd:int" default="0">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Specify the service ranking to be used when advertising the service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="TserviceRegistrationListener">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will be notified when the bean is registered or unregistered in the OSGi Service Registry.
+ Use either the 'ref' attribute or a nested bean declaration for the listener bean.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <!-- nested bean declaration -->
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="skip"/>
+ </xsd:sequence>
+
+ <!-- shortcut for bean references -->
+ <xsd:attribute name="ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Refers by name to the bean that will receive register and unregister events.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="registration-method" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The name of the method to be invoked when the service is registered.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="unregistration-method" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The name of the method to be invoked when the service is unregistered.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TserviceClassLoaderOptions">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="service-provider"/>
+ <xsd:enumeration value="unmanaged"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="TautoExportModes">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="disabled"/>
+ <xsd:enumeration value="interfaces"/>
+ <xsd:enumeration value="class-hierarchy"/>
+ <xsd:enumeration value="all-classes"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- bundle -->
+
+ <xsd:element name="bundle" type="Tbundle">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.bundle.BundleFactoryBean"><![CDATA[
+ Defines a bean representing a Bundle object. May be used to drive bean lifecycle transitions.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="org.osgi.framework.Bundle"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="Tbundle">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <!-- optional nested bean declaration -->
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="lax">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ OSGi bundle to work with.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:expected-type type="org.osgi.framework.Bundle" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:any>
+ </xsd:sequence>
+
+ <xsd:attribute name="symbolic-name" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The bundle symbolic name of the bundle object. Normally used when interacting with an already
+ installed bundle.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="depends-on" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Indicates that this bundle object should not be created until the named bean has been created.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ <xsd:attribute name="location" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Location used to install, update or/and identify a bundle.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="action" type="TbundleAction" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Lifecyle action to drive on the bundle. 'start' starts the bundle, installing if necessary.
+ 'stop' stops the bundle if it is currently ACTIVE. 'install' installs the bundle if it is
+ currently uninstalled. 'uninstall' stops the bundle if needed, and then uninstalls it.
+ 'update' installs the bundle if needed, and then invokes the Bundle.update() operation.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="destroy-action" type="TbundleAction" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Lifecyle action to drive on the bundle. 'start' starts the bundle, installing if necessary.
+ 'stop' stops the bundle if it is currently ACTIVE. 'install' installs the bundle if it is
+ currently uninstalled. 'uninstall' stops the bundle if needed, and then uninstalls it.
+ 'update' installs the bundle if needed, and then invokes the Bundle.update() operation.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="start-level" type="xsd:int" use="optional" default="0">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Start level to set for the bundle.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TbundleAction">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="start"/>
+ <xsd:enumeration value="stop"/>
+ <xsd:enumeration value="install"/>
+ <xsd:enumeration value="uninstall"/>
+ <xsd:enumeration value="update"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+</xsd:schema>
\ No newline at end of file
Added: aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.2.xsd
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.2.xsd?rev=1716829&view=auto
==============================================================================
--- aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.2.xsd (added)
+++ aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.2.xsd Fri Nov 27 11:08:40 2015
@@ -0,0 +1,610 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+
+<xsd:schema xmlns="http://www.springframework.org/schema/osgi"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:beans="http://www.springframework.org/schema/beans"
+ xmlns:tool="http://www.springframework.org/schema/tool"
+ targetNamespace="http://www.springframework.org/schema/osgi"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.2">
+
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
+ <xsd:import namespace="http://www.springframework.org/schema/beans"/>
+ <xsd:import namespace="http://www.springframework.org/schema/tool"/>
+
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Namespace support for the core services provided by Spring Dynamic Modules.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:attributeGroup name="defaults">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[Defaults for Spring-DM OSGi declarations.]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <!-- attributes -->
+ <xsd:attribute name="default-timeout" type="xsd:long" default="30000">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Default timeout (in milliseconds) for all reference (service importers) elements that do not explicitly specify one.
+ Default value is 300000 ms (5 minutes).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="default-cardinality" type="TdefaultCardinalityOptions" default="1..X">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Default cardinality (of the relationship to the backing service(s)) for all OSGi references (singular or collections)
+ elements that do not explicitly specify one.
+ Default value is '1..X' (resolved to '1..1' for osgi:reference and '1..N' for osgi:list/set) which means that a backing
+ service must exist (this is a mandatory service reference). A value of '0..X' (resolved to '0..1' for osgi:reference
+ and '0..N' for osgi:list/set) indicates that it is acceptable to be no backing service (an optional service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:simpleType name="TdefaultCardinalityOptions">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="1..X">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ A backing service must exist (this is a mandatory service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="0..X">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ A backing service can be missing (this is an optional service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- reference -->
+ <xsd:element name="reference" type="TsingleReference">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a reference to a service obtained via the OSGi service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="Treference">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <xsd:element name="interfaces" type="beans:listOrSetType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The set of service interfaces that the services obtained via the registry are required to support.
+ By convention, the interface attribute is a Java interface type, but may also be a (non-final)
+ class type.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="listener" type="Tlistener" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will receive notification when a service backing this reference is
+ bound or unbound.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="interface" use="optional" type="xsd:token">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The service interface that the services obtained via the registry are required to support.
+ By convention this is a Java interface type, but may also be a (non-final) class type.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:expected-type type="java.lang.Class" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="filter" use="optional" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines an OSGi filter expression that is used to constrain the set of matching services
+ in the service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="depends-on" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Used to refer to the name of another bean that this bean depends on. Ensures that the
+ service registry look-up does not happen until after the dependent bean has been created
+ (most commonly used to refer to a bundle bean).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="bean-name" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Convenient shortcut for specifying a filter expression that matches on the bean-name property
+ that is automatically advertised for beans published using the service element.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="context-class-loader" type="TreferenceClassLoaderOptions" default="client">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines how the context class loader is managed when invoking operations on a service
+ backing this service reference. The default value is 'client' which means that the context
+ class loader has visibility of the resources on this bundle's classpath. Alternate
+ options are 'service-provider' which means that the context class loader has visibility of
+ resources on the bundle classpath of the bundle that exported the service, and 'unmanaged'
+ which does not do any management of the context class loader.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TreferenceClassLoaderOptions">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="client"/>
+ <xsd:enumeration value="service-provider"/>
+ <xsd:enumeration value="unmanaged"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:complexType name="Tlistener">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will be notified when the service backing the enclosing service reference element is bound or
+ unbound. Use either the 'ref' attribute or a nested bean declaration for the listener bean.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <!-- nested bean declaration -->
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="skip"/>
+ </xsd:sequence>
+
+ <!-- shortcut for bean references -->
+ <xsd:attribute name="ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Refers by name to the bean that will receive bind and unbind events
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="bind-method" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The name of the method to be invoked when a backing service is bound.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="unbind-method" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The name of the method to be invoked when a backing service is unbound.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+ <!-- single reference -->
+ <xsd:complexType name="TsingleReference">
+ <xsd:complexContent>
+ <xsd:extension base="Treference">
+ <xsd:attribute name="cardinality" use="optional" type="TsingleReferenceCardinality">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the required cardinality of the relationship to the backing service. If not specified,
+ the default-cardinality attribute will apply. A value is '1..1' means that a backing service
+ must exist (this is a mandatory service reference). A value of '0..1' indicates that it is
+ acceptable to be no backing service (an optional service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="timeout" use="optional" type="xsd:long">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ For a 'reference' element, the amount of time (in milliseconds) to wait for a backing service to be
+ available when an operation is invoked. If not specified, the default-timeout attribute will apply.
+ See also the default-timeout attribute of the osgi element.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TsingleReferenceCardinality">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="1..1"/>
+ <xsd:enumeration value="0..1"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- reference collections (set, list) -->
+ <xsd:element name="list" type="TreferenceCollection">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.service.importer.support.OsgiServiceCollectionProxyFactoryBean"><![CDATA[
+ Defines a bean of type 'List' that contains all of the services matching the given criteria.
+ The list members are managed dynamically as matching backing services come and go.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.List"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="set" type="TreferenceCollection">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.service.importer.support.OsgiServiceCollectionProxyFactoryBean"><![CDATA[
+ Defines a bean of type 'Set' that contains all of the services matching the given criteria.
+ The set members are managed dynamically as matching backing services come and go.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.Set"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TreferenceCollection">
+ <xsd:complexContent>
+ <xsd:extension base="Treference">
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <xsd:element name="comparator" type="Tcomparator">
+ <xsd:annotation>
+ <xsd:documentation source="java:java.util.Comparator"><![CDATA[
+ Used to define an inline bean of type Comparator that will be used to sort the matching services.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:expected-type type="java.util.Comparator" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="comparator-ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Used to refer to a named bean implementing the Comparator interface that will be used to
+ sort the matching services.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ <xsd:attribute name="cardinality" use="optional" type="TcollectionCardinality">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the required cardinality of the relationship to the backing services. If not specified,
+ the default-cardinality attribute will apply. A value of '1..N' means that at least one backing
+ service must exist (this is a mandatory service reference. A value of '0..N' indicates that it
+ is acceptable for there to be no backing service (an optional service reference).
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ <xsd:attribute name="greedy-proxying" use="optional" type="xsd:boolean" default="false">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Indicates whether the proxies created for the imported OSGi services will be generated using
+ just the classes specified (false) or all the classes exported by the service and visible to
+ the importing bundle (true). The default value is false.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="Tcomparator">
+ <xsd:annotation>
+ <xsd:documentation source="java:java.util.Comparator"><![CDATA[
+ Used to define an inline bean of type Comparator that will be used to sort the matching services.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.Comparator" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ <xsd:choice>
+ <xsd:element name="natural" type="TnaturalOrdering"/>
+ <xsd:sequence minOccurs="1" maxOccurs="1">
+ <!-- nested bean declaration -->
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="skip"/>
+ </xsd:sequence>
+ </xsd:choice>
+ </xsd:complexType>
+
+ <xsd:complexType name="TnaturalOrdering">
+ <xsd:attribute name="basis" type="TorderingBasis" use="required"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TorderingBasis">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="service"/>
+ <xsd:enumeration value="service-reference"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="TcollectionCardinality">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="1..N"/>
+ <xsd:enumeration value="0..N"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- service -->
+
+ <xsd:element name="service" type="Tservice"/>
+
+ <xsd:complexType name="TbaseService">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:attribute name="interface" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the interface to advertise for this service in the service registry.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:expected-type type="java.lang.Class" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="depends-on" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Used to ensure that the service is not exported to the registry before the named bean
+ has been created.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="context-class-loader" type="TserviceClassLoaderOptions" default="unmanaged">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines how the context class loader will be managed when an operation is invoked on the
+ exported service. The default value is 'unmanaged' which means that no management of
+ the context class loader is attempted. A value of 'service-provider' guarantees that
+ the context class loader will have visibility of all the resources on the class path of
+ bundle exporting the service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="auto-export" type="TautoExportModes" default="disabled">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Enables Spring to automatically manage the set of service interfaces advertised for the
+ service. By default this facility is disabled. A value of 'interfaces' advertises all
+ of the Java interfaces supported by the exported service. A value of 'class-hierarchy'
+ advertises all the Java classes in the hierarchy of the exported service. A value of
+ 'all-classes' advertises all Java interfaces and classes.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="Tservice">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.service.exporter.support.OsgiServiceFactoryBean"><![CDATA[
+ Exports the reference bean as a service in the OSGi service registry. The bean defined by this element is of
+ type org.osgi.framework.ServiceRegistration.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="org.osgi.framework.ServiceRegistration"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="TbaseService">
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <xsd:element name="interfaces" type="beans:listOrSetType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The set of service interfaces to advertise in the service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="registration-listener" type="TserviceRegistrationListener" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will be notified when this service is registered or unregistered in the
+ OSGi service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="service-properties" type="beans:mapType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the service properties.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <!-- nested bean declaration -->
+ <xsd:any namespace="##other" minOccurs="0" maxOccurs="1" processContents="skip"/>
+ </xsd:sequence>
+ <xsd:attribute name="ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Refers to the named bean to be exported as a service in the service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="ranking" type="xsd:int" default="0">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Specify the service ranking to be used when advertising the service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="TserviceRegistrationListener">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will be notified when the bean is registered or unregistered in the OSGi Service Registry.
+ Use either the 'ref' attribute or a nested bean declaration for the listener bean.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <!-- nested bean declaration -->
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="skip"/>
+ </xsd:sequence>
+
+ <!-- shortcut for bean references -->
+ <xsd:attribute name="ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Refers by name to the bean that will receive register and unregister events.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="registration-method" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The name of the method to be invoked when the service is registered.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="unregistration-method" type="xsd:token" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The name of the method to be invoked when the service is unregistered.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TserviceClassLoaderOptions">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="service-provider"/>
+ <xsd:enumeration value="unmanaged"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="TautoExportModes">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="disabled"/>
+ <xsd:enumeration value="interfaces"/>
+ <xsd:enumeration value="class-hierarchy"/>
+ <xsd:enumeration value="all-classes"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- bundle -->
+
+ <xsd:element name="bundle" type="Tbundle">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.bundle.BundleFactoryBean"><![CDATA[
+ Defines a bean representing a Bundle object. May be used to drive bean lifecycle transitions.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="org.osgi.framework.Bundle"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="Tbundle">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <!-- optional nested bean declaration -->
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="lax">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ OSGi bundle to work with.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:expected-type type="org.osgi.framework.Bundle" />
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:any>
+ </xsd:sequence>
+
+ <xsd:attribute name="symbolic-name" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The bundle symbolic name of the bundle object. Normally used when interacting with an already
+ installed bundle.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="depends-on" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Indicates that this bundle object should not be created until the named bean has been created.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ <xsd:attribute name="location" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Location used to install, update or/and identify a bundle.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="action" type="TbundleAction" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Lifecyle action to drive on the bundle. 'start' starts the bundle, installing if necessary.
+ 'stop' stops the bundle if it is currently ACTIVE. 'install' installs the bundle if it is
+ currently uninstalled. 'uninstall' stops the bundle if needed, and then uninstalls it.
+ 'update' installs the bundle if needed, and then invokes the Bundle.update() operation.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="destroy-action" type="TbundleAction" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Lifecyle action to drive on the bundle. 'start' starts the bundle, installing if necessary.
+ 'stop' stops the bundle if it is currently ACTIVE. 'install' installs the bundle if it is
+ currently uninstalled. 'uninstall' stops the bundle if needed, and then uninstalls it.
+ 'update' installs the bundle if needed, and then invokes the Bundle.update() operation.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="start-level" type="xsd:int" use="optional" default="0">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Start level to set for the bundle.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TbundleAction">
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="start"/>
+ <xsd:enumeration value="stop"/>
+ <xsd:enumeration value="install"/>
+ <xsd:enumeration value="uninstall"/>
+ <xsd:enumeration value="update"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+</xsd:schema>
\ No newline at end of file
Added: aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.0.xsd
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.0.xsd?rev=1716829&view=auto
==============================================================================
--- aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.0.xsd (added)
+++ aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.0.xsd Fri Nov 27 11:08:40 2015
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+
+<xsd:schema xmlns="http://www.springframework.org/schema/osgi-compendium"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:beans="http://www.springframework.org/schema/beans"
+ xmlns:tool="http://www.springframework.org/schema/tool"
+ targetNamespace="http://www.springframework.org/schema/osgi-compendium"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.0">
+
+ <xsd:import namespace="http://www.springframework.org/schema/beans"/>
+ <xsd:import namespace="http://www.springframework.org/schema/tool"/>
+
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Namespace support for the compendium services provided by Spring Dynamic Modules.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+
+ <!-- property placeholder -->
+
+ <xsd:element name="property-placeholder" type="TpropertyPlaceholder">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a property placeholder that replaces property values using
+ delimited values ( ${...} by default) with properties sourced from
+ the Configuration Admin service under the given persistent id.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.Properties"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TpropertyPlaceholder">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <!-- nested properties declaration -->
+ <xsd:element name="default-properties" type="beans:propsType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Default property value to use for placeholder replacement
+ when the associated keys cannot be found under the given
+ persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="persistent-id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent-id to lookup in Configuration Admin. Must refer to the pid of
+ a managed service, and not a managed service factory.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="placeholder-prefix" type="xsd:string" use="optional" default="${">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The prefix to use for placeholder values. The default is '${'.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="placeholder-suffix" type="xsd:string" use="optional" default="}">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The suffix to use for placeholder values. The default is '}'.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="defaults-ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Refers to a bean of type Properties or Map that supplies default placeholder
+ replacement values to be used when the associated keys cannot be found under the given
+ persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <!-- ELEMENTS BELOW THIS LINE ARE NOT SUPPORTED IN THE 1.0 RELEASE -->
+
+ <!-- managed-service -->
+
+ <xsd:element name="managed-service" type="TmanagedService">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a bean based on the given class name, and with properties autowired-by-name based
+ on the configuration stored under the given persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TmanagedService">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:group ref="beans:beanElements"/>
+ <xsd:attributeGroup ref="beans:beanAttributes"/>
+ <xsd:attribute name="persistent-id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent-id under which the configuration for this bean is stored in
+ the Configuration Admin service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="updateStrategy" type="TupdateStrategyType" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The strategy to use when the configuration data backing the beans defined by this element is
+ updated. The default value is 'none', meaning that any update after the initial configuration
+ of the beans is ignored. A value of 'bean-managed' means that the method specified in the
+ 'update-method' attribute will be invoked. A value of 'container-managed' means that the container
+ will autowire the bean instance by name with the new property set.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="update-method" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The update-method to invoke when using a 'bean-managed' update strategy.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+
+ <!-- managed-service-factory -->
+
+ <xsd:element name="managed-service-factory" type="TmanagedServiceFactory">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a collection of beans based on the given class name, and with properties autowired-by-name based
+ on the configuration sets stored under the given factory persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TmanagedServiceFactory">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:group ref="beans:beanElements"/>
+ <xsd:attributeGroup ref="beans:beanAttributes"/>
+ <xsd:attribute name="factory-pid" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The factory persistent id under which the configuration sets for the beans defined by
+ this element are stored in the Configuration Admin service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="updateStrategy" type="TupdateStrategyType" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The strategy to use when the configuration data backing the beans defined by this element is
+ updated. The default value is 'none', meaning that any update after the initial configuration
+ of the beans is ignored. A value of 'bean-managed' means that the method specified in the
+ 'update-method' attribute will be invoked. A value of 'container-managed' means that the container
+ will autowire the bean instance by name with the new property set.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="update-method" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The update-method to invoke when using a 'bean-managed' update strategy.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TupdateStrategyType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="none"/>
+ <xsd:enumeration value="bean-managed"/>
+ <xsd:enumeration value="container-managed"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- config-properties -->
+
+ <xsd:element name="config-properties" type="TconfigProperties">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Declares that the properties found in the Configuration Admin service under the given
+ persistent id should be exported as properties of the registered service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TconfigProperties">
+ <xsd:attribute name="persistent-id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent id under which the properties to be exported are registered.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+</xsd:schema>
\ No newline at end of file
Added: aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.1.xsd
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.1.xsd?rev=1716829&view=auto
==============================================================================
--- aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.1.xsd (added)
+++ aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.1.xsd Fri Nov 27 11:08:40 2015
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+
+<xsd:schema xmlns="http://www.springframework.org/schema/osgi-compendium"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:beans="http://www.springframework.org/schema/beans"
+ xmlns:tool="http://www.springframework.org/schema/tool"
+ targetNamespace="http://www.springframework.org/schema/osgi-compendium"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.1">
+
+ <xsd:import namespace="http://www.springframework.org/schema/beans"/>
+ <xsd:import namespace="http://www.springframework.org/schema/tool"/>
+
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Namespace support for the compendium services provided by Spring Dynamic Modules.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+
+ <!-- property placeholder -->
+
+ <xsd:element name="property-placeholder" type="TpropertyPlaceholder">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a property placeholder that replaces property values using
+ delimited values ( ${...} by default) with properties sourced from
+ the Configuration Admin service under the given persistent id.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.Properties"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TpropertyPlaceholder">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:sequence minOccurs="0" maxOccurs="1">
+ <!-- nested properties declaration -->
+ <xsd:element name="default-properties" type="beans:propsType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Default property value to use for placeholder replacement
+ when the associated keys cannot be found under the given
+ persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="persistent-id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent-id to lookup in Configuration Admin. Must refer to the pid of
+ a managed service, and not a managed service factory.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="placeholder-prefix" type="xsd:string" use="optional" default="${">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The prefix to use for placeholder values. The default is '${'.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="placeholder-suffix" type="xsd:string" use="optional" default="}">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The suffix to use for placeholder values. The default is '}'.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="defaults-ref" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Refers to a bean of type Properties or Map that supplies default placeholder
+ replacement values to be used when the associated keys cannot be found under the given
+ persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <!-- ELEMENTS BELOW THIS LINE ARE NOT SUPPORTED IN THE 1.0 RELEASE -->
+
+ <!-- managed-service -->
+
+ <xsd:element name="managed-service" type="TmanagedService">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a bean based on the given class name, and with properties autowired-by-name based
+ on the configuration stored under the given persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TmanagedService">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:group ref="beans:beanElements"/>
+ <xsd:attributeGroup ref="beans:beanAttributes"/>
+ <xsd:attribute name="persistent-id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent-id under which the configuration for this bean is stored in
+ the Configuration Admin service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="updateStrategy" type="TupdateStrategyType" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The strategy to use when the configuration data backing the beans defined by this element is
+ updated. The default value is 'none', meaning that any update after the initial configuration
+ of the beans is ignored. A value of 'bean-managed' means that the method specified in the
+ 'update-method' attribute will be invoked. A value of 'container-managed' means that the container
+ will autowire the bean instance by name with the new property set.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="update-method" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The update-method to invoke when using a 'bean-managed' update strategy.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+
+ <!-- managed-service-factory -->
+
+ <xsd:element name="managed-service-factory" type="TmanagedServiceFactory">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a collection of beans based on the given class name, and with properties autowired-by-name based
+ on the configuration sets stored under the given factory persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TmanagedServiceFactory">
+ <xsd:complexContent>
+ <xsd:extension base="beans:identifiedType">
+ <xsd:group ref="beans:beanElements"/>
+ <xsd:attributeGroup ref="beans:beanAttributes"/>
+ <xsd:attribute name="factory-pid" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The factory persistent id under which the configuration sets for the beans defined by
+ this element are stored in the Configuration Admin service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="updateStrategy" type="TupdateStrategyType" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The strategy to use when the configuration data backing the beans defined by this element is
+ updated. The default value is 'none', meaning that any update after the initial configuration
+ of the beans is ignored. A value of 'bean-managed' means that the method specified in the
+ 'update-method' attribute will be invoked. A value of 'container-managed' means that the container
+ will autowire the bean instance by name with the new property set.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="update-method" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The update-method to invoke when using a 'bean-managed' update strategy.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="TupdateStrategyType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="none"/>
+ <xsd:enumeration value="bean-managed"/>
+ <xsd:enumeration value="container-managed"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- config-properties -->
+
+ <xsd:element name="config-properties" type="TconfigProperties">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Declares that the properties found in the Configuration Admin service under the given
+ persistent id should be exported as properties of the registered service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="TconfigProperties">
+ <xsd:attribute name="persistent-id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent id under which the properties to be exported are registered.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+</xsd:schema>
\ No newline at end of file
Added: aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.2.xsd
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.2.xsd?rev=1716829&view=auto
==============================================================================
--- aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.2.xsd (added)
+++ aries/trunk/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-compendium-1.2.xsd Fri Nov 27 11:08:40 2015
@@ -0,0 +1,165 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+
+<xsd:schema xmlns="http://www.springframework.org/schema/osgi-compendium"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:beans="http://www.springframework.org/schema/beans"
+ xmlns:osgi="http://www.springframework.org/schema/osgi"
+ xmlns:tool="http://www.springframework.org/schema/tool"
+ targetNamespace="http://www.springframework.org/schema/osgi-compendium"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.2">
+
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
+ <xsd:import namespace="http://www.springframework.org/schema/beans"/>
+ <xsd:import namespace="http://www.springframework.org/schema/tool"/>
+ <xsd:import namespace="http://www.springframework.org/schema/osgi"
+ schemaLocation="http://www.springframework.org/schema/osgi/spring-osgi.xsd"/>
+
+
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Namespace support for the compendium services provided by Spring Dynamic Modules.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+
+ <!-- internal reusable type -->
+ <xsd:attributeGroup name="updateAttributes">
+ <xsd:attribute name="update-strategy" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The strategy to use when the configuration data backing the beans defined by this element is
+ updated. The default value is 'none', meaning that any update after the initial configuration
+ of the beans is ignored. A value of 'bean-managed' means that the method specified in the
+ 'update-method' attribute will be invoked. A value of 'container-managed' means that the container
+ will autowire the bean instance by name with the new property set.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="none"/>
+ <xsd:enumeration value="bean-managed"/>
+ <xsd:enumeration value="container-managed"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="update-method" type="xsd:string" use="optional">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The update-method to invoke when using a 'bean-managed' update strategy.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+
+ <xsd:element name="managed-properties">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a bean based on the given class name and configuration, with properties autowired-by-name
+ based on the configuration stored under the given persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attributeGroup ref="updateAttributes"/>
+ <xsd:attribute name="persistent-id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent-id under which the configuration for this bean is stored in
+ the Configuration Admin service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!-- managed-service-factory -->
+
+ <xsd:element name="managed-service-factory">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a collection of beans based on the given class name, with properties autowired-by-name based
+ on the configuration sets stored under the given factory persistent id.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="osgi:TbaseService">
+ <xsd:sequence>
+ <xsd:element name="interfaces" type="beans:listOrSetType" minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The set of service interfaces to advertise in the service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="registration-listener" type="osgi:TserviceRegistrationListener" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines a listener that will be notified when this service is registered or unregistered in the
+ OSGi service registry.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <!-- the bean definition template -->
+ <xsd:any namespace="##other" minOccurs="1" maxOccurs="1" processContents="skip">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Defines the service definition template.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:any>
+ </xsd:sequence>
+ <xsd:attribute name="factory-pid" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent-id under which the configuration for this bean is stored in
+ the Configuration Admin service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attributeGroup ref="updateAttributes"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <!-- cm-properties -->
+ <xsd:element name="cm-properties">
+ <xsd:annotation>
+ <xsd:documentation source="java:org.springframework.osgi.compendium.cm.ConfigAdminPropertiesFactoryBean"><![CDATA[
+ Exposes the properties found in the Configuration Admin service under the given persistent id.
+ ]]></xsd:documentation>
+ <xsd:appinfo>
+ <tool:annotation>
+ <tool:exports type="java.util.Properties"/>
+ </tool:annotation>
+ </xsd:appinfo>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="beans:propsType">
+ <xsd:attribute name="id" type="xsd:ID"/>
+ <xsd:attribute name="persistent-id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ The persistent id under which the properties reside.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="local-override" type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Specifies whether local properties override properties from the Configuration Admin service.
+ Default is "false": properties from Configuration Admin service override local defaults.
+ If set to "true", local properties will override properties from Configuration Admin service.
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
\ No newline at end of file