You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by lr...@apache.org on 2007/04/05 09:17:32 UTC

svn commit: r525735 - in /incubator/tuscany/java/sca/modules/contribution-impl/src: main/java/org/apache/tuscany/services/contribution/ main/java/org/apache/tuscany/services/contribution/processor/ main/java/org/apache/tuscany/services/contribution/res...

Author: lresende
Date: Thu Apr  5 00:17:31 2007
New Revision: 525735

URL: http://svn.apache.org/viewvc?view=rev&rev=525735
Log:
Updating the contribution implementation to the latest contribution model

Added:
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionMetadataLoaderImpl.java   (with props)
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionPackageProcessorRegistryImpl.java
      - copied, changed from r525633, incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionProcessorRegistryImpl.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImpl.java   (with props)
    incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImplTestCase.java   (with props)
    incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionPackageProcessorTestCase.java
      - copied, changed from r525633, incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessorTestCase.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionPackageProcessorTestCase.java
      - copied, changed from r525633, incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessorTestCase.java
Removed:
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/AbstractDeploymentContext.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionDeploymentContext.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionLoader.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionProcessorRegistryImpl.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/CompositeContributionProcessor.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/InvalidComponentDefinitionlException.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/InvalidPojoComponentDefinitionlException.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/JavaContributionProcessor.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessorTestCase.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessorTestCase.java
Modified:
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionServiceImpl.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/InvalidValueException.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessor.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessor.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/resolver/ComponentDefinitionArtifactResolver.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContentTypeDescriberImplTestCase.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionLoaderTestCase.java
    incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionServiceImplTestCase.java

Added: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionMetadataLoaderImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionMetadataLoaderImpl.java?view=auto&rev=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionMetadataLoaderImpl.java (added)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionMetadataLoaderImpl.java Thu Apr  5 00:17:31 2007
@@ -0,0 +1,121 @@
+/*
+ * 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.services.contribution;
+
+import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
+
+import java.net.URI;
+
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamConstants;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+
+import org.apache.tuscany.services.contribution.model.Contribution;
+import org.apache.tuscany.services.contribution.model.ContributionImport;
+import org.apache.tuscany.services.spi.contribution.loader.ContributionMetadataLoader;
+import org.apache.tuscany.services.spi.contribution.loader.ContributionMetadataLoaderException;
+
+/**
+ * Loader that handles contribution metadata files
+ * 
+ * @version $Rev: 515261 $ $Date: 2007-03-06 11:22:46 -0800 (Tue, 06 Mar 2007) $
+ */
+public class ContributionMetadataLoaderImpl implements ContributionMetadataLoader {
+    //FIXME use this from constants ?
+    private static final String SCA10_NS = "http://www.osoa.org/xmlns/sca/1.0";
+    
+    private static final QName CONTRIBUTION = new QName(SCA10_NS, "contribution");
+    private static final QName DEPLOYABLE = new QName(SCA10_NS, "deployable");
+    private static final QName IMPORT = new QName(SCA10_NS, "import");
+    private static final QName EXPORT = new QName(SCA10_NS, "export");
+    
+
+    public ContributionMetadataLoaderImpl() {
+        super();
+    }
+
+    public QName getXMLType() {
+        return CONTRIBUTION;
+    }
+
+    /* (non-Javadoc)
+     * @see org.apache.tuscany.services.contribution.ContributionMetadataLoader#load(javax.xml.stream.XMLStreamReader)
+     */
+    public Contribution load(XMLStreamReader reader) throws XMLStreamException, ContributionMetadataLoaderException {
+
+        Contribution contribution = new Contribution();
+        while (true) {
+            int event = reader.next();
+            switch (event) {
+                case START_ELEMENT:
+                    QName element = reader.getName();
+                    if (DEPLOYABLE.equals(element)) {
+                        String name = reader.getAttributeValue(null, "composite");
+                        if (name == null) {
+                            throw new InvalidValueException("Attribute 'composite' is missing");
+                        }
+                        QName compositeName = null;
+                        int index = name.indexOf(':');
+                        if (index != -1) {
+                            String prefix = name.substring(0, index);
+                            String localPart = name.substring(index);
+                            String ns = reader.getNamespaceContext().getNamespaceURI(prefix);
+                            if (ns == null) {
+                                throw new InvalidValueException("Invalid prefix: " + prefix);
+                            }
+                            compositeName = new QName(ns, localPart, prefix);
+                        } else {
+                            String prefix = "";
+                            String ns = reader.getNamespaceURI();
+                            String localPart = name;
+                            compositeName = new QName(ns, localPart, prefix);
+                        }
+                        contribution.getDeployables().add(compositeName);
+                    } else if (IMPORT.equals(element)) {
+                        String ns = reader.getAttributeValue(null, "namespace");
+                        if (ns == null) {
+                            throw new InvalidValueException("Attribute 'namespace' is missing");
+                        }
+                        String location = reader.getAttributeValue(null, "location");
+                        ContributionImport contributionImport = new ContributionImport();
+                        if (location != null) {
+                            contributionImport.setLocation(URI.create(location));
+                        }
+                        contributionImport.setNamespace(ns);
+                        contribution.getImports().add(contributionImport);
+                    } else if (EXPORT.equals(element)) {
+                        String ns = reader.getAttributeValue(null, "namespace");
+                        if (ns == null) {
+                            throw new InvalidValueException("Attribute 'namespace' is missing");
+                        }
+                        contribution.getExports().add(ns);
+                    }
+                    break;
+                case XMLStreamConstants.END_ELEMENT:
+                    if (CONTRIBUTION.equals(reader.getName())) {
+                        return contribution;
+                    }
+                    break;
+
+            }
+        }
+    }
+
+}

