You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2007/04/14 23:42:21 UTC
svn commit: r528879 - in /incubator/tuscany/java/sca/modules:
contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/
contribution-impl/src/main/java/org/apache/tuscany/contribution/service/impl/
contribution-impl/src/test/java/...
Author: jsdelfino
Date: Sat Apr 14 14:42:20 2007
New Revision: 528879
URL: http://svn.apache.org/viewvc?view=rev&rev=528879
Log:
Renamed ContributionPackageProcessor to PackageProcessor.
Added:
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/DefaultPackageProcessorExtensionPoint.java (with props)
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessor.java (with props)
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessorExtensionPoint.java (with props)
Removed:
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/ContributionPackageProcessorRegistryImpl.java
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/ContributionPackageProcessor.java
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/ContributionPackageProcessorRegistry.java
Modified:
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/AbstractContributionPackageProcessor.java
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/FolderContributionProcessor.java
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/JarContributionProcessor.java
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/service/impl/ContributionServiceImpl.java
incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/FolderContributionPackageProcessorTestCase.java
incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/JarContributionPackageProcessorTestCase.java
incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/services/ContributionServiceImplTestCase.java
incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/host/embedded/SimpleRuntimeImpl.java
Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/AbstractContributionPackageProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/AbstractContributionPackageProcessor.java?view=diff&rev=528879&r1=528878&r2=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/AbstractContributionPackageProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/AbstractContributionPackageProcessor.java Sat Apr 14 14:42:20 2007
@@ -23,28 +23,28 @@
import java.net.URI;
import java.net.URL;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessor;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessorRegistry;
+import org.apache.tuscany.contribution.processor.PackageProcessor;
+import org.apache.tuscany.contribution.processor.PackageProcessorExtensionPoint;
/**
* The base class for ContributionPackageProcessor implementations
*
* @version $Rev$ $Date$
*/
-public abstract class AbstractContributionPackageProcessor implements ContributionPackageProcessor {
+public abstract class AbstractContributionPackageProcessor implements PackageProcessor {
/**
* The ContributionProcessorRegistry that this processor should register
* with; usually set by injection. This registry may also be used to process
* other sub-artifacts.
*/
- protected final ContributionPackageProcessorRegistry registry;
+ protected final PackageProcessorExtensionPoint packageProcessors;
/**
- * @param registry the registry to set
+ * @param packageProcessors the registry to set
*/
- public AbstractContributionPackageProcessor(ContributionPackageProcessorRegistry registry) {
- this.registry = registry;
- this.registry.register(this.getPackageType(), this);
+ public AbstractContributionPackageProcessor(PackageProcessorExtensionPoint packageProcessors) {
+ this.packageProcessors = packageProcessors;
+ this.packageProcessors.register(this.getPackageType(), this);
}
public URL getArtifactURL(URL packageSourceURL, URI artifact) throws MalformedURLException {
Added: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/DefaultPackageProcessorExtensionPoint.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/DefaultPackageProcessorExtensionPoint.java?view=auto&rev=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/DefaultPackageProcessorExtensionPoint.java (added)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/DefaultPackageProcessorExtensionPoint.java Sat Apr 14 14:42:20 2007
@@ -0,0 +1,91 @@
+/*
+ * 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.contribution.processor.impl;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.tuscany.contribution.processor.PackageProcessor;
+import org.apache.tuscany.contribution.processor.PackageProcessorExtensionPoint;
+import org.apache.tuscany.contribution.service.ContributionException;
+import org.apache.tuscany.contribution.service.TypeDescriber;
+import org.apache.tuscany.contribution.service.UnsupportedContentTypeException;
+import org.apache.tuscany.contribution.service.impl.PackageTypeDescriberImpl;
+
+/**
+ * Default implementation of ContributionProcessorRegistry
+ *
+ * @version $Rev$ $Date$
+ */
+public class DefaultPackageProcessorExtensionPoint implements PackageProcessorExtensionPoint {
+ /**
+ * Processor registry
+ */
+ private Map<String, PackageProcessor> registry = new HashMap<String, PackageProcessor>();
+ /**
+ * Helper method to describe contentType for each artifact
+ */
+ private TypeDescriber packageTypeDescriber;
+
+ public DefaultPackageProcessorExtensionPoint(TypeDescriber packageTypeDescriber) {
+ if (packageTypeDescriber == null) {
+ this.packageTypeDescriber = new PackageTypeDescriberImpl();
+ } else {
+ this.packageTypeDescriber = packageTypeDescriber;
+ }
+ }
+
+ public void register(String contentType, PackageProcessor processor) {
+ registry.put(contentType, processor);
+ }
+
+ public void unregister(String contentType) {
+ registry.remove(contentType);
+ }
+
+ public List<URI> getArtifacts(URL packageSourceURL,InputStream inputStream) throws ContributionException, IOException{
+ String contentType = this.packageTypeDescriber.getType(packageSourceURL, null);
+ if (contentType == null) {
+ throw new UnsupportedContentTypeException("Unsupported contribution package", packageSourceURL.toString());
+ }
+
+ PackageProcessor packageProcessor = this.registry.get(contentType);
+ if (packageProcessor == null) {
+ throw new UnsupportedContentTypeException(contentType, packageSourceURL.getPath());
+ }
+
+ return packageProcessor.getArtifacts(packageSourceURL, inputStream);
+ }
+
+ /**
+ * @see org.apache.tuscany.contribution.processor.PackageProcessor#getArtifactURL(java.net.URL, java.net.URI)
+ */
+ public URL getArtifactURL(URL packageSourceURL, URI artifact) throws MalformedURLException {
+ String contentType = this.packageTypeDescriber.getType(packageSourceURL, null);
+ PackageProcessor packageProcessor = this.registry.get(contentType);
+ return packageProcessor.getArtifactURL(packageSourceURL, artifact);
+ }
+}
Propchange: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/DefaultPackageProcessorExtensionPoint.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/DefaultPackageProcessorExtensionPoint.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/FolderContributionProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/FolderContributionProcessor.java?view=diff&rev=528879&r1=528878&r2=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/FolderContributionProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/FolderContributionProcessor.java Sat Apr 14 14:42:20 2007
@@ -30,20 +30,20 @@
import java.util.List;
import org.apache.tuscany.contribution.ContentType;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessor;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessorRegistry;
+import org.apache.tuscany.contribution.processor.PackageProcessor;
+import org.apache.tuscany.contribution.processor.PackageProcessorExtensionPoint;
import org.apache.tuscany.contribution.service.ContributionException;
import org.apache.tuscany.contribution.service.util.FileHelper;
public class FolderContributionProcessor extends AbstractContributionPackageProcessor implements
- ContributionPackageProcessor {
+ PackageProcessor {
/**
* Package-type that this package processor can handle
*/
public static final String PACKAGE_TYPE = ContentType.FOLDER;
- public FolderContributionProcessor(ContributionPackageProcessorRegistry registry) {
- super(registry);
+ public FolderContributionProcessor(PackageProcessorExtensionPoint packageProcessors) {
+ super(packageProcessors);
}
public String getPackageType() {
Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/JarContributionProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/JarContributionProcessor.java?view=diff&rev=528879&r1=528878&r2=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/JarContributionProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/processor/impl/JarContributionProcessor.java Sat Apr 14 14:42:20 2007
@@ -30,19 +30,19 @@
import java.util.jar.JarInputStream;
import org.apache.tuscany.contribution.ContentType;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessor;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessorRegistry;
+import org.apache.tuscany.contribution.processor.PackageProcessor;
+import org.apache.tuscany.contribution.processor.PackageProcessorExtensionPoint;
import org.apache.tuscany.contribution.service.ContributionException;
public class JarContributionProcessor extends AbstractContributionPackageProcessor implements
- ContributionPackageProcessor {
+ PackageProcessor {
/**
* Package-type that this package processor can handle
*/
public static final String PACKAGE_TYPE = ContentType.JAR;
- public JarContributionProcessor(ContributionPackageProcessorRegistry registry) {
- super(registry);
+ public JarContributionProcessor(PackageProcessorExtensionPoint packageProcessors) {
+ super(packageProcessors);
}
public String getPackageType() {
Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/service/impl/ContributionServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/service/impl/ContributionServiceImpl.java?view=diff&rev=528879&r1=528878&r2=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/service/impl/ContributionServiceImpl.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/contribution/service/impl/ContributionServiceImpl.java Sat Apr 14 14:42:20 2007
@@ -34,7 +34,7 @@
import org.apache.tuscany.contribution.Contribution;
import org.apache.tuscany.contribution.DeployedArtifact;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessor;
+import org.apache.tuscany.contribution.processor.PackageProcessor;
import org.apache.tuscany.contribution.processor.URLArtifactProcessor;
import org.apache.tuscany.contribution.resolver.ArtifactResolver;
import org.apache.tuscany.contribution.service.ContributionException;
@@ -56,7 +56,7 @@
/**
* Registry of available package processors.
*/
- protected ContributionPackageProcessor packageProcessor;
+ protected PackageProcessor packageProcessor;
/**
* Registry of available artifact processors
@@ -82,7 +82,7 @@
protected ArtifactResolver artifactResolver;
public ContributionServiceImpl(ContributionRepository repository,
- ContributionPackageProcessor packageProcessor,
+ PackageProcessor packageProcessor,
URLArtifactProcessor artifactProcessor,
ArtifactResolver artifactResolver) {
super();
Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/FolderContributionPackageProcessorTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/FolderContributionPackageProcessorTestCase.java?view=diff&rev=528879&r1=528878&r2=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/FolderContributionPackageProcessorTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/FolderContributionPackageProcessorTestCase.java Sat Apr 14 14:42:20 2007
@@ -24,8 +24,8 @@
import junit.framework.TestCase;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessorRegistry;
-import org.apache.tuscany.contribution.processor.impl.ContributionPackageProcessorRegistryImpl;
+import org.apache.tuscany.contribution.processor.PackageProcessorExtensionPoint;
+import org.apache.tuscany.contribution.processor.impl.DefaultPackageProcessorExtensionPoint;
import org.apache.tuscany.contribution.processor.impl.FolderContributionProcessor;
import org.apache.tuscany.contribution.service.impl.PackageTypeDescriberImpl;
@@ -40,8 +40,8 @@
}
public final void testProcessPackageArtifacts() throws Exception {
- ContributionPackageProcessorRegistry packageProcessorRegistry = new ContributionPackageProcessorRegistryImpl(new PackageTypeDescriberImpl());
- FolderContributionProcessor folderProcessor = new FolderContributionProcessor(packageProcessorRegistry);
+ PackageProcessorExtensionPoint packageProcessors = new DefaultPackageProcessorExtensionPoint(new PackageTypeDescriberImpl());
+ FolderContributionProcessor folderProcessor = new FolderContributionProcessor(packageProcessors);
List<URI> artifacts = folderProcessor.getArtifacts(contributionRoot.toURL(), null);
assertNotNull(artifacts);
Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/JarContributionPackageProcessorTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/JarContributionPackageProcessorTestCase.java?view=diff&rev=528879&r1=528878&r2=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/JarContributionPackageProcessorTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/processor/JarContributionPackageProcessorTestCase.java Sat Apr 14 14:42:20 2007
@@ -25,8 +25,8 @@
import junit.framework.TestCase;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessorRegistry;
-import org.apache.tuscany.contribution.processor.impl.ContributionPackageProcessorRegistryImpl;
+import org.apache.tuscany.contribution.processor.PackageProcessorExtensionPoint;
+import org.apache.tuscany.contribution.processor.impl.DefaultPackageProcessorExtensionPoint;
import org.apache.tuscany.contribution.processor.impl.JarContributionProcessor;
import org.apache.tuscany.contribution.service.impl.PackageTypeDescriberImpl;
import org.apache.tuscany.contribution.service.util.IOHelper;
@@ -39,8 +39,8 @@
}
public final void testProcessPackageArtifacts() throws Exception {
- ContributionPackageProcessorRegistry packageProcessorRegistry = new ContributionPackageProcessorRegistryImpl(new PackageTypeDescriberImpl());
- JarContributionProcessor jarProcessor = new JarContributionProcessor(packageProcessorRegistry);
+ PackageProcessorExtensionPoint packageProcessors = new DefaultPackageProcessorExtensionPoint(new PackageTypeDescriberImpl());
+ JarContributionProcessor jarProcessor = new JarContributionProcessor(packageProcessors);
URL jarURL = getClass().getResource(JAR_CONTRIBUTION);
InputStream jarStream = jarURL.openStream();
Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/services/ContributionServiceImplTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/services/ContributionServiceImplTestCase.java?view=diff&rev=528879&r1=528878&r2=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/services/ContributionServiceImplTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/contribution/services/ContributionServiceImplTestCase.java Sat Apr 14 14:42:20 2007
@@ -24,8 +24,8 @@
import junit.framework.TestCase;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessorRegistry;
-import org.apache.tuscany.contribution.processor.impl.ContributionPackageProcessorRegistryImpl;
+import org.apache.tuscany.contribution.processor.PackageProcessorExtensionPoint;
+import org.apache.tuscany.contribution.processor.impl.DefaultPackageProcessorExtensionPoint;
import org.apache.tuscany.contribution.processor.impl.FolderContributionProcessor;
import org.apache.tuscany.contribution.processor.impl.JarContributionProcessor;
import org.apache.tuscany.contribution.service.ContributionService;
@@ -40,9 +40,7 @@
private static final String CONTRIBUTION = "/repository/sample-calculator.jar";
private TypeDescriber contentTypeDescriber;
- private ContributionPackageProcessorRegistry packageProcessorRegistry;
- //private DefaultStAXArtifactProcessorRegistry staxArtifactProcessorRegistry;
- //private DefaultURLArtifactProcessorRegistry documentArtifactProcessorRegistry;
+ private PackageProcessorExtensionPoint packageProcessors;
private ContributionService contributionService;
protected void setUp() throws Exception {
@@ -51,9 +49,9 @@
//boostrap contribution service
this.contentTypeDescriber = new ArtifactTypeDescriberImpl();
- this.packageProcessorRegistry = new ContributionPackageProcessorRegistryImpl(contentTypeDescriber);
- new JarContributionProcessor(this.packageProcessorRegistry);
- new FolderContributionProcessor(this.packageProcessorRegistry);
+ this.packageProcessors = new DefaultPackageProcessorExtensionPoint(contentTypeDescriber);
+ new JarContributionProcessor(this.packageProcessors);
+ new FolderContributionProcessor(this.packageProcessors);
/*
staxArtifactProcessorRegistry = new DefaultStAXArtifactProcessorRegistry();
Added: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessor.java?view=auto&rev=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessor.java (added)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessor.java Sat Apr 14 14:42:20 2007
@@ -0,0 +1,61 @@
+/*
+ * 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.contribution.processor;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URL;
+import java.util.List;
+
+import org.apache.tuscany.contribution.service.ContributionException;
+
+/**
+ * Interface for services that can process contributions.
+ *
+ * @version $Rev$ $Date$
+ */
+public interface PackageProcessor {
+ // /**
+ // * Returns the type of package handled by this package processor.
+ // * @return the type of package handled by this package processor
+ // */
+ // String getPackageType();
+
+ /**
+ * Retrieve a list of artifacts for the specific package type
+ *
+ * @param packageSourceURL location of the artifact
+ * @param inputStream optional content of the package
+ * @return
+ * @throws ContributionException
+ * @throws IOException
+ */
+ List<URI> getArtifacts(URL packageSourceURL, InputStream inputStream) throws ContributionException, IOException;
+
+ /**
+ * Return the URL for an artifact in the package
+ *
+ * @param packageSourceURL The package URL
+ * @param artifact The relative URI for the artifact
+ * @return
+ */
+ URL getArtifactURL(URL packageSourceURL, URI artifact) throws MalformedURLException;
+}
Propchange: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessor.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessorExtensionPoint.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessorExtensionPoint.java?view=auto&rev=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessorExtensionPoint.java (added)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessorExtensionPoint.java Sat Apr 14 14:42:20 2007
@@ -0,0 +1,36 @@
+/*
+ * 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.contribution.processor;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public interface PackageProcessorExtensionPoint extends PackageProcessor {
+ /**
+ * Register a ContributionPackageProcessor using the package type as the key
+ * @param processor
+ */
+ void register(String packageType, PackageProcessor processor);
+
+ /**
+ * Unregister a ContributionProcessor by package type
+ * @param packageType
+ */
+ void unregister(String packageType);
+}
\ No newline at end of file
Propchange: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessorExtensionPoint.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/contribution/processor/PackageProcessorExtensionPoint.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/host/embedded/SimpleRuntimeImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/host/embedded/SimpleRuntimeImpl.java?view=diff&rev=528879&r1=528878&r2=528879
==============================================================================
--- incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/host/embedded/SimpleRuntimeImpl.java (original)
+++ incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/host/embedded/SimpleRuntimeImpl.java Sat Apr 14 14:42:20 2007
@@ -34,12 +34,12 @@
import org.apache.tuscany.assembly.xml.ConstrainingTypeProcessor;
import org.apache.tuscany.contribution.Contribution;
import org.apache.tuscany.contribution.DeployedArtifact;
-import org.apache.tuscany.contribution.processor.ContributionPackageProcessorRegistry;
+import org.apache.tuscany.contribution.processor.PackageProcessorExtensionPoint;
import org.apache.tuscany.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint;
import org.apache.tuscany.contribution.processor.DefaultURLArtifactProcessorExtensionPoint;
import org.apache.tuscany.contribution.processor.StAXArtifactProcessorExtensionPoint;
import org.apache.tuscany.contribution.processor.URLArtifactProcessorExtensionPoint;
-import org.apache.tuscany.contribution.processor.impl.ContributionPackageProcessorRegistryImpl;
+import org.apache.tuscany.contribution.processor.impl.DefaultPackageProcessorExtensionPoint;
import org.apache.tuscany.contribution.processor.impl.FolderContributionProcessor;
import org.apache.tuscany.contribution.processor.impl.JarContributionProcessor;
import org.apache.tuscany.contribution.resolver.DefaultArtifactResolver;
@@ -135,9 +135,9 @@
extensionRegistry.addExtensionPoint(URLArtifactProcessorExtensionPoint.class, documentProcessors);
PackageTypeDescriberImpl describer = new PackageTypeDescriberImpl();
- ContributionPackageProcessorRegistry pkgRegistry = new ContributionPackageProcessorRegistryImpl(describer);
- new JarContributionProcessor(pkgRegistry);
- new FolderContributionProcessor(pkgRegistry);
+ PackageProcessorExtensionPoint packageProcessors = new DefaultPackageProcessorExtensionPoint(describer);
+ new JarContributionProcessor(packageProcessors);
+ new FolderContributionProcessor(packageProcessors);
WorkContext workContext = new SimpleWorkContext();
workContext.setIdentifier(Scope.COMPOSITE, DEFAULT_COMPOSITE);
@@ -145,7 +145,7 @@
DefaultArtifactResolver artifactResolver = new DefaultArtifactResolver();
- ContributionService contributionService = new ContributionServiceImpl(repository, pkgRegistry,
+ ContributionService contributionService = new ContributionServiceImpl(repository, packageProcessors,
documentProcessors, artifactResolver);
extensionRegistry.addExtensionPoint(ContributionService.class, contributionService);
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org