]> gitweb.fperrin.net Git - Dictionary.git/blob - jars/gss-lib-2.2/sample/SpreadSheet_Usage/src/com/prasanta/sample/ListFeed.java
Added gss-lib-2.2.
[Dictionary.git] / jars / gss-lib-2.2 / sample / SpreadSheet_Usage / src / com / prasanta / sample / ListFeed.java
1 package com.prasanta.sample;\r
2 \r
3 import java.util.ArrayList;\r
4 import java.util.HashMap;\r
5 \r
6 import com.pras.SpreadSheet;\r
7 import com.pras.SpreadSheetFactory;\r
8 import com.pras.WorkSheet;\r
9 import com.pras.WorkSheetRow;\r
10 \r
11 /**\r
12  * This class demonstrates usage of List Based Feed-\r
13  * - Add Listbased WorkSheet\r
14  * - Add Row\r
15  * - Update Row\r
16  * - Delete Row\r
17  * - Get List of Rows\r
18  * \r
19  * @author Prasanta Paul\r
20  *\r
21  */\r
22 public class ListFeed {\r
23         \r
24         \r
25         /**\r
26          * Create List based WorkSheet\r
27          * @param args\r
28          */\r
29         public static void createListWorkSheet(String[] args){\r
30                 String[] cols = {"id", "devicename", "vendor"};\r
31                 SpreadSheetFactory spf = SpreadSheetFactory.getInstance("email", "password");\r
32                 \r
33                 // Get selected SpreadSheet     \r
34                 ArrayList<SpreadSheet> spreadSheets = spf.getSpreadSheet("Pras", false);\r
35                 \r
36                 if(spreadSheets == null || spreadSheets.size() == 0){\r
37                         System.out.println("No SpreadSheet Exists!");\r
38                         return;\r
39                 }\r
40                 \r
41                 System.out.println("Number of SpreadSheets: "+ spreadSheets.size());\r
42                 \r
43                 SpreadSheet sp = spreadSheets.get(0);\r
44                 System.out.println("### Creating WorkSheet for ListFeed ###");\r
45                 WorkSheet workSheet = sp.addListWorkSheet("Device_List", 10, cols);\r
46                 \r
47                 HashMap<String, String> row_data = new HashMap<String, String>();\r
48                 row_data.put("id", "1");\r
49                 row_data.put("devicename", "Samsung Ace");\r
50                 row_data.put("vendor", "Samsung");\r
51                 \r
52                 // Add entries\r
53                 WorkSheetRow list_row1 = workSheet.addListRow(row_data);\r
54                 \r
55                 row_data.put("id", "2");\r
56                 row_data.put("devicename", "Optimus");\r
57                 row_data.put("vendor", "LG");\r
58                 \r
59                 WorkSheetRow list_row2 = workSheet.addListRow(row_data);\r
60                 \r
61                 row_data.put("id", "3");\r
62                 row_data.put("devicename", "Xdroid");\r
63                 row_data.put("vendor", "Motorola");\r
64                 \r
65                 WorkSheetRow list_row3 = workSheet.addListRow(row_data);\r
66                 \r
67                 // Update previous Row\r
68                 row_data.put("id", "2");\r
69                 row_data.put("devicename", "Optimus");\r
70                 row_data.put("vendor", "LG-New");\r
71                 workSheet.updateListRow(sp.getEntry().getKey(), list_row2, row_data);\r
72                 \r
73                 workSheet.deleteListRow(sp.getEntry().getKey(), list_row3);\r
74                 \r
75                 ArrayList<WorkSheetRow> rows = workSheet.getData(true);\r
76                 System.out.println("List Feed: "+ rows);\r
77                 \r
78                 // Example of Structured Query-\r
79                 /*\r
80                  * For List Based feed use lower case Column Name\r
81                  * Note: Column name should be in lower case\r
82                  * Retrieve data where age < 30 and order by "name" column\r
83                  */\r
84 //              ArrayList<WorkSheetRow> rows = workSheet.getData(false, false, HttpConHandler.encode("\"age\"") + "<" + HttpConHandler.encode("30"), "column:name");\r
85 //              \r
86 //              System.out.println("Count: "+ rows.size());\r
87 //              \r
88 //              for(int i=0; i<rows.size(); i++){\r
89 //                      WorkSheetRow r = rows.get(i);\r
90 //                      \r
91 //                      ArrayList<WorkSheetCell> cls = r.getCells();\r
92 //                      for(int j=0; j<cls.size(); j++){\r
93 //                              WorkSheetCell c = cls.get(j);\r
94 //                              System.out.println("Col Name: "+ c.getName() +" Value: "+ c.getValue());\r
95 //                      }\r
96 //              }\r
97         }\r
98         \r
99         /**\r
100          * Displays All WorkSheet (Table and List)\r
101          */\r
102         public static void displayWorkSheetInfo(){\r
103                 SpreadSheetFactory spf = SpreadSheetFactory.getInstance("email", "password");\r
104                 \r
105                 // Get selected SpreadSheet     \r
106                 ArrayList<SpreadSheet> spreadSheets = spf.getSpreadSheet("Pras", false);\r
107                 \r
108                 if(spreadSheets == null || spreadSheets.size() == 0){\r
109                         System.out.println("No SpreadSheet Exists!");\r
110                         return;\r
111                 }\r
112                 \r
113                 System.out.println("Number of SpreadSheets: "+ spreadSheets.size());\r
114                 \r
115                 SpreadSheet sp = spreadSheets.get(0);\r
116                 \r
117                 ArrayList<WorkSheet> wks = sp.getAllWorkSheets();\r
118                 for(int i=0; i<wks.size(); i++){\r
119                         System.out.println("WorkSheets: "+ wks.get(i).getTitle());\r
120                         String[] cols = wks.get(i).getColumns();\r
121                         for(int j=0; j<cols.length; j++){\r
122                                 System.out.println("WorkSheet- Columns: "+ cols[j]);\r
123                         }\r
124                 }\r
125         }\r
126         \r
127         public static void main(String[] args){\r
128                 displayWorkSheetInfo();\r
129         }\r
130 }\r