summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/workspace-xml/src
diff options
context:
space:
mode:
authorantelder <antelder@13f79535-47bb-0310-9956-ffa450edef68>2009-04-24 06:34:46 +0000
committerantelder <antelder@13f79535-47bb-0310-9956-ffa450edef68>2009-04-24 06:34:46 +0000
commit91d1921d865a36835f0c0f0d5032ea9adbbfa48e (patch)
treef46d4538d82cdeb5592998408652403947bfe1f0 /java/sca/modules/workspace-xml/src
parent7d2015dddd3fe6e34127f22f15398b82b6385f52 (diff)
Merge workspace xml processor into model module
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@768168 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/workspace-xml/src')
-rw-r--r--java/sca/modules/workspace-xml/src/main/java/org/apache/tuscany/sca/workspace/xml/WorkspaceDocumentProcessor.java130
-rw-r--r--java/sca/modules/workspace-xml/src/main/java/org/apache/tuscany/sca/workspace/xml/WorkspaceProcessor.java167
-rw-r--r--java/sca/modules/workspace-xml/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor19
-rw-r--r--java/sca/modules/workspace-xml/src/main/resources/workspace-xml-validation-messages.properties22
-rw-r--r--java/sca/modules/workspace-xml/src/test/java/org/apache/tuscany/sca/workspace/xml/ContributionWorkspaceProcessorTestCase.java95
5 files changed, 0 insertions, 433 deletions
diff --git a/java/sca/modules/workspace-xml/src/main/java/org/apache/tuscany/sca/workspace/xml/WorkspaceDocumentProcessor.java b/java/sca/modules/workspace-xml/src/main/java/org/apache/tuscany/sca/workspace/xml/WorkspaceDocumentProcessor.java
deleted file mode 100644
index 91a6b8dcea..0000000000
--- a/java/sca/modules/workspace-xml/src/main/java/org/apache/tuscany/sca/workspace/xml/WorkspaceDocumentProcessor.java
+++ /dev/null
@@ -1,130 +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.workspace.xml;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URI;
-import java.net.URL;
-import java.net.URLConnection;
-
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
-import org.apache.tuscany.sca.contribution.processor.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.Problem;
-import org.apache.tuscany.sca.monitor.Problem.Severity;
-import org.apache.tuscany.sca.workspace.Workspace;
-
-/**
- * A contribution workspace document processor.
- *
- * @version $Rev$ $Date$
- */
-public class WorkspaceDocumentProcessor implements URLArtifactProcessor<Workspace> {
- private XMLInputFactory inputFactory;
- private StAXArtifactProcessor<Object> staxProcessor;
- private Monitor monitor;
-
- /**
- * Constructs a new componentType processor.
- * @param factory
- * @param policyFactory
- * @param registry
- */
- public WorkspaceDocumentProcessor(StAXArtifactProcessor<Object> staxProcessor,
- XMLInputFactory inputFactory,
- Monitor monitor) {
- this.staxProcessor = staxProcessor;
- this.inputFactory = inputFactory;
- this.monitor = monitor;
- }
-
- /**
- * Report a exception.
- *
- * @param problems
- * @param message
- * @param model
- */
- private void error(String message, Object model, Exception ex) {
- if (monitor != null) {
- Problem problem = monitor.createProblem(this.getClass().getName(), "workspace-xml-validation-messages", Severity.ERROR, model, message, ex);
- monitor.problem(problem);
- }
- }
-
- public Workspace read(URL contributionURL, URI uri, URL url) throws ContributionReadException {
- InputStream urlStream = null;
- try {
-
- // Create a stream reader
- URLConnection connection = url.openConnection();
- connection.setUseCaches(false);
- urlStream = connection.getInputStream();
- XMLStreamReader reader = inputFactory.createXMLStreamReader(url.toString(), urlStream);
- reader.nextTag();
-
- // Read the workspace model
- Workspace workspace = (Workspace)staxProcessor.read(reader);
- if (workspace != null) {
- workspace.setURI(uri.toString());
- }
-
- return workspace;
-
- } catch (XMLStreamException e) {
- ContributionReadException ce = new ContributionReadException(e);
- error("ContributionReadException", inputFactory, ce);
- throw ce;
- } catch (IOException e) {
- ContributionReadException ce = new ContributionReadException(e);
- error("ContributionReadException", staxProcessor, ce);
- throw ce;
- } finally {
- try {
- if (urlStream != null) {
- urlStream.close();
- urlStream = null;
- }
- } catch (IOException ioe) {
- //ignore
- }
- }
- }
-
- public void resolve(Workspace workspace, ModelResolver resolver) throws ContributionResolveException {
- staxProcessor.resolve(workspace, resolver);
- }
-
- public String getArtifactType() {
- return ".workspace";
- }
-
- public Class<Workspace> getModelType() {
- return Workspace.class;
- }
-}
diff --git a/java/sca/modules/workspace-xml/src/main/java/org/apache/tuscany/sca/workspace/xml/WorkspaceProcessor.java b/java/sca/modules/workspace-xml/src/main/java/org/apache/tuscany/sca/workspace/xml/WorkspaceProcessor.java
deleted file mode 100644
index 54b6184b07..0000000000
--- a/java/sca/modules/workspace-xml/src/main/java/org/apache/tuscany/sca/workspace/xml/WorkspaceProcessor.java
+++ /dev/null
@@ -1,167 +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.workspace.xml;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.contribution.Contribution;
-import org.apache.tuscany.sca.contribution.ContributionFactory;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
-import org.apache.tuscany.sca.contribution.processor.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.processor.ContributionWriteException;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.workspace.Workspace;
-import org.apache.tuscany.sca.workspace.WorkspaceFactory;
-
-/**
- * A contribution workspace processor.
- *
- * @version $Rev$ $Date$
- */
-public class WorkspaceProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<Workspace> {
-
- private static final String SCA10_TUSCANY_NS = "http://tuscany.apache.org/xmlns/sca/1.1";
- private static final QName WORKSPACE_QNAME = new QName(SCA10_TUSCANY_NS, "workspace");
- private static final QName CONTRIBUTION_QNAME = new QName(SCA10_TUSCANY_NS, "contribution");
- private static final String URI = "uri";
- private static final String LOCATION = "location";
-
- private WorkspaceFactory workspaceFactory;
- private ContributionFactory contributionFactory;
-
- /**
- * Constructs a new contribution workspace processor.
- *
- * @param contributionFactory
- * @param extensionProcessor
- */
- public WorkspaceProcessor(WorkspaceFactory workspaceFactory, ContributionFactory contributionFactory, StAXArtifactProcessor<Object> extensionProcessor) {
- this.workspaceFactory = workspaceFactory;
- this.contributionFactory = contributionFactory;
- }
-
- /**
- * Constructs a new contribution workspace processor.
- *
- * @param modelFactories
- * @param extensionProcessor
- */
- public WorkspaceProcessor(FactoryExtensionPoint modelFactories, StAXArtifactProcessor<Object> extensionProcessor, Monitor monitor) {
- this.workspaceFactory = modelFactories.getFactory(WorkspaceFactory.class);
- this.contributionFactory = modelFactories.getFactory(ContributionFactory.class);
- }
-
- public Workspace read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
-
- Workspace workspace = null;
- Contribution contribution = null;
-
- // Read the workspace document
- while (reader.hasNext()) {
- int event = reader.getEventType();
- switch (event) {
- case START_ELEMENT:
- QName name = reader.getName();
-
- if (WORKSPACE_QNAME.equals(name)) {
-
- // Read a <workspace>
- workspace = workspaceFactory.createWorkspace();
- workspace.setUnresolved(true);
-
- } else if (CONTRIBUTION_QNAME.equals(name)) {
-
- // Read a <contribution>
- contribution = contributionFactory.createContribution();
- contribution.setURI(getString(reader, URI));
- contribution.setLocation(getString(reader, LOCATION));
- contribution.setUnresolved(true);
- workspace.getContributions().add(contribution);
- }
- break;
-
- case END_ELEMENT:
- name = reader.getName();
-
- // Clear current state when reading reaching end element
- if (CONTRIBUTION_QNAME.equals(name)) {
- contribution = null;
- }
- break;
- }
-
- // Read the next element
- if (reader.hasNext()) {
- reader.next();
- }
- }
- return workspace;
- }
-
- public void write(Workspace workspace, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException {
-
- // Write <workspace> element
- writeStartDocument(writer, WORKSPACE_QNAME);
-
- // Write <contribution> elements
- for (Contribution contribution: workspace.getContributions()) {
- writeStart(writer, CONTRIBUTION_QNAME,
- new XAttr(URI, contribution.getURI()), new XAttr(LOCATION, contribution.getLocation()));
- writeEnd(writer);
- }
-
- writeEndDocument(writer);
- }
-
- public void resolve(Workspace workspace, ModelResolver resolver) throws ContributionResolveException {
-
- // Resolve the contributions referenced by the workspace
- List<Contribution> contributions = workspace.getContributions();
- for (int i = 0, n = contributions.size(); i < n; i++) {
- Contribution contribution = contributions.get(i);
- Contribution resolved = resolver.resolveModel(Contribution.class, contribution);
- if (resolved != contribution) {
- contributions.set(i, resolved);
- }
- }
-
- workspace.setUnresolved(false);
- }
-
- public QName getArtifactType() {
- return WORKSPACE_QNAME;
- }
-
- public Class<Workspace> getModelType() {
- return Workspace.class;
- }
-}
diff --git a/java/sca/modules/workspace-xml/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor b/java/sca/modules/workspace-xml/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
deleted file mode 100644
index 86a302a103..0000000000
--- a/java/sca/modules/workspace-xml/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.workspace.xml.WorkspaceProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.1#workspace,model=org.apache.tuscany.sca.workspace.Workspace
diff --git a/java/sca/modules/workspace-xml/src/main/resources/workspace-xml-validation-messages.properties b/java/sca/modules/workspace-xml/src/main/resources/workspace-xml-validation-messages.properties
deleted file mode 100644
index e054591a31..0000000000
--- a/java/sca/modules/workspace-xml/src/main/resources/workspace-xml-validation-messages.properties
+++ /dev/null
@@ -1,22 +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.
-#
-#
-ContributionReadException = ContributionReadException occured due to :
-ContributionResolveException = ContributionResolveException occured due to : \ No newline at end of file
diff --git a/java/sca/modules/workspace-xml/src/test/java/org/apache/tuscany/sca/workspace/xml/ContributionWorkspaceProcessorTestCase.java b/java/sca/modules/workspace-xml/src/test/java/org/apache/tuscany/sca/workspace/xml/ContributionWorkspaceProcessorTestCase.java
deleted file mode 100644
index f7c6616140..0000000000
--- a/java/sca/modules/workspace-xml/src/test/java/org/apache/tuscany/sca/workspace/xml/ContributionWorkspaceProcessorTestCase.java
+++ /dev/null
@@ -1,95 +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.workspace.xml;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import java.io.StringReader;
-
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
-import org.apache.tuscany.sca.workspace.Workspace;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * Test the workspace processor.
- *
- * @version $Rev$ $Date$
- */
-
-public class ContributionWorkspaceProcessorTestCase {
-
- private static final String VALID_XML =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>" + "<workspace xmlns=\"http://tuscany.apache.org/xmlns/sca/1.1\">"
- + "<contribution uri=\"uri1\" location=\"location1\"/>"
- + "<contribution uri=\"uri2\" location=\"location2\"/>"
- + "</workspace>";
-
- private static final String INVALID_XML =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>" + "<workspace xmlns=\"http://tuscany.apache.org/xmlns/sca/1.1\">"
- + "<contribution uri=\"uri1\" location=\"location1\"/>"
- + "<contribution uri=\"uri2\" location=\"location2\"/>"
- + "</contribution>"
- + "</workspace>";
-
- private static XMLInputFactory inputFactory;
- private static StAXArtifactProcessor<Object> staxProcessor;
-
- @BeforeClass
- public static void setUp() throws Exception {
- DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
- inputFactory = XMLInputFactory.newInstance();
- StAXArtifactProcessorExtensionPoint staxProcessors =
- new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints);
- staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, null);
- }
-
- @Test
- public void testRead() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(VALID_XML));
- Workspace workspace = (Workspace)staxProcessor.read(reader);
- assertNotNull(workspace);
- assertEquals(2, workspace.getContributions().size());
- assertEquals("uri2", workspace.getContributions().get(1).getURI());
- assertEquals("location2", workspace.getContributions().get(1).getLocation());
- }
-
- @Test
- public void testReadInvalid() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(INVALID_XML));
- try {
- staxProcessor.read(reader);
- fail("InvalidException should have been thrown");
- } catch (XMLStreamException e) {
- assertTrue(true);
- }
- }
-}