[Yanel-commits] rev 21981 -
public/yanel/trunk/src/contributions/resources/resource-creator/src/java/org/wyona/yanel/impl/resources
michi at wyona.com
michi at wyona.com
Mon Jan 22 00:46:09 CET 2007
Author: michi
Date: 2007-01-22 00:46:08 +0100 (Mon, 22 Jan 2007)
New Revision: 21981
Modified:
public/yanel/trunk/src/contributions/resources/resource-creator/src/java/org/wyona/yanel/impl/resources/ResourceCreatorResource.java
Log:
tried to fix the upload
Modified: public/yanel/trunk/src/contributions/resources/resource-creator/src/java/org/wyona/yanel/impl/resources/ResourceCreatorResource.java
===================================================================
--- public/yanel/trunk/src/contributions/resources/resource-creator/src/java/org/wyona/yanel/impl/resources/ResourceCreatorResource.java 2007-01-21 22:29:21 UTC (rev 21980)
+++ public/yanel/trunk/src/contributions/resources/resource-creator/src/java/org/wyona/yanel/impl/resources/ResourceCreatorResource.java 2007-01-21 23:46:08 UTC (rev 21981)
@@ -80,12 +80,12 @@
if (!parameters.hasMoreElements()) {
getSelectResourceTypeScreen(sb);
} else {
- if (request.getParameter("resource-type") != null) {
- getResourceScreen(sb);
- } else if (request.getParameter("save-as") != null) {
+ if (request.getParameter("save-as") != null) {
getSaveAsScreen(sb);
} else if (request.getParameter("save") != null) {
getSaveScreen(sb);
+ } else if (request.getParameter("resource-type") != null) {
+ getResourceScreen(sb);
} else {
getNoSuchScreen(sb);
}
@@ -134,6 +134,17 @@
*
*/
private void getSaveAsScreen(StringBuffer sb) {
+ String rtps = getRequest().getParameter("resource-type");
+ String resNamespace = rtps.substring(0, rtps.indexOf("::"));
+ String resName = rtps.substring(rtps.indexOf("::") + 2);
+ ResourceTypeRegistry rtr = new ResourceTypeRegistry();
+
+ String universalName = "<{"+ resNamespace +"}"+ resName +"/>";
+ log.debug("Universal Name: " + universalName);
+ try {
+ Resource resource = rtr.newResource(universalName);
+ if (resource != null) {
+
sb.append("<h4>Create resource (step 3)</h4>");
sb.append("<h2>Save As</h2>");
@@ -141,18 +152,35 @@
Enumeration parameters = request.getParameterNames();
if (parameters.hasMoreElements()) {
sb.append("<ul>");
- while (parameters.hasMoreElements()) {
- String parameter = (String) parameters.nextElement();
- if (parameter.indexOf("rp.") == 0) {
- sb.append("<li>"+parameter+": "+request.getParameter(parameter)+"</li>");
+ while (parameters.hasMoreElements()) {
+ String parameter = (String) parameters.nextElement();
+ if (parameter.indexOf("rp.") == 0) {
+ sb.append("<li>"+parameter+": "+request.getParameter(parameter)+"</li>");
+ }
}
- }
sb.append("</ul>");
}
String createName = request.getParameter("create-name");
sb.append("<p>");
sb.append("<form>");
+ //sb.append("<form method=\"post\" enctype=\"multipart/form-data\">");
+ // TODO: Add this parameter to the continuation within the session!
+ sb.append("<input type=\"hidden\" name=\"resource-type\" value=\""+rtps+"\"/>");
+
+ parameters = request.getParameterNames();
+ while (parameters.hasMoreElements()) {
+ String parameter = (String) parameters.nextElement();
+ if (parameter.indexOf("rp.") == 0) {
+ String propertyType = ((CreatableV2) resource).getPropertyType(parameter.substring(3));
+ if (propertyType != null && propertyType.equals(CreatableV2.TYPE_UPLOAD)) {
+ sb.append("<input type=\"file\" name=\""+parameter+"\" value=\""+request.getParameter(parameter)+"\"/><br/>");
+ } else {
+ sb.append("<input type=\"hidden\" name=\""+parameter+"\" value=\""+request.getParameter(parameter)+"\"/>");
+ }
+ }
+ }
+
if (createName != null) {
sb.append("Name: <input type=\"text\" name=\"create-name\" value=\"" + createName + "\"/>");
} else {
@@ -161,6 +189,11 @@
sb.append("<br/><input type=\"submit\" value=\"Save\" name=\"save\"/>");
sb.append("</form>");
sb.append("</p>");
+ }
+ } catch (Exception e) {
+ sb.append("<p>Exception: "+e+"</p>");
+ log.error(e);
+ }
}
/**
@@ -196,6 +229,8 @@
sb.append("<h2>Enter/Select resource specific parameters</h2>");
sb.append("<p>Resource Type: " + resName + " ("+resNamespace+")</p>");
sb.append("<form>");
+ // TODO: Add this parameter to the continuation within the session!
+ sb.append("<input type=\"hidden\" name=\"resource-type\" value=\""+rtps+"\"/>");
if (propertyNames != null && propertyNames.length > 0) {
sb.append("<p>Resource specific properties:</p>");
More information about the Yanel-commits
mailing list