You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cxf.apache.org by Daniel Kulp <dk...@apache.org> on 2012/05/21 16:41:12 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/main/res...


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
-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


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/main/res...

Posted by Daniel Kulp <dk...@apache.org>.
On Monday, May 21, 2012 08:24:40 PM Johan Edstrom wrote:
> With this last one, are there any other BP components missing?

I'll dig around on my desk and see if I can find the sticky note I had that 
listed them all.

Off the top of my head:  all the JMS stuff is still missing.   :-)

If in eclipse (or intellij I assume) you bring up the type hierarchy for the 
AbstractBeanDefinitionParser, you likely will get a fairly good list.   

Dan



> Thanks Willem btw!
> 
> On May 21, 2012, at 8:08 PM, Willem Jiang wrote:
> > 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
> >> 
-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


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/main/res...

Posted by Johan Edstrom <se...@gmail.com>.
With this last one, are there any other BP components missing?

Thanks Willem btw!


On May 21, 2012, at 8:08 PM, Willem Jiang wrote:

> 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/main/res...

Posted by 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