Propchange: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionMetadataLoaderImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionPackageProcessorRegistryImpl.java (from r525633, incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionProcessorRegistryImpl.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionPackageProcessorRegistryImpl.java?view=diff&rev=525735&p1=incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionProcessorRegistryImpl.java&r1=525633&p2=incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionPackageProcessorRegistryImpl.java&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionProcessorRegistryImpl.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionPackageProcessorRegistryImpl.java Thu Apr  5 00:17:31 2007
@@ -29,8 +29,8 @@
 import org.apache.tuscany.services.contribution.model.Contribution;
 import org.apache.tuscany.services.spi.contribution.ContentTypeDescriber;
 import org.apache.tuscany.services.spi.contribution.ContributionException;
-import org.apache.tuscany.services.spi.contribution.ContributionProcessor;
-import org.apache.tuscany.services.spi.contribution.ContributionProcessorRegistry;
+import org.apache.tuscany.services.spi.contribution.ContributionPackageProcessor;
+import org.apache.tuscany.services.spi.contribution.ContributionPackageProcessorRegistry;
 import org.apache.tuscany.services.spi.contribution.UnsupportedContentTypeException;
 
 /**
@@ -38,25 +38,25 @@
  *
  * @version $Rev$ $Date$
  */
-public class ContributionProcessorRegistryImpl implements ContributionProcessorRegistry {
+public class ContributionPackageProcessorRegistryImpl implements ContributionPackageProcessorRegistry {
     /**
      * Processor registry
      */
-    private Map<String, ContributionProcessor> registry = new HashMap<String, ContributionProcessor>();
+    private Map<String, ContributionPackageProcessor> registry = new HashMap<String, ContributionPackageProcessor>();
     /**
      * Helper method to describe contentType for each artifact
      */
-    private ContentTypeDescriber contentTypeDescriber;
+    private ContentTypeDescriber packageTypeDescriber;
 
-    public ContributionProcessorRegistryImpl(ContentTypeDescriber contentTypeDescriber) {
+    public ContributionPackageProcessorRegistryImpl(ContentTypeDescriber contentTypeDescriber) {
         if (contentTypeDescriber == null) {
-            this.contentTypeDescriber = new ContentTypeDescriberImpl();
+            this.packageTypeDescriber = new PackageTypeDescriberImpl();
         } else {
-            this.contentTypeDescriber = contentTypeDescriber;
+            this.packageTypeDescriber = contentTypeDescriber;
         }
     }
 
-    public void register(String contentType, ContributionProcessor processor) {
+    public void register(String contentType, ContributionPackageProcessor processor) {
         registry.put(contentType, processor);
     }
 
@@ -68,21 +68,16 @@
         throws ContributionException, IOException {
 
         URL locationURL = contribution.getArtifact(source).getLocation();
-        String contentType = this.contentTypeDescriber.getContentType(locationURL, null);
+        String contentType = this.packageTypeDescriber.getContentType(locationURL, null);
         if (contentType == null) {
-            throw new UnsupportedContentTypeException("Invalid contentType: null");
+            throw new UnsupportedContentTypeException("Unsupported contribution package", source.toString());
         }
 
-        ContributionProcessor processor = this.registry.get(contentType);
+        ContributionPackageProcessor processor = this.registry.get(contentType);
         if (processor == null) {
             throw new UnsupportedContentTypeException(contentType, locationURL.getPath());
         }
 
         processor.processContent(contribution, source, inputStream);
-
-    }
-
-    public void processModel(Contribution contribution, URI source, Object modelObject) throws ContributionException,
-                                                                                               IOException {
     }
 }

Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionServiceImpl.java?view=diff&rev=525735&r1=525734&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionServiceImpl.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/ContributionServiceImpl.java Thu Apr  5 00:17:31 2007
@@ -34,15 +34,16 @@
 import org.apache.tuscany.services.contribution.util.IOHelper;
 import org.apache.tuscany.services.spi.contribution.ArtifactResolverRegistry;
 import org.apache.tuscany.services.spi.contribution.ContributionException;
-import org.apache.tuscany.services.spi.contribution.ContributionProcessorRegistry;
+import org.apache.tuscany.services.spi.contribution.ContributionPackageProcessorRegistry;
 import org.apache.tuscany.services.spi.contribution.ContributionRepository;
 import org.apache.tuscany.services.spi.contribution.ContributionService;
-import org.apache.tuscany.services.spi.contribution.loader.ContributionLoaderException;
+import org.apache.tuscany.services.spi.contribution.loader.ContributionMetadataLoaderException;
 
 /**
  * @version $Rev$ $Date$
  */
 public class ContributionServiceImpl implements ContributionService {
+
     /**
      * Repository where contributions are stored. Usually set by injection.
      */
@@ -51,7 +52,7 @@
     /**
      * Registry of available processors. Usually set by injection.
      */
-    protected ContributionProcessorRegistry processorRegistry;
+    protected ContributionPackageProcessorRegistry processorRegistry;
 
     /**
      * xml factory used to create reader instance to load contribution metadata
@@ -60,7 +61,7 @@
     /**
      * contribution metadata loader
      */
-    protected ContributionLoader contributionLoader;
+    protected ContributionMetadataLoaderImpl contributionLoader;
 
 
     /**
@@ -72,7 +73,7 @@
     protected ArtifactResolverRegistry resolverRegistry;
 
     public ContributionServiceImpl(ContributionRepository repository,
-                                   ContributionProcessorRegistry processorRegistry,
+                                   ContributionPackageProcessorRegistry processorRegistry,
                                    ArtifactResolverRegistry resolverRegistry) {
         super();
         this.contributionRepository = repository;
@@ -80,7 +81,7 @@
         this.resolverRegistry = resolverRegistry;
         
         this.xmlFactory = XMLInputFactory.newInstance("javax.xml.stream.XMLInputFactory", getClass().getClassLoader());
-        this.contributionLoader = new ContributionLoader();
+        this.contributionLoader = new ContributionMetadataLoaderImpl();
     }
 
     public void contribute(URI contributionURI, URL sourceURL, boolean storeInRepository) throws ContributionException,
@@ -129,7 +130,7 @@
                 } catch (XMLStreamException xmle) {
                     throw new 
                         InvalidContributionMetadataException(xmle.getMessage(), metadataURL.toExternalForm(), xmle);
-                } catch (ContributionLoaderException le) {
+                } catch (ContributionMetadataLoaderException le) {
                     throw new 
                         InvalidContributionMetadataException(le.getMessage(), metadataURL.toExternalForm(), le);
                 }
@@ -217,6 +218,7 @@
         */
     }
 
+    /*
     public <T> T resolve(URI contribution, Class<T> definitionType, String namespace, String name) {
         Contribution contributionObject = getContribution(contribution);
         return resolverRegistry.resolve(contributionObject, definitionType, namespace, name, null);
@@ -226,5 +228,11 @@
         Contribution contributionObject = getContribution(contribution);
         return resolverRegistry.resolve(contributionObject, namespace, uri.toString(), baseURI.toString());
     }
+    */
 
+    public <M> M resolve(Class modelClass, Class<M> elementClass, Object modelKey, Object elementKey, Map<String, Object> attributes) {
+        // TODO Auto-generated method stub
+        return null;
+    }
+    
 }

Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/InvalidValueException.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/InvalidValueException.java?view=diff&rev=525735&r1=525734&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/InvalidValueException.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/InvalidValueException.java Thu Apr  5 00:17:31 2007
@@ -19,9 +19,10 @@
 
 package org.apache.tuscany.services.contribution;
 
-import org.apache.tuscany.services.spi.contribution.loader.ContributionLoaderException;
+import org.apache.tuscany.services.spi.contribution.loader.ContributionMetadataLoaderException;
 
-public class InvalidValueException extends ContributionLoaderException {
+
+public class InvalidValueException extends ContributionMetadataLoaderException {
     /**
      * 
      */

Added: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImpl.java?view=auto&rev=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImpl.java (added)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImpl.java Thu Apr  5 00:17:31 2007
@@ -0,0 +1,98 @@
+/*
+ * 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.services.contribution;
+
+import java.io.IOException;
+import java.net.URL;
+import java.net.URLConnection;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.tuscany.services.contribution.model.ContentType;
+import org.apache.tuscany.services.contribution.util.FileHelper;
+import org.apache.tuscany.services.spi.contribution.ContentTypeDescriber;
+
+/**
+ * Implementation of the content describer
+ *
+ * @version $Rev$ $Date$
+ */
+public class PackageTypeDescriberImpl implements ContentTypeDescriber {
+    private final Map<String, String> contentTypeRegistry = new HashMap<String, String>();
+
+    public PackageTypeDescriberImpl() {
+        super();
+        init();
+    }
+
+    /**
+     * Initialize contentType registry with know types based on known file extensions
+     */
+    private void init() {
+        contentTypeRegistry.put("JAR", ContentType.JAR);
+    }
+
+    protected String resolveContentyTypeByExtension(URL resourceURL) {
+        String artifactExtension = FileHelper.getExtension(resourceURL.getPath());
+        if (artifactExtension == null) {
+            return null;
+        }
+        return contentTypeRegistry.get(artifactExtension.toUpperCase());
+    }
+
+    /**
+     * Build contentType for a specific resource. We first check if the file is
+     * a supported one (looking into our registry based on resource extension)
+     * If not found, we try to check file contentType Or we return
+     * defaultContentType provided
+     * 
+     * @param url
+     * @param defaultContentType
+     * @return
+     */
+    public String getContentType(URL resourceURL, String defaultContentType) {
+        URLConnection connection = null;
+        String contentType = defaultContentType;
+
+        if (resourceURL.getProtocol().equals("file") && FileHelper.toFile(resourceURL).isDirectory()) {
+            // Special case : contribution is a folder
+            contentType = ContentType.FOLDER;
+        } else {
+            contentType = resolveContentyTypeByExtension(resourceURL);
+            if (contentType == null) {
+                try {
+                    connection = resourceURL.openConnection();
+                    contentType = connection.getContentType();
+    
+                    if (contentType == null || contentType.equals("content/unknown")) {
+                        // here we couldn't figure out from our registry or from URL and it's not a special file
+                        // return defaultContentType if provided
+                        contentType = defaultContentType;
+                    }
+                } catch (IOException io) {
+                    // could not access artifact, just ignore and we will return
+                    // null contentType
+                }
+            }
+        }
+        return contentType == null ? defaultContentType : contentType;
+    }
+
+}

Propchange: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessor.java?view=diff&rev=525735&r1=525734&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessor.java Thu Apr  5 00:17:31 2007
@@ -36,18 +36,18 @@
 import org.apache.tuscany.services.contribution.util.IOHelper;
 import org.apache.tuscany.services.spi.contribution.ContentTypeDescriber;
 import org.apache.tuscany.services.spi.contribution.ContributionException;
-import org.apache.tuscany.services.spi.contribution.ContributionProcessor;
-import org.apache.tuscany.services.spi.contribution.extension.ContributionProcessorExtension;
+import org.apache.tuscany.services.spi.contribution.ContributionPackageProcessor;
+import org.apache.tuscany.services.spi.contribution.extension.ContributionPackageProcessorExtension;
 
-public class FolderContributionProcessor extends ContributionProcessorExtension implements ContributionProcessor {
+public class FolderContributionProcessor extends ContributionPackageProcessorExtension implements ContributionPackageProcessor {
     /**
-     * Content-type that this processor can handle
+     * Package-type that this package processor can handle
      */
-    public static final String CONTENT_TYPE = ContentType.FOLDER;
+    public static final String PACKAGE_TYPE = ContentType.FOLDER;
 
     @Override
     public String getContentType() {
-        return CONTENT_TYPE;
+        return PACKAGE_TYPE;
     }
 
     /**
@@ -122,6 +122,7 @@
             ContentTypeDescriber contentTypeDescriber = new ContentTypeDescriberImpl();
             String contentType = contentTypeDescriber.getContentType(artifactURL, null);
 
+            
             // just process scdl and contribution metadata for now
             if (ContentType.COMPOSITE.equals(contentType)) {
                 InputStream is = artifactURL.openStream();
@@ -134,10 +135,4 @@
             }
         }
     }
-
-    public void processModel(Contribution contribution, URI source, Object modelObject) throws ContributionException,
-        IOException {
-        // NOOP
-    }
-
 }

Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessor.java?view=diff&rev=525735&r1=525734&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessor.java Thu Apr  5 00:17:31 2007
@@ -36,18 +36,18 @@
 import org.apache.tuscany.services.contribution.util.IOHelper;
 import org.apache.tuscany.services.spi.contribution.ContentTypeDescriber;
 import org.apache.tuscany.services.spi.contribution.ContributionException;
-import org.apache.tuscany.services.spi.contribution.ContributionProcessor;
-import org.apache.tuscany.services.spi.contribution.extension.ContributionProcessorExtension;
+import org.apache.tuscany.services.spi.contribution.ContributionPackageProcessor;
+import org.apache.tuscany.services.spi.contribution.extension.ContributionPackageProcessorExtension;
 
-public class JarContributionProcessor extends ContributionProcessorExtension implements ContributionProcessor {
+public class JarContributionProcessor extends ContributionPackageProcessorExtension implements ContributionPackageProcessor {
     /**
-     * Content-type that this processor can handle
+     * Package-type that this package processor can handle
      */
-    public static final String CONTENT_TYPE = ContentType.JAR;
+    public static final String PACKAGE_TYPE = ContentType.JAR;
 
     @Override
     public String getContentType() {
-        return CONTENT_TYPE;
+        return PACKAGE_TYPE;
     }
 
     /**
@@ -136,11 +136,4 @@
         }
 
     }
-
-    public void processModel(Contribution contribution, URI source, Object modelObject) throws ContributionException,
-        IOException {
-        // TODO Auto-generated method stub
-
-    }
-
 }

Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/resolver/ComponentDefinitionArtifactResolver.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/resolver/ComponentDefinitionArtifactResolver.java?view=diff&rev=525735&r1=525734&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/resolver/ComponentDefinitionArtifactResolver.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/services/contribution/resolver/ComponentDefinitionArtifactResolver.java Thu Apr  5 00:17:31 2007
@@ -29,7 +29,7 @@
 import org.apache.tuscany.services.spi.contribution.ArtifactResolverRegistry;
 import org.apache.tuscany.services.spi.contribution.extension.ArtifactResolverExtension;
 
-public class ComponentDefinitionArtifactResolver extends ArtifactResolverExtension implements ArtifactResolver {
+public class ComponentDefinitionArtifactResolver { /*extends ArtifactResolverExtension implements ArtifactResolver {
 
     public ComponentDefinitionArtifactResolver(ArtifactResolverRegistry registry) {
         super(registry);
@@ -44,8 +44,7 @@
                                                              Class<ComponentDefinition> modelClass,
                                                              String namespace,
                                                              String name,
-                                                             Map attributes/*,
-                                                             DeploymentContext context*/) {
+                                                             Map attributes) {
 
         // generate artifact uri based on it's name
         URI artifactURI = contribution.getUri().resolve(name);
@@ -60,5 +59,5 @@
         // TODO Auto-generated method stub
         return null;
     }
-
+*/
 }

Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContentTypeDescriberImplTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContentTypeDescriberImplTestCase.java?view=diff&rev=525735&r1=525734&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContentTypeDescriberImplTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContentTypeDescriberImplTestCase.java Thu Apr  5 00:17:31 2007
@@ -25,28 +25,28 @@
 import org.apache.tuscany.services.contribution.model.ContentType;
 
 public class ContentTypeDescriberImplTestCase extends TestCase {
-    private ContentTypeDescriberImpl contentTypeBuilder;
+    private ContentTypeDescriberImpl contentTypeDescriber;
 
     public void testResolveContentType() throws Exception {
         URL artifactURL = getClass().getResource("test.scdl");
-        assertEquals(ContentType.COMPOSITE, contentTypeBuilder.getContentType(artifactURL, null));
+        assertEquals(ContentType.COMPOSITE, contentTypeDescriber.getContentType(artifactURL, null));
     }
 
     
-    public void testUnknownResolveContentType() throws Exception {
+    public void testResolveUnknownContentType() throws Exception {
         URL artifactURL = getClass().getResource("test.ext");
-        assertNull(contentTypeBuilder.getContentType(artifactURL, null));
+        assertNull(contentTypeDescriber.getContentType(artifactURL, null));
     }
     
     public void testDefaultContentType() throws Exception {
         URL artifactURL = getClass().getResource("test.ext");
         assertEquals("application/vnd.tuscany.ext", 
-                contentTypeBuilder.getContentType(artifactURL, "application/vnd.tuscany.ext"));        
+                contentTypeDescriber.getContentType(artifactURL, "application/vnd.tuscany.ext"));        
     }
 
     protected void setUp() throws Exception {
         super.setUp();
-        contentTypeBuilder = new ContentTypeDescriberImpl();
+        contentTypeDescriber = new ContentTypeDescriberImpl();
     }
 
 }

Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionLoaderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionLoaderTestCase.java?view=diff&rev=525735&r1=525734&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionLoaderTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionLoaderTestCase.java Thu Apr  5 00:17:31 2007
@@ -60,7 +60,7 @@
 
     public void testLoad() throws Exception {
         XMLStreamReader reader = factory.createXMLStreamReader(new StringReader(VALID_XML));
-        ContributionLoader loader = new ContributionLoader();
+        ContributionMetadataLoaderImpl loader = new ContributionMetadataLoaderImpl();
         Contribution contribution = loader.load(reader);
         assertNotNull(contribution);
         assertEquals(1, contribution.getImports().size());
@@ -70,7 +70,7 @@
 
     public void testLoadInvalid() throws Exception {
         XMLStreamReader reader = factory.createXMLStreamReader(new StringReader(INVALID_XML));
-        ContributionLoader loader = new ContributionLoader();
+        ContributionMetadataLoaderImpl loader = new ContributionMetadataLoaderImpl();
         try {
             loader.load(reader);
             fail("InvalidException should have been thrown");

Modified: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionServiceImplTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionServiceImplTestCase.java?view=diff&rev=525735&r1=525734&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionServiceImplTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/ContributionServiceImplTestCase.java Thu Apr  5 00:17:31 2007
@@ -22,7 +22,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.services.spi.contribution.ContentTypeDescriber;
-import org.apache.tuscany.services.spi.contribution.ContributionProcessorRegistry;
+import org.apache.tuscany.services.spi.contribution.ContributionPackageProcessorRegistry;
 import org.apache.tuscany.services.spi.contribution.ContributionRepository;
 import org.apache.tuscany.services.spi.contribution.ContributionService;
 
@@ -33,7 +33,7 @@
     private static final String JAR_CONTRIBUTION = "/repository/sample-calculator.jar";
     private ContributionRepository repository; 
     private ContentTypeDescriber contentTypeDescriber;
-    private ContributionProcessorRegistry registry;
+    private ContributionPackageProcessorRegistry registry;
     private ContributionService contributionService;
     
     protected void setUp() throws Exception {

Added: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImplTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImplTestCase.java?view=auto&rev=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImplTestCase.java (added)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImplTestCase.java Thu Apr  5 00:17:31 2007
@@ -0,0 +1,51 @@
+/*
+ * 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.services.contribution;
+
+import java.net.URL;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.services.contribution.model.ContentType;
+
+public class PackageTypeDescriberImplTestCase extends TestCase {
+    private PackageTypeDescriberImpl packageTypeDescriber;
+
+    public void testResolvePackageType() throws Exception {
+        URL artifactURL = getClass().getResource("/deployables/sample-calculator.jar");
+        assertEquals(ContentType.JAR, this.packageTypeDescriber.getContentType(artifactURL, null));
+    }
+    
+    public void testResolveUnknownPackageType() throws Exception {
+        URL artifactURL = getClass().getResource("test.ext");
+        assertNull(this.packageTypeDescriber.getContentType(artifactURL, null));
+    }
+    
+    public void testDefaultPackageType() throws Exception {
+        URL artifactURL = getClass().getResource("test.ext");
+        assertEquals("application/vnd.tuscany.ext", 
+                packageTypeDescriber.getContentType(artifactURL, "application/vnd.tuscany.ext"));        
+    }
+
+    protected void setUp() throws Exception {
+        super.setUp();
+        packageTypeDescriber = new PackageTypeDescriberImpl();
+    }
+
+}

Propchange: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/PackageTypeDescriberImplTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionPackageProcessorTestCase.java (from r525633, incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessorTestCase.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionPackageProcessorTestCase.java?view=diff&rev=525735&p1=incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessorTestCase.java&r1=525633&p2=incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionPackageProcessorTestCase.java&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionProcessorTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/FolderContributionPackageProcessorTestCase.java Thu Apr  5 00:17:31 2007
@@ -25,10 +25,10 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.services.contribution.model.Contribution;
-import org.apache.tuscany.services.spi.contribution.ContributionProcessorRegistry;
+import org.apache.tuscany.services.spi.contribution.ContributionPackageProcessorRegistry;
 import org.easymock.EasyMock;
 
-public class FolderContributionProcessorTestCase extends TestCase {
+public class FolderContributionPackageProcessorTestCase extends TestCase {
     private static final String CONTRIBUTION_URI = "sca://contributions/002/";
     private static final String DIRECTORY_CONTRIBUTION = "../../../../core-samples/common/calculator";
     
@@ -42,8 +42,8 @@
     }
     
     public final void testProcessJarArtifacts() throws Exception {
-        ContributionProcessorRegistry mockRegistry = EasyMock.createMock(ContributionProcessorRegistry.class);
-        mockRegistry.register(FolderContributionProcessor.CONTENT_TYPE, folderProcessor);
+        ContributionPackageProcessorRegistry mockRegistry = EasyMock.createMock(ContributionPackageProcessorRegistry.class);
+        mockRegistry.register(FolderContributionProcessor.PACKAGE_TYPE, folderProcessor);
         mockRegistry.processContent((Contribution)EasyMock.anyObject(), (URI) EasyMock.anyObject(), (InputStream) EasyMock.anyObject() );
         EasyMock.expectLastCall().anyTimes();
         EasyMock.replay(mockRegistry);

Copied: incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionPackageProcessorTestCase.java (from r525633, incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessorTestCase.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionPackageProcessorTestCase.java?view=diff&rev=525735&p1=incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessorTestCase.java&r1=525633&p2=incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionPackageProcessorTestCase.java&r2=525735
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionProcessorTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/contribution-impl/src/test/java/org/apache/tuscany/services/contribution/processor/JarContributionPackageProcessorTestCase.java Thu Apr  5 00:17:31 2007
@@ -27,10 +27,10 @@
 import org.apache.tuscany.services.contribution.model.Contribution;
 import org.apache.tuscany.services.contribution.model.DeployedArtifact;
 import org.apache.tuscany.services.contribution.util.IOHelper;
-import org.apache.tuscany.services.spi.contribution.ContributionProcessorRegistry;
+import org.apache.tuscany.services.spi.contribution.ContributionPackageProcessorRegistry;
 import org.easymock.EasyMock;
 
-public class JarContributionProcessorTestCase extends TestCase {
+public class JarContributionPackageProcessorTestCase extends TestCase {
     private static final String CONTRIBUTION_URI = "sca://contributions/001/";
     private static final String JAR_CONTRIBUTION = "/repository/sample-calculator.jar";
     
@@ -43,8 +43,8 @@
     }
     
     public final void testProcessJarArtifacts() throws Exception {
-        ContributionProcessorRegistry mockRegistry = EasyMock.createMock(ContributionProcessorRegistry.class);
-        mockRegistry.register(JarContributionProcessor.CONTENT_TYPE, jarProcessor);
+        ContributionPackageProcessorRegistry mockRegistry = EasyMock.createMock(ContributionPackageProcessorRegistry.class);
+        mockRegistry.register(JarContributionProcessor.PACKAGE_TYPE, jarProcessor);
         mockRegistry.processContent((Contribution)EasyMock.anyObject(), (URI) EasyMock.anyObject(), (InputStream) EasyMock.anyObject() );
         EasyMock.expectLastCall().anyTimes();
         EasyMock.replay(mockRegistry);



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org