You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cxf.apache.org by Aki Yoshida <el...@googlemail.com> on 2012/05/23 23:07:11 UTC

Re: svn commit: r1340905 - in /cxf/trunk/rt/features/clustering: ./ src/main/java/org/apache/cxf/clustering/blueprint/ src/main/resources/META-INF/ src/main/resources/OSGI-INF/ src/main/resources/OSGI-INF/blueprint/ src/main/resources/schemas/ src/ma

Regarding this ID type, I think it's time we move this type into the
cxf-beans schema because we now have three schemas (wsrm, http, and
cluster) locally defining this ID type.

The cxf-beans schema seems to be the right place. If there is no
objection, I can do the move and consolidate all these three schemas
to use that type.

2012/5/22 Willem Jiang <wi...@gmail.com>:
> Hi Dan,
>
> Thanks for the hint, I just commit the new patch to get ride of blueprint
> schema.
>
>
> On Mon May 21 22:41:12 2012, Daniel Kulp wrote:
>>
>>
>>
>> Willem,
>>
>> Can we do this without having separate Blueprint and Spring schemas?
>>  Since
>> this is effectively a new schema for both, I'd hate to have 2 schemas when
>> one could do.
>>
>>
>> The configuration/wsrm-manager.xsd did something similar at one point and
>> ended up defining a very small "identifiedType" complexType to stick the
>> attributes that are required instead of pulling them from Spring or
>> Blueprint.
>>
>> Also:  the blueprint xsd is invalid.   There is a missing closing element
>> and the Apache  header is missing.    But if you get rid of it... problem
>> solved.  :-)
>>
>> Thanks!
>>
>> Dan
>>
>>
>>
>>
>> On Monday, May 21, 2012 07:00:00 AM ningjiang@apache.org wrote:
>>>
>>> Author: ningjiang
>>> Date: Mon May 21 06:59:59 2012
>>> New Revision: 1340905
>>>
>>> URL: http://svn.apache.org/viewvc?rev=1340905&view=rev
>>> Log:
>>> CXF-4326 CXF-4327 add blueprint support on the cxf clustering
>>>
>>> Added:
>>>
>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>> blueprint/
>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>> blueprint/ClusteringBPNamespaceHandler.java
>>> cxf/trunk/rt/features/clustering/src/main/resources/META-INF/spring.schem
>>> as cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/
>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/
>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/cx
>>> f-clustering.xml
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/clu
>>> stering.xsd
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/clustering.xs
>>> d Modified:
>>>     cxf/trunk/rt/features/clustering/pom.xml
>>>
>>> Modified: cxf/trunk/rt/features/clustering/pom.xml
>>> URL:
>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/pom.xml?rev
>>> =1340905&r1=1340904&r2=1340905&view=diff
>>> =========================================================================
>>> ===== --- cxf/trunk/rt/features/clustering/pom.xml (original)
>>> +++ cxf/trunk/rt/features/clustering/pom.xml Mon May 21 06:59:59 2012
>>> @@ -55,6 +55,12 @@
>>>              <version>${project.version}</version>
>>>          </dependency>
>>>          <dependency>
>>> +<groupId>org.apache.aries.blueprint</groupId>
>>> +<artifactId>org.apache.aries.blueprint.core</artifactId>
>>> +<scope>provided</scope>
>>> +<optional>true</optional>
>>> +</dependency>
>>> +<dependency>
>>>              <groupId>org.springframework</groupId>
>>>              <artifactId>spring-core</artifactId>
>>>              <scope>provided</scope>
>>>
>>> Added:
>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>> blueprint/ClusteringBPNamespaceHandler.java URL:
>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/ja
>>>
>>> va/org/apache/cxf/clustering/blueprint/ClusteringBPNamespaceHandler.java?r
>>> ev=1340905&view=auto
>>> =========================================================================
>>> ===== ---
>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>> blueprint/ClusteringBPNamespaceHandler.java (added) +++
>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>> blueprint/ClusteringBPNamespaceHandler.java Mon May 21 06:59:59 2012 @@
>>> -0,0 +1,59 @@
>>> +/**
>>> + * Licensed to the Apache Software Foundation (ASF) under one
>>> + * or more contributor license agreements. See the NOTICE file
>>> + * distributed with this work for additional information
>>> + * regarding copyright ownership. The ASF licenses this file
>>> + * to you under the Apache License, Version 2.0 (the
>>> + * "License"); you may not use this file except in compliance
>>> + * with the License. You may obtain a copy of the License at
>>> + *
>>> + * http://www.apache.org/licenses/LICENSE-2.0
>>> + *
>>> + * Unless required by applicable law or agreed to in writing,
>>> + * software distributed under the License is distributed on an
>>> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>>> + * KIND, either express or implied. See the License for the
>>> + * specific language governing permissions and limitations
>>> + * under the License.
>>> + */
>>> +package org.apache.cxf.clustering.blueprint;
>>> +
>>> +import java.net.URL;
>>> +import java.util.Set;
>>> +
>>> +import org.w3c.dom.Element;
>>> +import org.w3c.dom.Node;
>>> +
>>> +import org.apache.aries.blueprint.NamespaceHandler;
>>> +import org.apache.aries.blueprint.ParserContext;
>>> +import org.apache.cxf.clustering.FailoverFeature;
>>> +import org.apache.cxf.clustering.LoadDistributorTargetSelector;
>>> +import
>>> org.apache.cxf.configuration.blueprint.SimpleBPBeanDefinitionParser;
>>> +import org.osgi.service.blueprint.reflect.ComponentMetadata;
>>> +import org.osgi.service.blueprint.reflect.Metadata;
>>> +
>>> +public class ClusteringBPNamespaceHandler implements NamespaceHandler {
>>> +    public ComponentMetadata decorate(Node node, ComponentMetadata
>>> component, ParserContext context) { +        return null;
>>> +    }
>>> +
>>> +    public Metadata parse(Element element, ParserContext context) {
>>> +        String s = element.getLocalName();
>>> +        if ("failover".equals(s)) {
>>> +            return new
>>> SimpleBPBeanDefinitionParser(FailoverFeature.class).parse(element,
>>> context); +        } else if ("loadDistributor".equals(s)) {
>>> +            return new
>>> SimpleBPBeanDefinitionParser(LoadDistributorTargetSelector.class).parse(e
>>> lement, context); +        }
>>> +        return null;
>>> +    }
>>> +
>>> +    public Set<Class>  getManagedClasses() {
>>> +        //probably should have the various stuff in cxf-api in here?
>>> +        return null;
>>> +    }
>>> +
>>> +    public URL getSchemaLocation(String namespace) {
>>> +        return
>>> getClass().getClassLoader().getResource("/schemas/blueprint/clustering.xs
>>> d"); +    }
>>> +
>>> +}
>>>
>>> Added:
>>> cxf/trunk/rt/features/clustering/src/main/resources/META-INF/spring.schem
>>> as URL:
>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/re
>>> sources/META-INF/spring.schemas?rev=1340905&view=auto
>>> =========================================================================
>>> ===== ---
>>> cxf/trunk/rt/features/clustering/src/main/resources/META-INF/spring.schem
>>> as (added) +++
>>> cxf/trunk/rt/features/clustering/src/main/resources/META-INF/spring.schem
>>> as Mon May 21 06:59:59 2012 @@ -0,0 +1,21 @@
>>> +#
>>> +#
>>> +#    Licensed to the Apache Software Foundation (ASF) under one
>>> +#    or more contributor license agreements. See the NOTICE file
>>> +#    distributed with this work for additional information
>>> +#    regarding copyright ownership. The ASF licenses this file
>>> +#    to you under the Apache License, Version 2.0 (the
>>> +#    "License"); you may not use this file except in compliance
>>> +#    with the License. You may obtain a copy of the License at
>>> +#
>>> +#    http://www.apache.org/licenses/LICENSE-2.0
>>> +#
>>> +#    Unless required by applicable law or agreed to in writing,
>>> +#    software distributed under the License is distributed on an
>>> +#    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>>> +#    KIND, either express or implied. See the License for the
>>> +#    specific language governing permissions and limitations
>>> +#    under the License.
>>> +#
>>> +#
>>> +http\://cxf.apache.org/schemas/clustering.xsd=schemas/clustering.xsd
>>> \ No newline at end of file
>>>
>>> Added:
>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/cx
>>> f-clustering.xml URL:
>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/re
>>> sources/OSGI-INF/blueprint/cxf-clustering.xml?rev=1340905&view=auto
>>> =========================================================================
>>> ===== ---
>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/cx
>>> f-clustering.xml (added) +++
>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/cx
>>> f-clustering.xml Mon May 21 06:59:59 2012 @@ -0,0 +1,31 @@
>>> +<!--
>>> +  ~ /**
>>> +  ~  * Licensed to the Apache Software Foundation (ASF) under one or
>>> more
>>> +  ~  * contributor license agreements.  See the NOTICE file distributed
>>> with +  ~  * this work for additional information regarding copyright
>>> ownership. +  ~  * The ASF licenses this file to You under the Apache
>>> License, Version 2.0 +  ~  * (the "License"); you may not use this file
>>> except in compliance with +  ~  * the License.  You may obtain a copy of
>>> the License at
>>> +  ~  *
>>> +  ~  *      http://www.apache.org/licenses/LICENSE-2.0
>>> +  ~  *
>>> +  ~  * Unless required by applicable law or agreed to in writing,
>>> software +  ~  * distributed under the License is distributed on an "AS
>>> IS" BASIS, +  ~  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
>>> express or implied. +  ~  * See the License for the specific language
>>> governing permissions and +  ~  * limitations under the License.
>>> +  ~  */
>>> +  -->
>>> +
>>> +<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>>> +           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>> +
>>> xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0" +
>>>          xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0
>>> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd">  +
>>> +<service interface="org.apache.aries.blueprint.NamespaceHandler">
>>> +<service-properties>
>>> +<entry key="osgi.service.blueprint.namespace"
>>> value="http://cxf.apache.org/blueprint/clustering"/>  +
>>> </service-properties>
>>> +<bean
>>> class="org.apache.cxf.clustering.blueprint.ClusteringBPNamespaceHandler"/
>>>>
>>>> +</service>
>>>
>>> +</blueprint>
>>> \ No newline at end of file
>>>
>>> Added:
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/clu
>>> stering.xsd URL:
>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/re
>>> sources/schemas/blueprint/clustering.xsd?rev=1340905&view=auto
>>> =========================================================================
>>> ===== ---
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/clu
>>> stering.xsd (added) +++
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/clu
>>> stering.xsd Mon May 21 06:59:59 2012 @@ -0,0 +1,57 @@
>>> +<xsd:schema xmlns="http://cxf.apache.org/blueprint/clustering"
>>> +  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>> +  xmlns:beans="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>>> +  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>> +  targetNamespace="http://cxf.apache.org/blueprint/clustering"
>>> +  elementFormDefault="qualified"
>>> +  attributeFormDefault="unqualified">
>>> +
>>> +<xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>>> schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"
>>> />  +
>>> +<xsd:element name="failover">
>>> +<xsd:annotation>
>>> +<xsd:documentation>Configures the failover feature. This element is
>>> associated with the org.apache.cxf.clustering.FailoverFeature
>>> object.</xsd:documentation>  +</xsd:annotation>
>>> +<xsd:complexType>
>>> +<xsd:complexContent>
>>> +<xsd:extension base="beans:Tcomponent">
>>> +<xsd:all>
>>> +<xsd:element name="strategy" type="xsd:anyType"
>>> minOccurs="0">  +<xsd:annotation>
>>> +<xsd:documentation>Configures the strategy that the
>>> failover feature will be used. The Strategy object instance need to be
>>> implemented the
>>> org.apache.cxf.clustering.FailoverStrategy.</xsd:documentation>  +
>>>      </xsd:annotation>
>>> +</xsd:element>
>>> +<xsd:element name="targetSelector" type="xsd:anyType"
>>> minOccurs="0">  +<xsd:annotation>
>>> +<xsd:documentation>Configures the the targetSelector
>>> which will be used in the failover feature.</xsd:documentation>  +
>>>      </xsd:annotation>
>>> +</xsd:all>
>>> +</xsd:complexContent>
>>> +</xsd:complexType>
>>> +</xsd:element>
>>> +
>>> +<xsd:element name="loadDistributor">
>>> +<xsd:annotation>
>>> +<xsd:documentation>Configures the loadDistributor feature. This
>>> element is associated with the org.apache.cxf.clustering.FailoverFeature
>>> object.</xsd:documentation>  +</xsd:annotation>
>>> +<xsd:complexType>
>>> +<xsd:complexContent>
>>> +<xsd:extension base="beans:Tcomponent">
>>> +<xsd:all>
>>> +<xsd:element name="strategy" type="xsd:anyType"
>>> minOccurs="0">  +<xsd:annotation>
>>> +<xsd:documentation>Configures the strategy that the
>>> loadDistributor feature will be used. The Strategy object instance need
>>> to be implemented the
>>> org.apache.cxf.clustering.FailoverStrategy.</xsd:documentation>  +
>>>      </xsd:annotation>
>>> +</xsd:element>
>>> +<xsd:element name="targetSelector" type="xsd:anyType"
>>> minOccurs="0">  +<xsd:annotation>
>>> +<xsd:documentation>Configures the the targetSelector
>>> which will be used in the loadDistributor feature.</xsd:documentation>  +
>>>             </xsd:annotation>
>>> +</xsd:element>
>>> +</xsd:all>
>>> +</xsd:extension>
>>> +</xsd:complexContent>
>>> +</xsd:complexType>
>>> +</xsd:element>
>>> +
>>> +</xsd:schema>
>>> \ No newline at end of file
>>>
>>> Added:
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/clustering.xs
>>> d URL:
>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/re
>>> sources/schemas/clustering.xsd?rev=1340905&view=auto
>>> =========================================================================
>>> ===== ---
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/clustering.xs
>>> d (added) +++
>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/clustering.xs
>>> d Mon May 21 06:59:59 2012 @@ -0,0 +1,77 @@
>>> +<?xml version="1.0" encoding="UTF-8"?>
>>> +<!--
>>> +  Licensed to the Apache Software Foundation (ASF) under one
>>> +  or more contributor license agreements. See the NOTICE file
>>> +  distributed with this work for additional information
>>> +  regarding copyright ownership. The ASF licenses this file
>>> +  to you under the Apache License, Version 2.0 (the
>>> +  "License"); you may not use this file except in compliance
>>> +  with the License. You may obtain a copy of the License at
>>> +
>>> +  http://www.apache.org/licenses/LICENSE-2.0
>>> +
>>> +  Unless required by applicable law or agreed to in writing,
>>> +  software distributed under the License is distributed on an
>>> +  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>>> +  KIND, either express or implied. See the License for the
>>> +  specific language governing permissions and limitations
>>> +  under the License.
>>> +-->
>>> +<xsd:schema xmlns="http://cxf.apache.org/clustering"
>>> +  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>> +  xmlns:beans="http://www.springframework.org/schema/beans"
>>> +  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>> +  targetNamespace="http://cxf.apache.org/clustering"
>>> +  elementFormDefault="qualified"
>>> +  attributeFormDefault="unqualified">
>>> +
>>> +<xsd:import namespace="http://www.springframework.org/schema/beans"
>>> schemaLocation="http://www.springframework.org/schema/beans/spring-beans.
>>> xsd"/>  +
>>> +<xsd:element name="failover">
>>> +<xsd:annotation>
>>> +<xsd:documentation>Configures the failover feature. This element is
>>> associated with the org.apache.cxf.clustering.FailoverFeature
>>> object.</xsd:documentation>  +</xsd:annotation>
>>> +<xsd:complexType>
>>> +<xsd:complexContent>
>>> +<xsd:extension base="beans:identifiedType">
>>> +<xsd:all>
>>> +<xsd:element name="strategy" type="xsd:anyType"
>>> minOccurs="0">  +<xsd:annotation>
>>> +<xsd:documentation>Configures the strategy that the
>>> failover feature will be used. The Strategy object instance need to be
>>> implemented the
>>> org.apache.cxf.clustering.FailoverStrategy.</xsd:documentation>  +
>>>      </xsd:annotation>
>>> +</xsd:element>
>>> +<xsd:element name="targetSelector" type="xsd:anyType"
>>> minOccurs="0">  +<xsd:annotation>
>>> +<xsd:documentation>Configures the targetSelector which
>>> will be used in the failover feature.</xsd:documentation>  +
>>> </xsd:annotation>
>>> +</xsd:element>
>>> +</xsd:all>
>>> +</xsd:complexContent>
>>> +</xsd:complexType>
>>> +</xsd:element>
>>> +
>>> +<xsd:element name="loadDistributor">
>>> +<xsd:annotation>
>>> +<xsd:documentation>Configures the loadDistributor feature. This
>>> element is associated with the org.apache.cxf.clustering.FailoverFeature
>>> object.</xsd:documentation>  +</xsd:annotation>
>>> +<xsd:complexType>
>>> +<xsd:complexContent>
>>> +<xsd:extension base="beans:identifiedType">
>>> +<xsd:all>
>>> +<xsd:element name="strategy" type="xsd:anyType"
>>> minOccurs="0">  +<xsd:annotation>
>>> +<xsd:documentation>Configures the strategy that the
>>> loadDistributor feature will be used. The Strategy object instance need
>>> to be implemented the
>>> org.apache.cxf.clustering.FailoverStrategy.</xsd:documentation>  +
>>>      </xsd:annotation>
>>> +</xsd:element>
>>> +<xsd:element name="targetSelector" type="xsd:anyType"
>>> minOccurs="0">  +<xsd:annotation>
>>> +<xsd:documentation>Configures the the targetSelector
>>> which will be used in the loadDistributor feature.</xsd:documentation>  +
>>>             </xsd:annotation>
>>> +</xsd:element>
>>> +</xsd:all>
>>> +</xsd:extension>
>>> +</xsd:complexContent>
>>> +</xsd:complexType>
>>> +</xsd:element>
>>> +
>>> +</xsd:schema>
>>> \ No newline at end of file
>
>
>
>
> --
> Willem
> ----------------------------------
> CamelOne 2012 Conference, May 15-16, 2012: http://camelone.com
> FuseSource
> Web: http://www.fusesource.com
> Blog:    http://willemjiang.blogspot.com (English)
>        http://jnn.javaeye.com (Chinese)
> Twitter: willemjiang
> Weibo: willemjiang
>

Re: svn commit: r1340905 - in /cxf/trunk/rt/features/clustering: ./ src/main/java/org/apache/cxf/clustering/blueprint/ src/main/resources/META-INF/ src/main/resources/OSGI-INF/ src/main/resources/OSGI-INF/blueprint/ src/main/resources/schemas/ src/ma

Posted by Willem Jiang <wi...@gmail.com>.
+1 for it.
I think we also need to add the attribute of depends-on, it will help 
people to avoid some bean depends issue.

On 5/24/12 5:07 AM, Aki Yoshida wrote:
> Regarding this ID type, I think it's time we move this type into the
> cxf-beans schema because we now have three schemas (wsrm, http, and
> cluster) locally defining this ID type.
>
> The cxf-beans schema seems to be the right place. If there is no
> objection, I can do the move and consolidate all these three schemas
> to use that type.
>
> 2012/5/22 Willem Jiang<wi...@gmail.com>:
>> Hi Dan,
>>
>> Thanks for the hint, I just commit the new patch to get ride of blueprint
>> schema.
>>
>>
>> On Mon May 21 22:41:12 2012, Daniel Kulp wrote:
>>>
>>>
>>>
>>> Willem,
>>>
>>> Can we do this without having separate Blueprint and Spring schemas?
>>>   Since
>>> this is effectively a new schema for both, I'd hate to have 2 schemas when
>>> one could do.
>>>
>>>
>>> The configuration/wsrm-manager.xsd did something similar at one point and
>>> ended up defining a very small "identifiedType" complexType to stick the
>>> attributes that are required instead of pulling them from Spring or
>>> Blueprint.
>>>
>>> Also:  the blueprint xsd is invalid.   There is a missing closing element
>>> and the Apache  header is missing.    But if you get rid of it... problem
>>> solved.  :-)
>>>
>>> Thanks!
>>>
>>> Dan
>>>
>>>
>>>
>>>
>>> On Monday, May 21, 2012 07:00:00 AM ningjiang@apache.org wrote:
>>>>
>>>> Author: ningjiang
>>>> Date: Mon May 21 06:59:59 2012
>>>> New Revision: 1340905
>>>>
>>>> URL: http://svn.apache.org/viewvc?rev=1340905&view=rev
>>>> Log:
>>>> CXF-4326 CXF-4327 add blueprint support on the cxf clustering
>>>>
>>>> Added:
>>>>
>>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>>> blueprint/
>>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>>> blueprint/ClusteringBPNamespaceHandler.java
>>>> cxf/trunk/rt/features/clustering/src/main/resources/META-INF/spring.schem
>>>> as cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/
>>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/
>>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/cx
>>>> f-clustering.xml
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/clu
>>>> stering.xsd
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/clustering.xs
>>>> d Modified:
>>>>      cxf/trunk/rt/features/clustering/pom.xml
>>>>
>>>> Modified: cxf/trunk/rt/features/clustering/pom.xml
>>>> URL:
>>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/pom.xml?rev
>>>> =1340905&r1=1340904&r2=1340905&view=diff
>>>> =========================================================================
>>>> ===== --- cxf/trunk/rt/features/clustering/pom.xml (original)
>>>> +++ cxf/trunk/rt/features/clustering/pom.xml Mon May 21 06:59:59 2012
>>>> @@ -55,6 +55,12 @@
>>>>               <version>${project.version}</version>
>>>>           </dependency>
>>>>           <dependency>
>>>> +<groupId>org.apache.aries.blueprint</groupId>
>>>> +<artifactId>org.apache.aries.blueprint.core</artifactId>
>>>> +<scope>provided</scope>
>>>> +<optional>true</optional>
>>>> +</dependency>
>>>> +<dependency>
>>>>               <groupId>org.springframework</groupId>
>>>>               <artifactId>spring-core</artifactId>
>>>>               <scope>provided</scope>
>>>>
>>>> Added:
>>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>>> blueprint/ClusteringBPNamespaceHandler.java URL:
>>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/ja
>>>>
>>>> va/org/apache/cxf/clustering/blueprint/ClusteringBPNamespaceHandler.java?r
>>>> ev=1340905&view=auto
>>>> =========================================================================
>>>> ===== ---
>>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>>> blueprint/ClusteringBPNamespaceHandler.java (added) +++
>>>> cxf/trunk/rt/features/clustering/src/main/java/org/apache/cxf/clustering/
>>>> blueprint/ClusteringBPNamespaceHandler.java Mon May 21 06:59:59 2012 @@
>>>> -0,0 +1,59 @@
>>>> +/**
>>>> + * Licensed to the Apache Software Foundation (ASF) under one
>>>> + * or more contributor license agreements. See the NOTICE file
>>>> + * distributed with this work for additional information
>>>> + * regarding copyright ownership. The ASF licenses this file
>>>> + * to you under the Apache License, Version 2.0 (the
>>>> + * "License"); you may not use this file except in compliance
>>>> + * with the License. You may obtain a copy of the License at
>>>> + *
>>>> + * http://www.apache.org/licenses/LICENSE-2.0
>>>> + *
>>>> + * Unless required by applicable law or agreed to in writing,
>>>> + * software distributed under the License is distributed on an
>>>> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>>>> + * KIND, either express or implied. See the License for the
>>>> + * specific language governing permissions and limitations
>>>> + * under the License.
>>>> + */
>>>> +package org.apache.cxf.clustering.blueprint;
>>>> +
>>>> +import java.net.URL;
>>>> +import java.util.Set;
>>>> +
>>>> +import org.w3c.dom.Element;
>>>> +import org.w3c.dom.Node;
>>>> +
>>>> +import org.apache.aries.blueprint.NamespaceHandler;
>>>> +import org.apache.aries.blueprint.ParserContext;
>>>> +import org.apache.cxf.clustering.FailoverFeature;
>>>> +import org.apache.cxf.clustering.LoadDistributorTargetSelector;
>>>> +import
>>>> org.apache.cxf.configuration.blueprint.SimpleBPBeanDefinitionParser;
>>>> +import org.osgi.service.blueprint.reflect.ComponentMetadata;
>>>> +import org.osgi.service.blueprint.reflect.Metadata;
>>>> +
>>>> +public class ClusteringBPNamespaceHandler implements NamespaceHandler {
>>>> +    public ComponentMetadata decorate(Node node, ComponentMetadata
>>>> component, ParserContext context) { +        return null;
>>>> +    }
>>>> +
>>>> +    public Metadata parse(Element element, ParserContext context) {
>>>> +        String s = element.getLocalName();
>>>> +        if ("failover".equals(s)) {
>>>> +            return new
>>>> SimpleBPBeanDefinitionParser(FailoverFeature.class).parse(element,
>>>> context); +        } else if ("loadDistributor".equals(s)) {
>>>> +            return new
>>>> SimpleBPBeanDefinitionParser(LoadDistributorTargetSelector.class).parse(e
>>>> lement, context); +        }
>>>> +        return null;
>>>> +    }
>>>> +
>>>> +    public Set<Class>    getManagedClasses() {
>>>> +        //probably should have the various stuff in cxf-api in here?
>>>> +        return null;
>>>> +    }
>>>> +
>>>> +    public URL getSchemaLocation(String namespace) {
>>>> +        return
>>>> getClass().getClassLoader().getResource("/schemas/blueprint/clustering.xs
>>>> d"); +    }
>>>> +
>>>> +}
>>>>
>>>> Added:
>>>> cxf/trunk/rt/features/clustering/src/main/resources/META-INF/spring.schem
>>>> as URL:
>>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/re
>>>> sources/META-INF/spring.schemas?rev=1340905&view=auto
>>>> =========================================================================
>>>> ===== ---
>>>> cxf/trunk/rt/features/clustering/src/main/resources/META-INF/spring.schem
>>>> as (added) +++
>>>> cxf/trunk/rt/features/clustering/src/main/resources/META-INF/spring.schem
>>>> as Mon May 21 06:59:59 2012 @@ -0,0 +1,21 @@
>>>> +#
>>>> +#
>>>> +#    Licensed to the Apache Software Foundation (ASF) under one
>>>> +#    or more contributor license agreements. See the NOTICE file
>>>> +#    distributed with this work for additional information
>>>> +#    regarding copyright ownership. The ASF licenses this file
>>>> +#    to you under the Apache License, Version 2.0 (the
>>>> +#    "License"); you may not use this file except in compliance
>>>> +#    with the License. You may obtain a copy of the License at
>>>> +#
>>>> +#    http://www.apache.org/licenses/LICENSE-2.0
>>>> +#
>>>> +#    Unless required by applicable law or agreed to in writing,
>>>> +#    software distributed under the License is distributed on an
>>>> +#    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>>>> +#    KIND, either express or implied. See the License for the
>>>> +#    specific language governing permissions and limitations
>>>> +#    under the License.
>>>> +#
>>>> +#
>>>> +http\://cxf.apache.org/schemas/clustering.xsd=schemas/clustering.xsd
>>>> \ No newline at end of file
>>>>
>>>> Added:
>>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/cx
>>>> f-clustering.xml URL:
>>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/re
>>>> sources/OSGI-INF/blueprint/cxf-clustering.xml?rev=1340905&view=auto
>>>> =========================================================================
>>>> ===== ---
>>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/cx
>>>> f-clustering.xml (added) +++
>>>> cxf/trunk/rt/features/clustering/src/main/resources/OSGI-INF/blueprint/cx
>>>> f-clustering.xml Mon May 21 06:59:59 2012 @@ -0,0 +1,31 @@
>>>> +<!--
>>>> +  ~ /**
>>>> +  ~  * Licensed to the Apache Software Foundation (ASF) under one or
>>>> more
>>>> +  ~  * contributor license agreements.  See the NOTICE file distributed
>>>> with +  ~  * this work for additional information regarding copyright
>>>> ownership. +  ~  * The ASF licenses this file to You under the Apache
>>>> License, Version 2.0 +  ~  * (the "License"); you may not use this file
>>>> except in compliance with +  ~  * the License.  You may obtain a copy of
>>>> the License at
>>>> +  ~  *
>>>> +  ~  *      http://www.apache.org/licenses/LICENSE-2.0
>>>> +  ~  *
>>>> +  ~  * Unless required by applicable law or agreed to in writing,
>>>> software +  ~  * distributed under the License is distributed on an "AS
>>>> IS" BASIS, +  ~  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
>>>> express or implied. +  ~  * See the License for the specific language
>>>> governing permissions and +  ~  * limitations under the License.
>>>> +  ~  */
>>>> +  -->
>>>> +
>>>> +<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>>>> +           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>> +
>>>> xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0" +
>>>>           xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0
>>>> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd">    +
>>>> +<service interface="org.apache.aries.blueprint.NamespaceHandler">
>>>> +<service-properties>
>>>> +<entry key="osgi.service.blueprint.namespace"
>>>> value="http://cxf.apache.org/blueprint/clustering"/>    +
>>>> </service-properties>
>>>> +<bean
>>>> class="org.apache.cxf.clustering.blueprint.ClusteringBPNamespaceHandler"/
>>>>>
>>>>> +</service>
>>>>
>>>> +</blueprint>
>>>> \ No newline at end of file
>>>>
>>>> Added:
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/clu
>>>> stering.xsd URL:
>>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/re
>>>> sources/schemas/blueprint/clustering.xsd?rev=1340905&view=auto
>>>> =========================================================================
>>>> ===== ---
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/clu
>>>> stering.xsd (added) +++
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/blueprint/clu
>>>> stering.xsd Mon May 21 06:59:59 2012 @@ -0,0 +1,57 @@
>>>> +<xsd:schema xmlns="http://cxf.apache.org/blueprint/clustering"
>>>> +  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>>> +  xmlns:beans="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>>>> +  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>> +  targetNamespace="http://cxf.apache.org/blueprint/clustering"
>>>> +  elementFormDefault="qualified"
>>>> +  attributeFormDefault="unqualified">
>>>> +
>>>> +<xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>>>> schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"
>>>> />    +
>>>> +<xsd:element name="failover">
>>>> +<xsd:annotation>
>>>> +<xsd:documentation>Configures the failover feature. This element is
>>>> associated with the org.apache.cxf.clustering.FailoverFeature
>>>> object.</xsd:documentation>    +</xsd:annotation>
>>>> +<xsd:complexType>
>>>> +<xsd:complexContent>
>>>> +<xsd:extension base="beans:Tcomponent">
>>>> +<xsd:all>
>>>> +<xsd:element name="strategy" type="xsd:anyType"
>>>> minOccurs="0">    +<xsd:annotation>
>>>> +<xsd:documentation>Configures the strategy that the
>>>> failover feature will be used. The Strategy object instance need to be
>>>> implemented the
>>>> org.apache.cxf.clustering.FailoverStrategy.</xsd:documentation>    +
>>>>       </xsd:annotation>
>>>> +</xsd:element>
>>>> +<xsd:element name="targetSelector" type="xsd:anyType"
>>>> minOccurs="0">    +<xsd:annotation>
>>>> +<xsd:documentation>Configures the the targetSelector
>>>> which will be used in the failover feature.</xsd:documentation>    +
>>>>       </xsd:annotation>
>>>> +</xsd:all>
>>>> +</xsd:complexContent>
>>>> +</xsd:complexType>
>>>> +</xsd:element>
>>>> +
>>>> +<xsd:element name="loadDistributor">
>>>> +<xsd:annotation>
>>>> +<xsd:documentation>Configures the loadDistributor feature. This
>>>> element is associated with the org.apache.cxf.clustering.FailoverFeature
>>>> object.</xsd:documentation>    +</xsd:annotation>
>>>> +<xsd:complexType>
>>>> +<xsd:complexContent>
>>>> +<xsd:extension base="beans:Tcomponent">
>>>> +<xsd:all>
>>>> +<xsd:element name="strategy" type="xsd:anyType"
>>>> minOccurs="0">    +<xsd:annotation>
>>>> +<xsd:documentation>Configures the strategy that the
>>>> loadDistributor feature will be used. The Strategy object instance need
>>>> to be implemented the
>>>> org.apache.cxf.clustering.FailoverStrategy.</xsd:documentation>    +
>>>>       </xsd:annotation>
>>>> +</xsd:element>
>>>> +<xsd:element name="targetSelector" type="xsd:anyType"
>>>> minOccurs="0">    +<xsd:annotation>
>>>> +<xsd:documentation>Configures the the targetSelector
>>>> which will be used in the loadDistributor feature.</xsd:documentation>    +
>>>>              </xsd:annotation>
>>>> +</xsd:element>
>>>> +</xsd:all>
>>>> +</xsd:extension>
>>>> +</xsd:complexContent>
>>>> +</xsd:complexType>
>>>> +</xsd:element>
>>>> +
>>>> +</xsd:schema>
>>>> \ No newline at end of file
>>>>
>>>> Added:
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/clustering.xs
>>>> d URL:
>>>> http://svn.apache.org/viewvc/cxf/trunk/rt/features/clustering/src/main/re
>>>> sources/schemas/clustering.xsd?rev=1340905&view=auto
>>>> =========================================================================
>>>> ===== ---
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/clustering.xs
>>>> d (added) +++
>>>> cxf/trunk/rt/features/clustering/src/main/resources/schemas/clustering.xs
>>>> d Mon May 21 06:59:59 2012 @@ -0,0 +1,77 @@
>>>> +<?xml version="1.0" encoding="UTF-8"?>
>>>> +<!--
>>>> +  Licensed to the Apache Software Foundation (ASF) under one
>>>> +  or more contributor license agreements. See the NOTICE file
>>>> +  distributed with this work for additional information
>>>> +  regarding copyright ownership. The ASF licenses this file
>>>> +  to you under the Apache License, Version 2.0 (the
>>>> +  "License"); you may not use this file except in compliance
>>>> +  with the License. You may obtain a copy of the License at
>>>> +
>>>> +  http://www.apache.org/licenses/LICENSE-2.0
>>>> +
>>>> +  Unless required by applicable law or agreed to in writing,
>>>> +  software distributed under the License is distributed on an
>>>> +  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>>>> +  KIND, either express or implied. See the License for the
>>>> +  specific language governing permissions and limitations
>>>> +  under the License.
>>>> +-->
>>>> +<xsd:schema xmlns="http://cxf.apache.org/clustering"
>>>> +  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>>> +  xmlns:beans="http://www.springframework.org/schema/beans"
>>>> +  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>> +  targetNamespace="http://cxf.apache.org/clustering"
>>>> +  elementFormDefault="qualified"
>>>> +  attributeFormDefault="unqualified">
>>>> +
>>>> +<xsd:import namespace="http://www.springframework.org/schema/beans"
>>>> schemaLocation="http://www.springframework.org/schema/beans/spring-beans.
>>>> xsd"/>    +
>>>> +<xsd:element name="failover">
>>>> +<xsd:annotation>
>>>> +<xsd:documentation>Configures the failover feature. This element is
>>>> associated with the org.apache.cxf.clustering.FailoverFeature
>>>> object.</xsd:documentation>    +</xsd:annotation>
>>>> +<xsd:complexType>
>>>> +<xsd:complexContent>
>>>> +<xsd:extension base="beans:identifiedType">
>>>> +<xsd:all>
>>>> +<xsd:element name="strategy" type="xsd:anyType"
>>>> minOccurs="0">    +<xsd:annotation>
>>>> +<xsd:documentation>Configures the strategy that the
>>>> failover feature will be used. The Strategy object instance need to be
>>>> implemented the
>>>> org.apache.cxf.clustering.FailoverStrategy.</xsd:documentation>    +
>>>>       </xsd:annotation>
>>>> +</xsd:element>
>>>> +<xsd:element name="targetSelector" type="xsd:anyType"
>>>> minOccurs="0">    +<xsd:annotation>
>>>> +<xsd:documentation>Configures the targetSelector which
>>>> will be used in the failover feature.</xsd:documentation>    +
>>>> </xsd:annotation>
>>>> +</xsd:element>
>>>> +</xsd:all>
>>>> +</xsd:complexContent>
>>>> +</xsd:complexType>
>>>> +</xsd:element>
>>>> +
>>>> +<xsd:element name="loadDistributor">
>>>> +<xsd:annotation>
>>>> +<xsd:documentation>Configures the loadDistributor feature. This
>>>> element is associated with the org.apache.cxf.clustering.FailoverFeature
>>>> object.</xsd:documentation>    +</xsd:annotation>
>>>> +<xsd:complexType>
>>>> +<xsd:complexContent>
>>>> +<xsd:extension base="beans:identifiedType">
>>>> +<xsd:all>
>>>> +<xsd:element name="strategy" type="xsd:anyType"
>>>> minOccurs="0">    +<xsd:annotation>
>>>> +<xsd:documentation>Configures the strategy that the
>>>> loadDistributor feature will be used. The Strategy object instance need
>>>> to be implemented the
>>>> org.apache.cxf.clustering.FailoverStrategy.</xsd:documentation>    +
>>>>       </xsd:annotation>
>>>> +</xsd:element>
>>>> +<xsd:element name="targetSelector" type="xsd:anyType"
>>>> minOccurs="0">    +<xsd:annotation>
>>>> +<xsd:documentation>Configures the the targetSelector
>>>> which will be used in the loadDistributor feature.</xsd:documentation>    +
>>>>              </xsd:annotation>
>>>> +</xsd:element>
>>>> +</xsd:all>
>>>> +</xsd:extension>
>>>> +</xsd:complexContent>
>>>> +</xsd:complexType>
>>>> +</xsd:element>
>>>> +
>>>> +</xsd:schema>
>>>> \ No newline at end of file
>>
>>
>>
>>
>> --
>> Willem
>> ----------------------------------
>> CamelOne 2012 Conference, May 15-16, 2012: http://camelone.com
>> FuseSource
>> Web: http://www.fusesource.com
>> Blog:    http://willemjiang.blogspot.com (English)
>>         http://jnn.javaeye.com (Chinese)
>> Twitter: willemjiang
>> Weibo: willemjiang
>>
>


-- 
Willem
----------------------------------
CamelOne 2012 Conference, May 15-16, 2012: http://camelone.com
FuseSource
Web: http://www.fusesource.com
Blog:    http://willemjiang.blogspot.com (English)
          http://jnn.javaeye.com (Chinese)
Twitter: willemjiang
Weibo: willemjiang