Author: saminda
Date: Tue Jan 15 11:20:15 2008
New Revision: 12292
Log:
Adding attribute support
Modified:
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/js/data_service.js
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/xslt/data_service_add_edit_result_mapping.xsl
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/xslt/data_service_add_query.xsl
Modified:
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/js/data_service.js
==============================================================================
---
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/js/data_service.js
(original)
+++
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/js/data_service.js
Tue Jan 15 11:20:15 2008
@@ -1113,7 +1113,7 @@
break;
}
var mappingValue = mappingObj[mappingObj.selectedIndex].value;
- if (mappingValue == 'Element') {
+ if (mappingValue == 'Element' || mappingValue == 'Attribute') {
var name =
document.getElementById('txtDataServiceOMElementName').value;
var column =
document.getElementById('txtDataServiceOMColumnName').value;
if (name == null || name.length == 0) {
@@ -1124,7 +1124,15 @@
wso2.wsf.Util.alertWarning("SQL column name is required");
return;
}
- var eEleArray = resultEle.getElementsByTagName('element');
+ var eEleArray = null;
+ if (mappingValue == 'Element') {
+ eEleArray = resultEle.getElementsByTagName('element');
+ } else if (mappingValue == 'Attribute') {
+ eEleArray = resultEle.getElementsByTagName('attribute');
+ } else {
+ wso2.wsf.Util.alertWarning("Mapping Type is not available");
+ return;
+ }
var eEle1 = null;
if (name == oldOutputFieldName) {
//same elements and in the editing stage
@@ -1152,7 +1160,11 @@
wso2.wsf.Util.alertWarning("Element already exist with the
name " + name);
return;
}
- eEle1 = rootDocument.createElement("element");
+ if (mappingValue == 'Element') {
+ eEle1 = rootDocument.createElement("element");
+ } else {
+ eEle1 = rootDocument.createElement("attribute");
+ }
eEle1.setAttribute("name", name);
eEle1.setAttribute("column", column);
resultEle.appendChild(eEle1);
@@ -1174,7 +1186,11 @@
}
}
resultEle.removeChild(eEle1);
- eEle1 = rootDocument.createElement("element");
+ if (mappingValue == 'Element') {
+ eEle1 = rootDocument.createElement("element");
+ } else {
+ eEle1 = rootDocument.createElement("attribute");
+ }
eEle1.setAttribute("name", name);
eEle1.setAttribute("column", column);
resultEle.appendChild(eEle1);
@@ -1346,6 +1362,13 @@
showYUIPanel("Edit Output Mapping ", divInnerHtml, "600px",
"step2Inner10", "divADDEditOutputMapping");
}
+//TODO: note edit query output mapping attribute
+function editQueryOutputMappingAttribute(queryId, atName, colName) {
+ var divInnerHtml = yuiTransformer(dataServiceObj,
"data_service_add_edit_result_mapping.xsl", false,
[["queryId",queryId],["atName",atName],["colName", colName]]);
+ showYUIPanel("Edit Output Mapping ", divInnerHtml, "600px",
"step2Inner10", "divADDEditOutputMapping");
+
+}
+
function editQueryOutputMappingCallQuery(queryId, queryHref) {
var divInnerHtml = yuiTransformer(dataServiceObj,
"data_service_add_edit_result_mapping.xsl", false,
[["queryId",queryId],["queryHref", queryHref]]);
showYUIPanel("Add New Output Mapping ", divInnerHtml, "600px",
"step2Inner10", "divADDEditOutputMapping");
@@ -1505,6 +1528,16 @@
}
}
resultEle.removeChild(cqEle);
+ } else if (mappingType == "Attribute") {
+ var atArray = resultEle.getElementsByTagName('attribute');
+ var atEle = null;
+ for (i = 0; i < eArray.length; i++) {
+ if (atArray[i].getAttribute('name') == commonName) {
+ atEle = atArray[i];
+ break;
+ }
+ }
+ resultEle.removeChild(atEle);
}
var currentDiv = document.getElementById("divADDEditOutputMapping");
currentDiv.style.display = "none";
Modified:
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/xslt/data_service_add_edit_result_mapping.xsl
==============================================================================
---
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/xslt/data_service_add_edit_result_mapping.xsl
(original)
+++
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/xslt/data_service_add_edit_result_mapping.xsl
Tue Jan 15 11:20:15 2008
@@ -3,6 +3,7 @@
<xsl:param name="queryId"/>
<xsl:param name="eleName"/>
+ <xsl:param name="atName"/>
<xsl:param name="colName"/>
<xsl:param name="queryHref"/>
@@ -21,6 +22,9 @@
<xsl:when test="[EMAIL PROTECTED]/result/[EMAIL
PROTECTED]">
<xsl:text>Element</xsl:text>
</xsl:when>
+ <xsl:when test="[EMAIL PROTECTED]/result/[EMAIL
PROTECTED]">
+ <xsl:text>Attribute</xsl:text>
+ </xsl:when>
<xsl:when test="[EMAIL PROTECTED]/result/[EMAIL
PROTECTED]">
<xsl:text>Query</xsl:text>
</xsl:when>
@@ -57,7 +61,7 @@
<select>
<xsl:attribute
name="id">cmbDataServiceOMType</xsl:attribute>
<xsl:attribute
name="onchange">changeToNextMapping('<xsl:value-of select="$queryId"/>',
this);return false;</xsl:attribute>
- <xsl:if test="$eleName or $colName or $queryHref">
+ <xsl:if test="$eleName or $atName or $colName or
$queryHref">
<xsl:attribute
name="disabled">true</xsl:attribute>
</xsl:if>
<option>
@@ -67,6 +71,13 @@
</xsl:if>
Element
</option>
+ <option>
+ <xsl:attribute
name="value">Attribute</xsl:attribute>
+ <xsl:if test="$mappingType='Attribute'">
+ <xsl:attribute
name="selected">true</xsl:attribute>
+ </xsl:if>
+ Attribute
+ </option>
<xsl:if test="$dataSourceType!='CSV' and
count($queries)>1">
<option>
<xsl:attribute
name="value">Query</xsl:attribute>
@@ -82,7 +93,7 @@
<xsl:if test="$mappingType='Query'">
<xsl:attribute name="style">display:
inline;</xsl:attribute>
</xsl:if>
- <xsl:if test="$mappingType='Element'">
+ <xsl:if test="$mappingType='Element' or
$mappingType='Attribute'">
<xsl:attribute name="style">display:
none;</xsl:attribute>
</xsl:if>
<div>
@@ -127,7 +138,7 @@
<xsl:if test="$mappingType='Query'">
<xsl:attribute name="style">display:
none;</xsl:attribute>
</xsl:if>
- <xsl:if test="$mappingType='Element'">
+ <xsl:if test="$mappingType='Element' or
$mappingType='Attribute'">
<xsl:attribute name="style">display:
inline;</xsl:attribute>
</xsl:if>
<div>
@@ -135,8 +146,17 @@
<input type="text">
<xsl:attribute name="size">30</xsl:attribute>
<xsl:attribute
name="id">txtDataServiceOMElementName</xsl:attribute>
- <xsl:attribute name="value"><xsl:value-of
select="$eleName"/></xsl:attribute>
- <xsl:if test="$eleName">
+ <xsl:attribute name="value">
+ <xsl:choose>
+ <xsl:when test="$eleName">
+ <xsl:value-of select="$eleName"/>
+ </xsl:when>
+ <xsl:when test="$atName">
+ <xsl:value-of select="$atName"/>
+ </xsl:when>
+ </xsl:choose>
+ </xsl:attribute>
+ <xsl:if test="$eleName or $atName">
<xsl:attribute
name="style">background-color:#E4E8F5;</xsl:attribute>
</xsl:if>
</input>
@@ -186,7 +206,17 @@
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
- addEditSpecificOutputMapping('<xsl:value-of
select="$queryId"/>',
document.getElementById('cmbDataServiceOMType'),'<xsl:value-of
select="$eleName"/>', cqmObj);return false;
+ <xsl:variable name="oldOutputFieldName">
+ <xsl:choose>
+ <xsl:when test="$eleName">
+ <xsl:value-of select="$eleName"/>
+ </xsl:when>
+ <xsl:when test="$atName">
+ <xsl:value-of select="$atName"/>
+ </xsl:when>
+ </xsl:choose>
+ </xsl:variable>
+ addEditSpecificOutputMapping('<xsl:value-of
select="$queryId"/>',
document.getElementById('cmbDataServiceOMType'),'<xsl:value-of
select="$oldOutputFieldName"/>', cqmObj);return false;
</xsl:attribute>
</input>
<input type="button"
onclick="closeContainer('divADDEditOutputMapping');
refreshParentQueryContainer('{$queryId}', 'data_service_add_query.xsl',
'divDSAddQuery', 'Add New Query'); return false;" value="Cancel"/>
Modified:
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/xslt/data_service_add_query.xsl
==============================================================================
---
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/xslt/data_service_add_query.xsl
(original)
+++
branches/wsas/java/2.2/wsas/java/modules/www/extensions/core/xslt/data_service_add_query.xsl
Tue Jan 15 11:20:15 2008
@@ -167,7 +167,7 @@
</xsl:when>
<xsl:otherwise>
<xsl:choose>
- <xsl:when test="[EMAIL
PROTECTED]/result/element or [EMAIL PROTECTED]/result/call-query">
+ <xsl:when test="[EMAIL
PROTECTED]/result/element or [EMAIL PROTECTED]/result/attribute or [EMAIL
PROTECTED]/result/call-query">
<div>Output Mappings</div>
<div>
<table class="styled"
width="460px;" style="margin-left:20px;">
@@ -250,6 +250,7 @@
<xsl:template match="result">
<xsl:apply-templates select="call-query"/>
<xsl:apply-templates select="element"/>
+ <xsl:apply-templates select="attribute"/>
</xsl:template>
<xsl:template match="call-query">
@@ -305,6 +306,34 @@
</tr>
</xsl:template>
+ <xsl:template match="attribute">
+ <tr>
+ <td>Attribute</td>
+ <td>
+ <xsl:value-of select="@name"/>
+ </td>
+ <td>
+ <xsl:value-of select="@column"/>
+ </td>
+ <td style="width:50px;">
+ <a alt="Delete">
+ <xsl:attribute name="title">Delete</xsl:attribute>
+ <xsl:attribute
name="onclick">javascript:removeQueryOutputMapping('<xsl:value-of
select="$queryId"/>','Attribute','<xsl:value-of select="@name"/>');return
false;</xsl:attribute>
+ <xsl:attribute name="id">cancel_link</xsl:attribute>
+ <xsl:attribute name="href">#</xsl:attribute>
+ <xsl:text>      </xsl:text>
+ </a>
+ <a alt="Edit">
+ <xsl:attribute name="title">Edit</xsl:attribute>
+ <xsl:attribute
name="onclick">javascript:editQueryOutputMappingAttribute('<xsl:value-of
select="$queryId"/>','<xsl:value-of select="@name"/>', '<xsl:value-of
select="@column"/>');return false;</xsl:attribute>
+ <xsl:attribute name="id">edit_link</xsl:attribute>
+ <xsl:attribute name="href">#</xsl:attribute>
+ <xsl:text>      </xsl:text>
+ </a>
+ </td>
+ </tr>
+ </xsl:template>
+
<xsl:template match="param">
<tr>
<td>
_______________________________________________
Wsas-java-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/wsas-java-dev