Author: lresende
Date: Mon Feb 26 14:57:59 2007
New Revision: 512059
URL: http://svn.apache.org/viewvc?view=rev&rev=512059
Log:
Updates to contributionService
Modified:
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/ContentTypeDescriberImpl.java
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/contribution/FolderContributionProcessor.java
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/resources/org/apache/tuscany/core/deployment.scdl
Modified:
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/ContentTypeDescriberImpl.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/ContentTypeDescriberImpl.java?view=diff&rev=512059&r1=512058&r2=512059
==============================================================================
---
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/ContentTypeDescriberImpl.java
(original)
+++
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/ContentTypeDescriberImpl.java
Mon Feb 26 14:57:59 2007
@@ -54,6 +54,7 @@
contentTypeRegistry.put("COMPOSITE", "application/v.tuscany.scdl");
contentTypeRegistry.put("WSDL", "application/v.tuscany.wsdl");
contentTypeRegistry.put("JAR", "application/x-compressed");
+ contentTypeRegistry.put("FOLDER", "application/v.tuscany.folder");
}
protected String resolveContentyTypeByExtension(URL resourceURL) {
@@ -78,20 +79,24 @@
URLConnection connection = null;
String contentType = defaultContentType;
- 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
- // return defaultContentType if provided
- contentType = defaultContentType;
+ if (FileHelper.toFile(resourceURL).isDirectory()) {
+ contentType = this.contentTypeRegistry.get("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
+ // return defaultContentType if provided
+ contentType = defaultContentType;
+ }
+ } catch (IOException io) {
+ // could not access artifact, just ignore and we will
return
+ // null contentType
}
- } catch (IOException io) {
- // could not access artifact, just ignore and we will return
- // null contentType
}
}
return contentType == null ? defaultContentType : contentType;
Modified:
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/contribution/FolderContributionProcessor.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/contribution/FolderContributionProcessor.java?view=diff&rev=512059&r1=512058&r2=512059
==============================================================================
---
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/contribution/FolderContributionProcessor.java
(original)
+++
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/services/deployment/contribution/FolderContributionProcessor.java
Mon Feb 26 14:57:59 2007
@@ -29,11 +29,13 @@
import java.util.List;
import org.apache.tuscany.core.services.deployment.ContentTypeDescriberImpl;
+import org.apache.tuscany.core.util.FileHelper;
import org.apache.tuscany.host.deployment.DeploymentException;
import org.apache.tuscany.spi.deployer.ContentTypeDescriber;
import org.apache.tuscany.spi.deployer.ContributionProcessor;
import org.apache.tuscany.spi.extension.ContributionProcessorExtension;
import org.apache.tuscany.spi.model.Contribution;
+import org.apache.tuscany.spi.model.DeployedArtifact;
public class FolderContributionProcessor extends
ContributionProcessorExtension implements ContributionProcessor {
public static final String CONTENT_TYPE = "application/v.tuscany.folder";
@@ -95,22 +97,30 @@
URL sourceURL = contribution.getArtifact(source).getLocation();
+
for (URL artifactURL : getArtifacts(sourceURL, inputStream)) {
- // FIXME
- // contribution.addArtifact(artifact)
-
- ContentTypeDescriber contentTypeDescriber = new
ContentTypeDescriberImpl();
- String contentType =
contentTypeDescriber.getContentType(artifactURL, null);
- System.out.println("File : " + artifactURL);
- System.out.println("Type : " + contentType);
-
- //just process scdl for now
- if ("application/v.tuscany.scdl".equals(contentType) ||
"application/java-vm".equals(contentType)) {
- this.registry.processContent(contribution, source,
inputStream);
+ URI artifactURI;
+ try {
+ artifactURI = new URI(contribution.getUri().toASCIIString() +
"/" + FileHelper.getName(artifactURL.getPath()));
+ DeployedArtifact artifact = new DeployedArtifact(artifactURI);
+ artifact.setLocation(artifactURL);
+ contribution.addArtifact(artifact);
+
+ ContentTypeDescriber contentTypeDescriber = new
ContentTypeDescriberImpl();
+ String contentType =
contentTypeDescriber.getContentType(artifactURL, null);
+ System.out.println("File : " + artifactURL);
+ System.out.println("Type : " + contentType);
+
+
+ //just process scdl for now
+ if ("application/v.tuscany.scdl".equals(contentType) /*||
"application/java-vm".equals(contentType)*/) {
+ this.registry.processContent(contribution, artifactURI,
artifactURL.openStream());
+ }
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
}
- // process each artifact
- //this.registry.processContent(contribution, artifactURL,
inputStream);
}
Modified:
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/resources/org/apache/tuscany/core/deployment.scdl
URL:
http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/resources/org/apache/tuscany/core/deployment.scdl?view=diff&rev=512059&r1=512058&r2=512059
==============================================================================
---
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/resources/org/apache/tuscany/core/deployment.scdl
(original)
+++
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/resources/org/apache/tuscany/core/deployment.scdl
Mon Feb 26 14:57:59 2007
@@ -47,6 +47,9 @@
<component name="JarContributionProcessor" initLevel="30">
<system:implementation.system
class="org.apache.tuscany.core.services.deployment.contribution.JarContributionProcessor"
/>
</component>
+ <component name="FolderContributionProcessor" initLevel="30">
+ <system:implementation.system
class="org.apache.tuscany.core.services.deployment.contribution.FolderContributionProcessor"
/>
+ </component>
<component name="JavaContributionProcessor" initLevel="30">
<system:implementation.system
class="org.apache.tuscany.core.services.deployment.contribution.JavaContributionProcessor"
/>
</component>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]