diff options
author | dougsleite <dougsleite@13f79535-47bb-0310-9956-ffa450edef68> | 2009-09-28 14:37:58 +0000 |
---|---|---|
committer | dougsleite <dougsleite@13f79535-47bb-0310-9956-ffa450edef68> | 2009-09-28 14:37:58 +0000 |
commit | f4f96f8c8ec04e4c1709d3037e57589145be12fa (patch) | |
tree | a8bf81061fdc2af53fae50eebf063bd1ecfdc854 /sandbox/dougsleite/policy-resolutiontrees/src | |
parent | 215c005bde88752999978adce56b09d2a90a13b7 (diff) |
- Changing the guardian-model, policy-recoveryrules, policy-resolutiontrees to a new module: implementation-guardian;
- The new module creates a new kind of implementation (implementation.guardian)
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@819561 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
10 files changed, 23 insertions, 354 deletions
diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicy.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/impl/ResolutionTreesImpl.java index 2a2972c8ca..669f06b1ef 100644 --- a/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicy.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/impl/ResolutionTreesImpl.java @@ -16,33 +16,17 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.policy.resolutiontrees; +package org.apache.tuscany.sca.implementation.guardian.impl; import java.util.Hashtable; import java.util.Map; -import javax.xml.namespace.QName; import org.apache.axiom.om.OMElement; -import org.apache.tuscany.sca.policy.Policy; -import org.apache.tuscany.sca.assembly.xml.Constants; +import org.apache.tuscany.sca.implementation.guardian.ResolutionTrees; -public class ResolutionTreesPolicy implements Policy { - - public static final QName RESOLUTION_TREES_POLICY_QNAME = - new QName(Constants.SCA10_TUSCANY_NS, org.apache.tuscany.sca.guardian.Constants.RESOLUTION_TREES); +public class ResolutionTreesImpl implements ResolutionTrees { private Map<String, OMElement> resolutionTreeElements = new Hashtable<String, OMElement>(); - public QName getSchemaName() { - return RESOLUTION_TREES_POLICY_QNAME; - } - - public void setUnresolved(boolean unresolved) { - } - - public boolean isUnresolved() { - return false; - } - public Map<String, OMElement> getResolutionTreeElements() { return resolutionTreeElements; } diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicyProcessor.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/xml/ResolutionTreesProcessor.java index ef0f8e9cea..b9cfe647b4 100644 --- a/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicyProcessor.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/xml/ResolutionTreesProcessor.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.policy.resolutiontrees; +package org.apache.tuscany.sca.implementation.guardian.xml; import javax.xml.namespace.QName; import javax.xml.stream.XMLStreamConstants; @@ -31,20 +31,20 @@ import org.apache.tuscany.sca.contribution.resolver.ModelResolver; import org.apache.tuscany.sca.contribution.service.ContributionReadException; import org.apache.tuscany.sca.contribution.service.ContributionResolveException; import org.apache.tuscany.sca.contribution.service.ContributionWriteException; -import org.apache.tuscany.sca.guardian.Constants; -import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint; -import org.apache.tuscany.sca.monitor.Monitor; +import org.apache.tuscany.sca.implementation.guardian.common.Constants; +import org.apache.tuscany.sca.implementation.guardian.impl.ResolutionTreesImpl; +import org.apache.tuscany.sca.implementation.guardian.ResolutionTrees; -public class ResolutionTreesPolicyProcessor implements StAXArtifactProcessor<ResolutionTreesPolicy>, Constants { +public class ResolutionTreesProcessor implements StAXArtifactProcessor<ResolutionTrees>, Constants { - private static final QName RESOLUTION_TREES_POLICY_QNAME = ResolutionTreesPolicy.RESOLUTION_TREES_POLICY_QNAME; + private static final QName RESOLUTION_TREES_POLICY_QNAME = ResolutionTrees.RESOLUTION_TREES_POLICY_QNAME; - public ResolutionTreesPolicyProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) { + public ResolutionTreesProcessor() { } - public ResolutionTreesPolicy read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException { + public ResolutionTrees read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException { - ResolutionTreesPolicy policy = new ResolutionTreesPolicy(); + ResolutionTrees policy = new ResolutionTreesImpl(); QName name = null; String ruleName = null; OMElement ruleElement = null; @@ -72,20 +72,20 @@ public class ResolutionTreesPolicyProcessor implements StAXArtifactProcessor<Res return policy; } - public void write(ResolutionTreesPolicy policy, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException { - throw new UnsupportedOperationException("Not supported yet."); + public void write(ResolutionTrees policy, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException { + //throw new UnsupportedOperationException("Not supported yet."); } public QName getArtifactType() { return RESOLUTION_TREES_POLICY_QNAME; } - public void resolve(ResolutionTreesPolicy arg0, ModelResolver arg1) throws ContributionResolveException { - throw new UnsupportedOperationException("Not supported yet."); + public void resolve(ResolutionTrees arg0, ModelResolver arg1) throws ContributionResolveException { + //throw new UnsupportedOperationException("Not supported yet."); } - public Class<ResolutionTreesPolicy> getModelType() { - return ResolutionTreesPolicy.class; + public Class<ResolutionTrees> getModelType() { + return ResolutionTrees.class; } private OMElement loadElement(XMLStreamReader reader) throws XMLStreamException { diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.SCADefinitionsProvider b/sandbox/dougsleite/implementation-guardian/src/main/resources/META-INF/services/org.apache.tuscany.sca.implementation.guardian.GuardianGroupImplementationFactory index ee7c2b6e4f..744815a572 100644 --- a/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.SCADefinitionsProvider +++ b/sandbox/dougsleite/implementation-guardian/src/main/resources/META-INF/services/org.apache.tuscany.sca.implementation.guardian.GuardianGroupImplementationFactory @@ -5,15 +5,15 @@ # 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. +# under the License. -# Implementation class for SCA Definitions Providers -org.apache.tuscany.sca.policy.resolutiontrees.ResolutionTreesPolicyDefinitionsProvider +# Implementation class for implementation model factory +org.apache.tuscany.sca.implementation.guardian.impl.GuardianGroupImplementationFactoryImpl diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicyDefinitionsProvider.java b/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicyDefinitionsProvider.java deleted file mode 100644 index 000979ddfc..0000000000 --- a/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicyDefinitionsProvider.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * 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.tuscany.sca.policy.resolutiontrees; - -import java.net.URI; -import java.net.URL; -import java.security.AccessController; -import java.security.PrivilegedAction; -import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor; -import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint; -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.definitions.SCADefinitions; -import org.apache.tuscany.sca.provider.SCADefinitionsProvider; -import org.apache.tuscany.sca.provider.SCADefinitionsProviderException; - -public class ResolutionTreesPolicyDefinitionsProvider implements SCADefinitionsProvider { - - private String definitionsFile = "org/apache/tuscany/sca/policy/resolutiontrees/definitions.xml"; - URLArtifactProcessor urlArtifactProcessor = null; - - public ResolutionTreesPolicyDefinitionsProvider(ExtensionPointRegistry registry) { - URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class); - urlArtifactProcessor = (URLArtifactProcessor) documentProcessors.getProcessor(SCADefinitions.class); - } - - public SCADefinitions getSCADefinition() throws SCADefinitionsProviderException { - URL definitionsFileUrl = AccessController.doPrivileged(new PrivilegedAction<URL>() { - - public URL run() { - return getClass().getClassLoader().getResource(definitionsFile); - } - }); - - try { - URI uri = new URI(definitionsFile); - return (SCADefinitions) urlArtifactProcessor.read(null, - uri, - definitionsFileUrl); - } catch (Exception e) { - throw new SCADefinitionsProviderException(e); - } - } -} diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicyProviderFactory.java b/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicyProviderFactory.java deleted file mode 100644 index 23e1513f84..0000000000 --- a/sandbox/dougsleite/policy-resolutiontrees/src/main/java/org/apache/tuscany/sca/policy/resolutiontrees/ResolutionTreesPolicyProviderFactory.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * 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.tuscany.sca.policy.resolutiontrees; - -import org.apache.tuscany.sca.assembly.Binding; -import org.apache.tuscany.sca.assembly.Implementation; -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.provider.PolicyProvider; -import org.apache.tuscany.sca.provider.PolicyProviderFactory; -import org.apache.tuscany.sca.runtime.RuntimeComponent; -import org.apache.tuscany.sca.runtime.RuntimeComponentReference; -import org.apache.tuscany.sca.runtime.RuntimeComponentService; - -public class ResolutionTreesPolicyProviderFactory implements PolicyProviderFactory<ResolutionTreesPolicy> { - - public ResolutionTreesPolicyProviderFactory(ExtensionPointRegistry registry) { - super(); - } - - public PolicyProvider createReferencePolicyProvider(RuntimeComponent component, - RuntimeComponentReference reference, - Binding binding) { - return null; - } - - public PolicyProvider createServicePolicyProvider(RuntimeComponent component, - RuntimeComponentService service, - Binding binding) { - return null; - } - - public PolicyProvider createImplementationPolicyProvider(RuntimeComponent component, Implementation implementation) { - return null; - } - - public Class<ResolutionTreesPolicy> getModelType() { - return ResolutionTreesPolicy.class; - } -} diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor b/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor deleted file mode 100644 index d8a0e92b7d..0000000000 --- a/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor +++ /dev/null @@ -1,19 +0,0 @@ -# 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. - -# Implementation class for the artifact processor extension -org.apache.tuscany.sca.policy.resolutiontrees.ResolutionTreesPolicyProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#recovery_rules,model=org.apache.tuscany.sca.policy.resolutiontrees.ResolutionTreesPolicy diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.PolicyProviderFactory b/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.PolicyProviderFactory deleted file mode 100644 index e69892dcbf..0000000000 --- a/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.PolicyProviderFactory +++ /dev/null @@ -1,19 +0,0 @@ -# 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.
-
-# Implementation class for the policy extension
-org.apache.tuscany.sca.policy.resolutiontrees.ResolutionTreesPolicyProviderFactory;model=org.apache.tuscany.sca.policy.resolutiontrees.ResolutionTreesPolicy
diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/org/apache/tuscany/sca/policy/resolutiontrees/definitions.xml b/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/org/apache/tuscany/sca/policy/resolutiontrees/definitions.xml deleted file mode 100644 index df47c23460..0000000000 --- a/sandbox/dougsleite/policy-resolutiontrees/src/main/resources/org/apache/tuscany/sca/policy/resolutiontrees/definitions.xml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<!-- - * 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. ---> -<definitions xmlns="http://www.osoa.org/xmlns/sca/1.0" - targetNamespace="http://tuscany.apache.org/xmlns/sca/1.0" - xmlns:sca="http://www.osoa.org/xmlns/sca/1.0" - xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0"> - - <!-- Policy Intents Defined by the SCA Runtime --> - <intent name="resolutionTrees" constrains="sca:implementation.java"> - <description> - Describe the resolution trees for the guardian group - </description> - </intent> -</definitions> diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/test/java/org/apache/tuscany/sca/policy/resolutiontrees/PolicyReadTestCase.java b/sandbox/dougsleite/policy-resolutiontrees/src/test/java/org/apache/tuscany/sca/policy/resolutiontrees/PolicyReadTestCase.java deleted file mode 100644 index 766d4020b0..0000000000 --- a/sandbox/dougsleite/policy-resolutiontrees/src/test/java/org/apache/tuscany/sca/policy/resolutiontrees/PolicyReadTestCase.java +++ /dev/null @@ -1,96 +0,0 @@ -/* - * 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.tuscany.sca.policy.resolutiontrees; - -import java.io.InputStream; -import java.io.StringWriter; -import java.net.URL; -import java.util.Iterator; -import java.util.Map; -import javax.xml.stream.XMLInputFactory; -import javax.xml.stream.XMLOutputFactory; -import javax.xml.stream.XMLStreamReader; -import javax.xml.stream.XMLStreamWriter; -import org.junit.Test; -import org.apache.axiom.om.OMAttribute; -import org.apache.axiom.om.OMElement; -import org.apache.tuscany.sca.guardian.Constants; - -public class PolicyReadTestCase { - - @Test - public void testPolicyReading() throws Exception { - ResolutionTreesPolicyProcessor processor = new ResolutionTreesPolicyProcessor(null, null); - - URL url = getClass().getResource("test_policies.xml"); - XMLInputFactory inputFactory = XMLInputFactory.newInstance(); - - InputStream urlStream = url.openStream(); - XMLStreamReader reader = inputFactory.createXMLStreamReader(urlStream); - - - ResolutionTreesPolicy policy = processor.read(reader); - Map<String, OMElement> map = policy.getResolutionTreeElements(); - - StringWriter sw = new StringWriter(); - - XMLStreamWriter writter = XMLOutputFactory.newInstance().createXMLStreamWriter(sw); - writter.writeStartDocument(); - writter.writeStartElement(Constants.RECOVERY_RULES); - - writeElements(map.values().iterator(), writter); - - writter.writeEndElement(); - writter.writeEndDocument(); - writter.close(); - - System.out.println(sw.toString()); - } - - private void writeElements(Iterator elements, XMLStreamWriter writer) throws Exception { - - OMElement el; - OMAttribute at; - - while (elements.hasNext()) { - el = (OMElement) elements.next(); - - //write the element's name - writer.writeStartElement(el.getLocalName()); - - //write the attributes - Iterator attributes = el.getAllAttributes(); - while (attributes.hasNext()) { - at = (OMAttribute) attributes.next(); - writer.writeAttribute(at.getLocalName(), at.getAttributeValue()); - } - - //write texts - if (el.getText().length() != 0) { - writer.writeCharacters(el.getText()); - } - - Iterator children = el.getChildElements(); - writeElements(children, writer); - - writer.writeEndElement(); - } - - } -} diff --git a/sandbox/dougsleite/policy-resolutiontrees/src/test/resources/org/apache/tuscany/sca/policy/resolutiontrees/test_policies.xml b/sandbox/dougsleite/policy-resolutiontrees/src/test/resources/org/apache/tuscany/sca/policy/resolutiontrees/test_policies.xml deleted file mode 100644 index 405dcde1ae..0000000000 --- a/sandbox/dougsleite/policy-resolutiontrees/src/test/resources/org/apache/tuscany/sca/policy/resolutiontrees/test_policies.xml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<!-- - * 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. ---> -<resolution_trees> - <resolution_tree exception_level="1"> - <exception class="org.exceptions.PrimaryBackupFailedTogetherException"> - <exception class="org.exceptions.PrimaryFailedException"/> - <exception class="org.exceptions.BackupFailedException"/> - </exception> - </resolution_tree> - - <resolution_tree exception_level="2"> - <exception class="org.exceptions.UnavailableException"> - <exception class="org.exceptions.HotelServiceFailedException"> - <exception class="org.exceptions.RoomBookFailedException"/> - </exception> - <exception class="org.exceptions.CarServiceFailedException"/> - </exception> - </resolution_tree> -</resolution_trees> |