DATABIND : support the file system (code gen) 15/21815/2
authorjaeyeol lee <jaeyeol148.lee@samsung.com>
Wed, 28 May 2014 06:13:14 +0000 (15:13 +0900)
committerjaeyeol lee <jaeyeol148.lee@samsung.com>
Wed, 28 May 2014 06:15:46 +0000 (15:15 +0900)
Change-Id: I0acb442ac0a6c74d50d8856dbbf757167b821130
Signed-off-by: jaeyeol lee <jaeyeol148.lee@samsung.com>
org.tizen.webuibuilder/res/xslt/app_managed_js_ver0_0_2.xslt
org.tizen.webuibuilder/res/xslt/index_managed_js_ver0_0_1.xslt
org.tizen.webuibuilder/src/org/tizen/webuibuilder/BuilderConstants.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/model/app/io/AppMetaReader_ver_2.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/model/app/io/AppMetaWriter_ver_2.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/model/app/io/HtmlMetaReader_ver_1.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/model/app/io/HtmlMetaWriter_ver_1.java

index 730510a..dd1554c 100644 (file)
@@ -59,13 +59,14 @@ app.init = function() {
                        <xsl:value-of select="concat($tab, $tab, 'method: ', '&quot;', @type, '&quot;', ',', $newline)"/>
                        <xsl:value-of select="concat($tab, $tab, 'proxy: ', '&quot;', @proxy, '&quot;', ',', $newline)"/>
                        <xsl:value-of select="concat($tab, $tab, 'query: ', '&quot;', @query, '&quot;', ',', $newline)"/>
-                       <xsl:value-of select="concat($tab, $tab, 'sourceType: ', '&quot;', @sourceType, '&quot;', ',', $newline)"/>
+                       <xsl:value-of select="concat($tab, $tab, 'dataType: ', '&quot;', @dataType, '&quot;', ',', $newline)"/>
                        <xsl:value-of select="concat($tab, $tab, 'timeout: ', '&quot;', @timeout, '&quot;', $newline)"/>
                        <xsl:value-of select="concat($tab, '});', $newline)"/>
                </xsl:when>
                <xsl:when test="@modelType = 'STATIC'">
                        <xsl:value-of select="concat($newDataSource, 'dataSourceStatic', '({', $newline)"/>
                        <xsl:value-of select="concat($tab, $tab, 'data: ', @jsonData, $newline)" disable-output-escaping="yes"/>
+                       <xsl:value-of select="concat($tab, $tab, 'dataType: ', '&quot;', @dataType, '&quot;', ',', $newline)"/>
                    <xsl:value-of select="concat($tab, '});', $newline)"/>              
                </xsl:when>
                <xsl:when test="@modelType = 'RUNTIMEAPI'">
index c80af01..2a4c37c 100644 (file)
@@ -198,7 +198,7 @@ app.init = function() {
                        <xsl:value-of select="concat($tab, $tab, 'url: ', '&quot;', @url, '&quot;', ',', $newline)" disable-output-escaping="yes"/>
                        <xsl:value-of select="concat($tab, $tab, 'method: ', '&quot;', @type, '&quot;', ',', $newline)"/>
                        <xsl:value-of select="concat($tab, $tab, 'proxy: ', '&quot;', @proxy, '&quot;', ',', $newline)"/>
-                       <xsl:value-of select="concat($tab, $tab, 'sourceType: ', '&quot;', @sourceType, '&quot;', ',', $newline)"/>
+                       <xsl:value-of select="concat($tab, $tab, 'dataType: ', '&quot;', @dataType, '&quot;', ',', $newline)"/>
                        <xsl:value-of select="concat($tab, $tab, 'timeout: ', '&quot;', @timeout, '&quot;', ',', $newline)"/>
                        <xsl:if test="@query != ''">
                                <xsl:value-of select="concat($tab, $tab, 'query: {', $newline)"/>
@@ -218,7 +218,13 @@ app.init = function() {
                </xsl:when>
                <xsl:when test="@modelType = 'Static'">
                        <xsl:value-of select="concat($newDataSource, 'dataSourceStatic', '({', $newline)"/>
-                       <xsl:value-of select="concat($tab, $tab, 'data: ', @jsonData, $newline)" disable-output-escaping="yes"/>
+                       <xsl:if test="@dataType = 'json'">
+                               <xsl:value-of select="concat($tab, $tab, 'data: ', @jsonData, ',', $newline)" disable-output-escaping="yes"/>
+                       </xsl:if>
+                       <xsl:if test="@dataType = 'xml'">
+                               <xsl:value-of select="concat($tab, $tab, 'data: ', '&quot;', @jsonData, '&quot;', ',', $newline)" disable-output-escaping="yes"/>
+                       </xsl:if>
+                       <xsl:value-of select="concat($tab, $tab, 'dataType: ', '&quot;', @dataType, '&quot;', $newline)"/>
                    <xsl:value-of select="concat($tab, '});', $newline)"/>              
                </xsl:when>
                <xsl:when test="@modelType = 'Contact'">
@@ -255,6 +261,12 @@ app.init = function() {
                        <xsl:value-of select="concat($tab, $tab, 'starttimeorder: ', '&quot;', @starttimeorder, '&quot;', $newline)"/>
                    <xsl:value-of select="concat($tab, '});', $newline)"/>              
                </xsl:when>
+               <xsl:when test="@modelType = 'File System'">
+                       <xsl:value-of select="concat($newDataSource, 'dataSourceFile', '({', $newline)"/>
+                       <xsl:value-of select="concat($tab, $tab, 'path: ', '&quot;', @filePath, '&quot;', ',', $newline)"/>
+                       <xsl:value-of select="concat($tab, $tab, 'dataType: ', '&quot;', @dataType, '&quot;', $newline)"/>
+                   <xsl:value-of select="concat($tab, '});', $newline)"/>              
+               </xsl:when>
        </xsl:choose>
 </xsl:template>
  
index 05d233a..15a5998 100644 (file)
@@ -225,7 +225,7 @@ public class BuilderConstants {
        public static final String ATTRIBUTE_URL = "url"; //$NON-NLS-1$
        public static final String ATTRIBUTE_PROXY = "proxy"; //$NON-NLS-1$
        public static final String ATTRIBUTE_QUERY = "query"; //$NON-NLS-1$
-       public static final String ATTRIBUTE_SOURCETYPE = "sourceType"; //$NON-NLS-1$
+       public static final String ATTRIBUTE_DATATYPE = "dataType"; //$NON-NLS-1$
        public static final String ATTRIBUTE_TIMEOUT = "timeout"; //$NON-NLS-1$
        public static final String ATTRIBUTE_JSONDATA = "jsonData"; //$NON-NLS-1$
        public static final String ATTRIBUTE_FILEPATH = "filePath"; //$NON-NLS-1$
index 0f550eb..dd7a951 100644 (file)
@@ -229,7 +229,7 @@ public class AppMetaReader_ver_2 {
                 String type = element2.getAttribute(BuilderConstants.ATTRIBUTE_TYPE);
                 String proxy = element2.getAttribute(BuilderConstants.ATTRIBUTE_PROXY);
                 String query = element2.getAttribute(BuilderConstants.ATTRIBUTE_QUERY);
-                String sourceType = element2.getAttribute(BuilderConstants.ATTRIBUTE_SOURCETYPE);
+                String sourceType = element2.getAttribute(BuilderConstants.ATTRIBUTE_DATATYPE);
                 String timeout = element2.getAttribute(BuilderConstants.ATTRIBUTE_TIMEOUT);
                 String jsonData = element2.getAttribute(BuilderConstants.ATTRIBUTE_JSONDATA);
                 String headersInfo = element2.getAttribute(BuilderConstants.ATTRIBUTE_HEADERS);
index 30cade5..eef96fc 100644 (file)
@@ -202,7 +202,7 @@ public class AppMetaWriter_ver_2 {
             element.setAttribute(BuilderConstants.ATTRIBUTE_TYPE, dataModel.getMethod());
             element.setAttribute(BuilderConstants.ATTRIBUTE_PROXY, dataModel.getProxy());
             element.setAttribute(BuilderConstants.ATTRIBUTE_QUERY, dataModel.getQuery());
-            element.setAttribute(BuilderConstants.ATTRIBUTE_SOURCETYPE, dataModel.getSourceType());
+            element.setAttribute(BuilderConstants.ATTRIBUTE_DATATYPE, dataModel.getSourceType());
             element.setAttribute(BuilderConstants.ATTRIBUTE_TIMEOUT, dataModel.getTimeout());
             element.setAttribute(BuilderConstants.ATTRIBUTE_JSONDATA, dataModel.getJsonData());
 
index 4a5722d..e053fd8 100644 (file)
@@ -285,7 +285,7 @@ public class HtmlMetaReader_ver_1 {
                 String type = element2.getAttribute(BuilderConstants.ATTRIBUTE_TYPE);
                 String proxy = element2.getAttribute(BuilderConstants.ATTRIBUTE_PROXY);
                 String query = element2.getAttribute(BuilderConstants.ATTRIBUTE_QUERY);
-                String sourceType = element2.getAttribute(BuilderConstants.ATTRIBUTE_SOURCETYPE);
+                String sourceType = element2.getAttribute(BuilderConstants.ATTRIBUTE_DATATYPE);
                 String timeout = element2.getAttribute(BuilderConstants.ATTRIBUTE_TIMEOUT);
                 String jsonData = element2.getAttribute(BuilderConstants.ATTRIBUTE_JSONDATA);
                 String headersInfo = element2.getAttribute(BuilderConstants.ATTRIBUTE_HEADERS);
@@ -302,8 +302,10 @@ public class HtmlMetaReader_ver_1 {
                     && (modelType.equals(BuilderConstants.DATABINDING_TYPE_STATIC))) {
                 String jsonData = element2.getAttribute(BuilderConstants.ATTRIBUTE_JSONDATA);
                 String filePath = element2.getAttribute(BuilderConstants.ATTRIBUTE_FILEPATH);
+                String sourceType = element2.getAttribute(BuilderConstants.ATTRIBUTE_DATATYPE);
 
                 BindingData dataModel = new BindingData(sourceName, modelType, jsonData, filePath);
+                dataModel.setSourceType(sourceType);
 
                 parseObservableObject(element2, dataModel);
 
@@ -348,6 +350,18 @@ public class HtmlMetaReader_ver_1 {
                 dataModel.setCallHistoryStartTimeOrder(startTimeOrder);
                 parseObservableObject(element2, dataModel);
                 fileData.addDataSource(dataModel);
+            } else if ((modelType != null) && (modelType.equals("File System"))) {
+                String filePath = element2.getAttribute(BuilderConstants.ATTRIBUTE_FILEPATH);
+                String sourceType = element2.getAttribute(BuilderConstants.ATTRIBUTE_DATATYPE);
+
+                BindingData dataModel = new BindingData();
+                dataModel.setItemName(sourceName);
+                dataModel.setSourceName(sourceName);
+                dataModel.setModelType(modelType);
+                dataModel.setStaticFilePath(filePath);
+                dataModel.setSourceType(sourceType);
+                parseObservableObject(element2, dataModel);
+                fileData.addDataSource(dataModel);
             } else {
                 BindingData dataModel = new BindingData();
                 dataModel.setItemName(sourceName);
index e9f4a4a..7b3f998 100644 (file)
@@ -404,7 +404,7 @@ public class HtmlMetaWriter_ver_1 {
             element.setAttribute(BuilderConstants.ATTRIBUTE_TYPE, dataModel.getMethod());
             element.setAttribute(BuilderConstants.ATTRIBUTE_PROXY, dataModel.getProxy());
             element.setAttribute(BuilderConstants.ATTRIBUTE_QUERY, dataModel.getQuery());
-            element.setAttribute(BuilderConstants.ATTRIBUTE_SOURCETYPE, dataModel.getSourceType());
+            element.setAttribute(BuilderConstants.ATTRIBUTE_DATATYPE, dataModel.getSourceType());
             element.setAttribute(BuilderConstants.ATTRIBUTE_TIMEOUT, dataModel.getTimeout());
             element.setAttribute(BuilderConstants.ATTRIBUTE_JSONDATA, dataModel.getJsonData());
             element.setAttribute(BuilderConstants.ATTRIBUTE_HEADERS, headerInfo);
@@ -427,6 +427,7 @@ public class HtmlMetaWriter_ver_1 {
             }
             element.setAttribute(BuilderConstants.ATTRIBUTE_JSONDATA, jsonData);
             element.setAttribute(BuilderConstants.ATTRIBUTE_FILEPATH, dataModel.getStaticFilePath());
+            element.setAttribute(BuilderConstants.ATTRIBUTE_DATATYPE, dataModel.getSourceType());
         } else if ((dataModel.getModelType() != null)
                 && (dataModel.getModelType().equals("Contact"))) {
             element.setAttribute(BuilderConstants.ATTRIBUTE_METHOD, dataModel.getRuntimeApiName());
@@ -456,6 +457,15 @@ public class HtmlMetaWriter_ver_1 {
             for (int i = 0; i < size; i++) {
                 element.appendChild(writeObservableObjects(doc, observableObjects.get(i)));
             }
+        } else if ((dataModel.getModelType() != null)
+                && (dataModel.getModelType().equals("File System"))) {
+            element.setAttribute(BuilderConstants.ATTRIBUTE_FILEPATH, dataModel.getStaticFilePath());
+            element.setAttribute(BuilderConstants.ATTRIBUTE_DATATYPE, dataModel.getSourceType());
+            List<BindingObject> observableObjects = dataModel.getDataSourceObjects();
+            int size = observableObjects.size();
+            for (int i = 0; i < size; i++) {
+                element.appendChild(writeObservableObjects(doc, observableObjects.get(i)));
+            }
         } 
         return element;
     }