[wsas-java-dev] svn commit r2528 - in
trunk/wsas/java/modules/www/extensions/core: js xslt
svn at wso2.org
svn at wso2.org
Sun May 13 14:04:25 PDT 2007
Author: chamil
Date: Sun May 13 14:04:18 2007
New Revision: 2528
Modified:
trunk/wsas/java/modules/www/extensions/core/js/data_service.js
trunk/wsas/java/modules/www/extensions/core/xslt/data_service.xsl
trunk/wsas/java/modules/www/extensions/core/xslt/data_service_add_query.xsl
Log:
Adding the property handling code.
Modified: trunk/wsas/java/modules/www/extensions/core/js/data_service.js
==============================================================================
--- trunk/wsas/java/modules/www/extensions/core/js/data_service.js (original)
+++ trunk/wsas/java/modules/www/extensions/core/js/data_service.js Sun May 13 14:04:18 2007
@@ -71,8 +71,14 @@
var dataObj = xhReq.responseXML.getElementsByTagName("data").item(0);
alert(xmlSerializerToString(dataObj));*/
dataServiceObj = xhReq.responseXML.getElementsByTagName("return").item(0);
- callbackhelper("data_service.xsl",document.getElementById("divDataServiceDetails"));
+ refreshDataServiceScreen();
+}
+
+
+function refreshDataServiceScreen(){
+ callbackhelper("data_service.xsl",document.getElementById("divDataServiceDetails"));
showDataServiceHeader(document.getElementById('dataServiceHeader'));
+
}
function addConfigParameter(){
@@ -80,6 +86,23 @@
if (newParam != null) {
dataServiceObj.getElementsByTagName("config").item(0).appendChild(createPropelement(newParam[0], newParam[1]));
}
+ refreshDataServiceScreen();
+}
+
+function addNewInputMapping(){
+ var newParam = getUserInput();
+ if (newParam != null) {
+ dataServiceQueryObj.appendChild(createInputMappingElement(newParam[0], newParam[1]));
+ }
+ refresEditDataServiceQueryScreen();
+}
+
+function addNewOutputMapping(){
+ var newParam = getUserInput();
+ if (newParam != null) {
+ dataServiceQueryObj.getElementsByTagName("result").item(0).appendChild(createOutputMappingElement(newParam[0], newParam[1]));
+ }
+ refresEditDataServiceQueryScreen();
}
function displayAddDataServiceOperation(){
@@ -159,12 +182,26 @@
function createPropelement(propName, propValue){
var propObj = document.createElement("property");
- property.appendChild(document.createTextNode(propValue));
- property.setAttribute(propName);
+ propObj.appendChild(document.createTextNode(propValue));
+ propObj.setAttribute("name", propName);
return propObj;
}
+function createInputMappingElement(elementName, sqlType){
+ var imElement = document.createElement("prop");
+ imElement.setAttribute("name", elementName);
+ imElement.setAttribute("sqlType", sqlType);
+ return imElement;
+}
+
+function createOutputMappingElement(elementName, dataColumn){
+ var imElement = document.createElement("element");
+ imElement.setAttribute("name", elementName);
+ imElement.setAttribute("column", dataColumn);
+ return imElement;
+}
+
function showGeneratedConfigFile(){
var finalScreenHTML = '<h4><a href="#" onClick="javascript:showServiceInitializer(); return false;">Services</a> > <xsl:value-of select="return/name"/></h4>' +
'<div id="formset">' +
@@ -183,7 +220,7 @@
'</fieldset>';
var dataServiceConfigDiv = document.getElementById("divDataServiceDisplayConfig");
dataServiceConfigDiv.innerHTML = finalScreenHTML;
- document.getElementById("txtDataServiceReviewBox").value = prettyPrintDOMNode(dataServiceObj);
+ document.getElementById("txtDataServiceReviewBox").value = prettyPrintDOMNode(dataServiceObj, "", "", " ");
showOnlyOneMain(dataServiceConfigDiv);
}
@@ -194,16 +231,19 @@
//alert(typeof dataServiceQueryObj);
// alert(prettyPrintDOMNode(dataServiceQueryObj));
+ refresEditDataServiceQueryScreen();
+ showOnlyOneMain(document.getElementById('divDataServiceAddQuery'));
+
+}
+
+
+function refresEditDataServiceQueryScreen(){
var quDivObj = document.getElementById("divDataServiceAddQuery");
processXML(dataServiceQueryObj, "data_service_add_query.xsl", quDivObj);
- showOnlyOneMain(quDivObj);
showDataServiceQueryHeader(document.getElementById('dataServiceAddQueryHeader'));
-
}
-
-
function getNodeWithPropertyFromCollection(objCollection, propName, propValue){
for (var i=0;i<objCollection.length;i++){
var curr = objCollection.item(i);
Modified: trunk/wsas/java/modules/www/extensions/core/xslt/data_service.xsl
==============================================================================
--- trunk/wsas/java/modules/www/extensions/core/xslt/data_service.xsl (original)
+++ trunk/wsas/java/modules/www/extensions/core/xslt/data_service.xsl Sun May 13 14:04:18 2007
@@ -26,7 +26,7 @@
</xsl:for-each>
<div class="buttonrow">
<label></label><input type="button" value="Add New">
- <xsl:attribute name="onclick">javascript:alert("Add new configuration peoperty");return false;</xsl:attribute>
+ <xsl:attribute name="onclick">javascript:addConfigParameter();return false;</xsl:attribute>
</input>
</div>
</fieldset>
Modified: trunk/wsas/java/modules/www/extensions/core/xslt/data_service_add_query.xsl
==============================================================================
--- trunk/wsas/java/modules/www/extensions/core/xslt/data_service_add_query.xsl (original)
+++ trunk/wsas/java/modules/www/extensions/core/xslt/data_service_add_query.xsl Sun May 13 14:04:18 2007
@@ -3,17 +3,19 @@
<xsl:template match="*">
<h4><div id="dataServiceAddQueryHeader"></div></h4>
+ <h2>Data Service Management - Add Query</h2>
<fieldset style="border:none;">
<div id="formset">
- <xsl:for-each select="query">
+<!-- <xsl:for-each select="query">-->
<form>
<fieldset>
- <legend>Data Service Management - Add Query</legend>
+ <legend>General</legend>
<div>
<label>SQL Statement</label>
<input type="text">
<xsl:attribute name="size">50</xsl:attribute>
<xsl:attribute name="id">txtDataServiceSQL</xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="sql"/></xsl:attribute>
</input>
</div>
<div>
@@ -21,6 +23,7 @@
<input type="text">
<xsl:attribute name="size">50</xsl:attribute>
<xsl:attribute name="id">txtDataServiceWrapElement</xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="result/@element"/></xsl:attribute>
</input>
</div>
<div>
@@ -28,43 +31,63 @@
<input type="text">
<xsl:attribute name="size">50</xsl:attribute>
<xsl:attribute name="id">txtDataServiceRowName</xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="result/@rowName"/></xsl:attribute>
</input>
</div>
- <div><h4>Input Mapping</h4></div>
+ </fieldset>
+ <fieldset>
+ <legend>Input Mapping</legend>
+ <table class="styled" width="50%">
+ <thead>
+ <tr>
+ <th>Name</th>
+ <th>SQL Type</th>
+ </tr>
+ </thead>
<xsl:for-each select="param">
- <div>
- <label>Name : <xsl:value-of select="@name"/> </label>
- <label>SQL Type : <xsl:value-of select="@sqlType"/></label>
- </div>
+ <tr>
+ <td><xsl:value-of select="@name"/> </td>
+ <td><xsl:value-of select="@sqlType"/></td>
+ </tr>
</xsl:for-each>
+ </table>
<div class="buttonrow">
<label></label>
<input type="button" value="Add New">
<xsl:attribute name="onclick">javascript:alert("Add new Input Mapping");return false;</xsl:attribute>
</input>
</div>
- <div><h4>Output Mapping</h4></div>
+ </fieldset>
+ <fieldset>
+ <legend>Output Mapping</legend>
+ <table class="styled" width="50%">
+ <thead>
+ <tr>
+ <th>Output Field Name</th>
+ <th>Column Name</th>
+ </tr>
+ </thead>
<xsl:for-each select="result/element">
- <div>
- <label>Name : <xsl:value-of select="@name"/> </label>
- <label>Column Name : <xsl:value-of select="@column"/></label>
- </div>
+ <tr>
+ <td><xsl:value-of select="@name"/> </td>
+ <td><xsl:value-of select="@column"/></td>
+ </tr>
</xsl:for-each>
+ </table>
<div class="buttonrow">
- <label></label>
<input type="button" value="Add New">
<xsl:attribute name="onclick">javascript:addNewOutputMapping();return false;</xsl:attribute>
</input>
</div>
- <div class="buttonrow">
+ </fieldset>
+ </form>
+<!-- </xsl:for-each> -->
+ </div>
+ <div class="buttonrow">
<label></label><input type="button" value="Done">
<xsl:attribute name="onclick">javascript:addDataServiceOperation();;return false;</xsl:attribute>
</input>
</div>
- </fieldset>
- </form>
- </xsl:for-each>
- </div>
</fieldset>
</xsl:template>
</xsl:stylesheet>
More information about the Wsas-java-dev
mailing list