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 2008/03/10 10:50:29 UTC
svn commit: r635503 - in
/incubator/tuscany/java/sca/modules/workspace-admin/src/main:
java/org/apache/tuscany/sca/workspace/admin/impl/ resources/
Author: jsdelfino
Date: Mon Mar 10 02:50:28 2008
New Revision: 635503
URL: http://svn.apache.org/viewvc?rev=635503&view=rev
Log:
Added a service to CompositeCollection to help redirect to composite source files. Minor UI fixes.
Modified:
incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/CompositeCollectionImpl.java
incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/DeployableCollectionImpl.java
incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/Admin.composite
incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/admin.css
incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/files.html
Modified: incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/CompositeCollectionImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/CompositeCollectionImpl.java?rev=635503&r1=635502&r2=635503&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/CompositeCollectionImpl.java (original)
+++ incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/CompositeCollectionImpl.java Mon Mar 10 02:50:28 2008
@@ -24,9 +24,16 @@
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
+import java.io.IOException;
+import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.List;
+import javax.servlet.Servlet;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
import javax.xml.namespace.QName;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
@@ -64,9 +71,10 @@
* @version $Rev: 632617 $ $Date: 2008-03-01 08:24:33 -0800 (Sat, 01 Mar 2008) $
*/
@Scope("COMPOSITE")
-@Service(interfaces={ItemCollection.class,LocalItemCollection.class})
-public class CompositeCollectionImpl implements ItemCollection, LocalItemCollection {
-
+@Service(interfaces={ItemCollection.class,LocalItemCollection.class, Servlet.class})
+public class CompositeCollectionImpl extends HttpServlet implements ItemCollection, LocalItemCollection {
+ private static final long serialVersionUID = 1L;
+
@Property
public String compositeFileName;
@@ -151,6 +159,25 @@
}
}
throw new NotFoundException(key);
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+
+ // Get the request path
+ String path = URLDecoder.decode(request.getRequestURI().substring(request.getServletPath().length()), "UTF-8");
+ String key = path.startsWith("/")? path.substring(1) : path;
+
+ // Expecting a key in the form:
+ // composite:contributionURI;namespace;localName
+ QName qname = qname(key);
+ String contributionURI = uri(key);
+
+ // Get the item describing the composite
+ Item item = compositeItem(contributionURI, qname);
+
+ // Redirect to the composite source
+ response.sendRedirect(item.getLink());
}
public String post(String key, Item item) {
Modified: incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/DeployableCollectionImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/DeployableCollectionImpl.java?rev=635503&r1=635502&r2=635503&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/DeployableCollectionImpl.java (original)
+++ incubator/tuscany/java/sca/modules/workspace-admin/src/main/java/org/apache/tuscany/sca/workspace/admin/impl/DeployableCollectionImpl.java Mon Mar 10 02:50:28 2008
@@ -615,11 +615,11 @@
String contributionURI = deployable.getURI();
QName qname = deployable.getName();
String title = title(contributionURI, qname);
+ String key = key(contributionURI, qname);
- Item item = compositeItem(contributionURI, qname);
- sb.append("<br><a href=\"" + item.getLink() + "\">" + title + "</a><br>");
+ sb.append("<br><a href=\"" + "/composite-source/" + key + "\">" + title + "</a><br>");
- String imageLink = "/composite-image?composite=" + key(contributionURI, qname);
+ String imageLink = "/composite-image?composite=" + key;
sb.append("<a href=\"" + imageLink + "\"><img src=\"icons/feed-icon.png\" border=\"0\"></a><br>");
} else {
Modified: incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/Admin.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/Admin.composite?rev=635503&r1=635502&r2=635503&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/Admin.composite (original)
+++ incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/Admin.composite Mon Mar 10 02:50:28 2008
@@ -99,6 +99,9 @@
<service name="ItemCollection">
<t:binding.atom uri="http://localhost:9990/composite"/>
</service>
+ <service name="Servlet">
+ <t:binding.http uri="http://localhost:9990/composite-source"/>
+ </service>
<reference name="deployableCollection" target="DeployableCollectionComponent/LocalItemCollection"/>
</component>
@@ -120,6 +123,9 @@
<property name="compositeFileName">cloud.composite</property>
<service name="ItemCollection">
<t:binding.atom uri="http://localhost:9990/cloud"/>
+ </service>
+ <service name="Servlet">
+ <t:binding.http uri="http://localhost:9990/cloud-source"/>
</service>
<reference name="deployableCollection" target="DeployableCollectionComponent/LocalItemCollection"/>
</component>
Modified: incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/admin.css
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/admin.css?rev=635503&r1=635502&r2=635503&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/admin.css (original)
+++ incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/admin.css Mon Mar 10 02:50:28 2008
@@ -27,13 +27,13 @@
th {
font-weight: bold; white-space: nowrap; background-color: #e5ecf9; color: #598edd;
- text-align: left; padding-left: 2px; padding-right: 20px; padding-top: 2px; padding-bottom: 2px; vertical-align:top;
+ text-align: left; padding-left: 2px; padding-right: 20px; padding-top: 2px; padding-bottom: 2px; vertical-align: text-top;
border-top: 1px; border-bottom: 1px; border-left: 0px; border-right: 0px;
border-style: solid; border-top-color: #a2bae7; border-bottom-color: #d1d3d4
}
td {
- padding-left: 2px; padding-top: 2px; padding-right: 20px; white-space: nowrap; vertical-align: middle
+ padding-left: 2px; padding-top: 2px; padding-right: 20px; white-space: nowrap; vertical-align: text-top
}
input {
@@ -49,7 +49,7 @@
}
.tdw {
- padding-left: 2px; padding-top: 2px; padding-right: 20px; white-space: normal; vertical-align: middle
+ padding-left: 2px; padding-top: 2px; padding-right: 20px; white-space: normal; vertical-align: text-top
}
.hd1 {
Modified: incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/files.html
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/files.html?rev=635503&r1=635502&r2=635503&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/files.html (original)
+++ incubator/tuscany/java/sca/modules/workspace-admin/src/main/resources/files.html Mon Mar 10 02:50:28 2008
@@ -78,7 +78,7 @@
<br>
<span class=hd1>
SCA Domain<br><br>
- Contribution File Server <a href="/composite/"><img src="icons/feed-icon.png" border="0"></a>
+ Contribution File Server <a href="/feed/files/"><img src="icons/feed-icon.png" border="0"></a>
</span>
<br><br>
This is a simple ATOM-based file server useful to share SCA contributions if you don't have an FTP, SVN or Maven repository.
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org