cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Willem Jiang <willem.ji...@gmail.com>
Subject 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
Date Thu, 24 May 2012 01:24:04 GMT
+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<willem.jiang@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

Mime
View raw message