1 2011-04-11 Ben Konrath <ben@bagu.org>
3 Change 'Demo' naming convention to 'Document'.
5 This is just a rename refactor with no functional changes to the code.
7 * src/main/java/org/glom/web/client/ClientFactory.java:
8 * src/main/java/org/glom/web/client/ClientFactoryImpl.java:
9 * src/main/java/org/glom/web/client/OnlineGlom.java:
10 * src/main/java/org/glom/web/client/OnlineGlomService.java:
11 * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
12 * src/main/java/org/glom/web/client/activity/DocumentSelectionActivity.java:
13 * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java:
14 * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
15 * src/main/java/org/glom/web/client/place/DocumentSelectionPlace.java:
16 * src/main/java/org/glom/web/client/ui/DocumentSelectionView.java:
17 * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.java:
18 * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.ui.xml:
19 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
21 2011-04-08 Ben Konrath <ben@bagu.org>
23 Remove FIXME from safeLongToInt() method.
25 Libglom uses longs on 32-bit and 64-bit platforms so it's ok to use
28 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
30 2011-04-08 Ben Konrath <ben@bagu.org>
32 Display an error if no glom documents are found in the specified directory.
34 * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
35 * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
36 * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
37 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
39 2011-04-08 Ben Konrath <ben@bagu.org>
41 Add copyright header to one more file ... oops.
43 * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
45 2011-04-08 Ben Konrath <ben@bagu.org>
47 Add copyright header to files without it.
49 * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
50 * src/main/java/org/glom/web/client/place/DemoSelectionPlace.java:
51 * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
52 * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
53 * src/main/java/org/glom/web/shared/ColumnInfo.java:
54 * src/main/java/org/glom/web/shared/GlomField.java:
56 2011-04-08 Ben Konrath <ben@bagu.org>
58 Add support for accessing multiple glom documents in the servlet.
60 This completes the demo selection functionality.
62 * src/main/java/org/glom/web/client/OnlineGlomService.java: Add
63 document title to methods.
64 * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
65 document title to methods.
66 * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
67 Set browser window title when the activity starts. Correct name of
68 document title variable.
69 * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
70 Set browser window title when the activity starts. Set the table
71 selector change handler after table selector has been set. Clear the
72 OnlineGlomView when the activity has been stopped.
73 * src/main/java/org/glom/web/client/place/OnlineGlomPlace.java: Use the
74 document title as the place token. Use "#Document:" instead of
75 "#OnlineGlomPlace:" in the URL.
76 * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.ui.xml:
77 Change heading to "Online Glom"
78 * src/main/java/org/glom/web/client/ui/LayoutListView.java: Use
79 document title in RPC methods.
80 * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Remove
81 setDocumentTitle() method. Add clear() method.
82 * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: Remove
83 setDocumentTitle() method. Implement clear() method which removes the
84 change handler on the ListBox, clears the ListBox and clears the
86 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
87 Implement methods with document title. Keep track for the configured
88 glom documents and their corresponding JDBC configurations in a hash
89 table. This information is retrieved using the document title as the
90 key in the hash table.
91 * src/main/java/org/glom/web/shared/GlomDocument.java: Remove
92 document title field as it's no longer needed.
94 2011-04-08 Ben Konrath <ben@bagu.org>
96 Update the Eclipse JDT configuration.
98 * .settings/org.eclipse.jdt.ui.prefs: Automatically add comments to new
99 methods. Automatically add the copyright header to new files.
101 2011-04-05 Ben Konrath <ben@bagu.org>
103 Add new page for demo selection.
105 This patch adds all the components required to view and start an
106 OnlineGlom demo by clicking on the desired hyperlink. The user is
107 able to return to the demo selection page with the browser's back
108 button. I still need to modify the servlet to work with multiple
109 documents so all demo links will load the file defined in the
110 OnlineGlom.properties.
112 * .gitignore: Add .gwt which holds the error log for the GWT UiBuidler.
113 This is only useful during development so we don't need to save it.
114 * src/main/java/org/glom/web/client/ClientFactory.java: Add method to
115 get a reference to the DemoSelectionView.
116 * src/main/java/org/glom/web/client/ClientFactoryImpl.java: Implement
117 method to get a reference to the DemoSelectionView.
118 * src/main/java/org/glom/web/client/OnlineGlom.java: Change the
119 default view to DemoSelectionView.
120 * src/main/java/org/glom/web/client/OnlineGlomService.java: Add method
121 to get glom document titles for glom files in a hard-coded directory.
122 * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
123 method to get glom document titles for glom files in a hard-coded
125 * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
126 Presenter for DemoSelectionView.
127 * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java: Update
128 for DemoSelectionView.
129 * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
130 Update for DemoSelectionView.
131 * src/main/java/org/glom/web/client/place/DemoSelectionPlace.java:
132 Basic 'Place' implementation for the DemoSelectionView.
133 * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
134 The interface for the DemoSelectionView.
135 * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
136 The implementation of the DemoSelectionView.
137 * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.ui.xml:
138 The GWT UiBuilder xml file used in DemoSelectionViewImpl.
139 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
140 implementation of method to get glom document titles for glom files
141 in a hard-coded directory.
142 * src/main/webapp/OnlineGlom.html: Remove link to CSS file as it's
143 on longer being used.
144 * src/main/webapp/glom.png: Glom logo.
146 2011-04-05 Ben Konrath <ben@bagu.org>
148 Move RPC code from OnlineGlomViewImpl to OnlineGlomActivity.
150 This is the forth and final commit of a refactor that will allow
151 OnlineGlom to be used with multiple documents.
153 * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
154 Move RPC code from OnlineGlomViewImpl to this class.
155 * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Add methods
157 * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: Move
158 RPC code to the presenter class (the P in MVP).
160 2011-04-04 Ben Konrath <ben@bagu.org>
162 Start moving the existing OnlineGlom code to MVP.
164 This work is based on the GWT MVP framework that is documented here:
166 https://code.google.com/webtoolkit/doc/2.2/DevGuideMvpActivitiesAndPlaces.html
168 This is the third commit of a refactor that will allow OnlineGlom to
169 be used with multiple documents.
171 * src/main/java/org/glom/web/client/ClientFactory.java: New file.
172 Interface for client factory which is used to get instances of various
173 classes throughout the app.
174 * src/main/java/org/glom/web/client/ClientFactoryImpl.java: New file.
175 Implementation of client factory.
176 * src/main/java/org/glom/web/client/OnlineGlom.java: Add code to
177 initialize the MVP framework.
178 * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
179 New file. Activity manager for the main container widget. This is the
181 * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java: New file.
182 Maps place (URL) to its corresponding activity.
183 * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
184 New file. This is just a place holder for a generated file.
185 * src/main/java/org/glom/web/client/place/OnlineGlomPlace.java:
186 New file. Represents the URL for the main Online Glom app.
187 * src/main/java/org/glom/web/client/ui/LayoutListView.java: Update
188 for changes in LayoutListViewImpl.
189 * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Create
190 interface for View. Move code to OnlineGlomViewImpl class.
191 * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: New
192 file. Implementation of OnlineGlomView.
193 * src/main/resources/org/glom/web/OnlineGlom.gwt.xml: Add Activity and
194 Place resources. Use ClientFactoryImpl by default.
196 2011-04-04 Ben Konrath <ben@bagu.org>
198 Move View classes to their own package.
200 This is the second commit of a refactor that will allow OnlineGlom to
201 be used with multiple documents.
203 * src/main/java/org/glom/web/client/OnlineGlom.java:
204 * src/main/java/org/glom/web/client/ui/LayoutListView.java:
205 * src/main/java/org/glom/web/client/ui/OnlineGlomView.java:
207 2011-04-02 Ben Konrath <ben@bagu.org>
209 Move UI code from the main module to its own class.
211 This is the first commit of a refactor that will allow OnlineGlom to be
212 used with multiple documents.
214 * src/main/java/org/glom/web/client/LayoutListView.java: Update
215 references to OnlineGlom to OnlineGlomView.
216 * src/main/java/org/glom/web/client/OnlineGlom.java: Move code to
217 OnlineGlomView and instantiate it here.
218 * src/main/java/org/glom/web/client/OnlineGlomView.java: New class that
219 represents the main OnlineGlomView with one document.
221 2011-04-01 Ben Konrath <ben@bagu.org>
223 Fix formatting of gwt.xml and add DTD.
225 * src/main/resources/org/glom/web/OnlineGlom.gwt.xml:
227 2011-03-30 Ben Konrath <ben@bagu.org>
229 Propperly convert gdkColor string to html colour string.
231 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
233 2011-03-28 Ben Konrath <ben@bagu.org>
235 Change implementation of OnlineGlomServiceImpl.getColumnInfoHorizontalAlignment().
237 This implementation matches
238 OnlineGlomServiceImpl.getColumnInfoGlomFieldType(), should perform better, is more
239 readable and is not tied to Swig.
241 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
243 2011-03-28 Ben Konrath <ben@bagu.org>
245 Use read-only checkboxes for boolean field types.
247 * src/main/java/org/glom/web/client/LayoutListView.java: Create columns
248 in the CellTable based on the field type. It currently only
249 distinguishes between boolean and text columns but I'll need to add
250 support for more types.
251 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Set the
252 column type in the ColumnInfo object. Add method to convert between the
253 glom field type enum in ColumnInfo and the glom field type in libglom.
254 * src/main/java/org/glom/web/shared/ColumnInfo.java: Add support for
256 * src/main/java/org/glom/web/shared/GlomField.java: Add support for
257 getting and setting booleans.
259 2011-03-25 Ben Konrath <ben@bagu.org>
261 Don't get the Date twice from the ResultSet.
263 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
265 2011-03-25 Ben Konrath <ben@bagu.org>
267 Cleanup code in the servlet.
269 * TODO: Remove item about row count. Add item about testing row count
270 query with large number of rows.
271 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Fix
272 spelling mistakes, change method parameter to be consistent with
275 2011-03-25 Ben Konrath <ben@bagu.org>
277 Add server side logging with the gwt-log library.
279 * .gitignore: Ignore the log file we're now producing.
280 * TODO: Add a couple TODO item for logging.
281 * pom.xml: Add gwt-log and log4j as a dependency.
282 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
283 logging of errors, warnings and some important info.
284 * src/main/resources/log4j.properties: New file to configure log4j.
286 2011-03-24 Ben Konrath <ben@bagu.org>
288 Add a disable button for the Details view.
290 * src/main/java/org/glom/web/client/LayoutListView.java:
292 2011-03-22 Ben Konrath <ben@bagu.org>
294 Use a count query to get the number of rows for the list view pager.
296 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
298 2011-03-22 Ben Konrath <ben@bagu.org>
300 Add more TODO information about CellTable pager positioning.
304 2011-03-19 Ben Konrath <ben@bagu.org>
306 Add TODO item about CellTable pager positioning.
310 2011-03-18 Ben Konrath <ben@bagu.org>
312 Remove unneeded GlomFieldColumn class.
314 This is just a small code cleanup.
316 * src/main/java/org/glom/web/client/LayoutListView.java:
318 2011-03-18 Ben Konrath <ben@bagu.org>
320 Use cursor mode in the query that gets data for the list view.
322 I still need to fix the potential memory problem when getting the row
323 count for the list view.
325 * TODO: Add note about testing memory usage with large data sets. Add
326 item about fixing row counting with large data sets.
327 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Put the
328 PostgreSQL JDBC driver into cursor mode when getting data for the
331 2011-03-15 Ben Konrath <ben@bagu.org>
333 Remove the GWT Container from the Eclipse build classpath.
335 The GWT dependencies are set by Maven so this isn't needed.
339 2011-03-15 Murray Cumming <murrayc@murrayc.com>
341 Added some earlier mockups to git, but not to the tarball dist.
343 * mockups/: Added some mockups from 2010-02 by Daniel Borgmann for
344 Openismus. These hopefully show how we might structure the HTML so that
345 it can be styled easily with CSS. However, we probably need to adapt them
346 for the CSS structure that GWT dictates for common widgets.
348 2011-03-14 Ben Konrath <ben@bagu.org>
350 Locate OnlineGlom.properties using the ServletContext.
352 This is required to be able to locate the file in the deployed servlet.
354 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
355 Configure the database and glom document in in a helper method so
356 that the ServletContext can be used to locate OnlineGlom.properties.
357 * src/main/webapp/WEB-INF/OnlineGlom.properties: Moved from
358 src/main/webapp. This is the proper location for .properites files.
360 2011-03-12 Ben Konrath <ben@bagu.org>
362 Add note to README about why we're compiling down to obfuscated JavaScript.
366 2011-03-11 Ben Konrath <ben@bagu.org>
368 Use properties file to configure servlet.
370 This allows people to change the glom file path, db username and db
371 password without recompiling the code.
373 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
374 * src/main/webapp/OnlineGlom.properties:
376 2011-03-11 Ben Konrath <ben@bagu.org>
378 Use table fields in layout list view if the layout list is not defined.
380 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
381 Manually create a LayoutFieldVector for the query builder using the
382 table fields when a layout list is not defined in the glom file.
384 2011-03-11 Ben Konrath <ben@bagu.org>
386 Only show FIXME string for images when there's an image.
388 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Also included
389 in this change are some small code cleanups.
391 2011-03-11 Ben Konrath <ben@bagu.org>
393 Set text for fields with TYPE_IMAGE and TYPE_INVALID to avoid NPEs.
395 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
397 2011-03-11 Ben Konrath <ben@bagu.org>
399 Correctly set the index of the default table.
401 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
402 Correctly set the index of the default table. Add commented out example
405 2011-03-10 Ben Konrath <ben@bagu.org>
407 Add comment to pom.xml about the previous change.
409 * pom.xml: Add comment about the deployment issue so that it's obvious
410 why java-libglom is set to the provided scope.
412 2011-03-10 Ben Konrath <ben@bagu.org>
414 Change java-libglom dependency from compile to provided in pom.xml.
416 Since java-libglom uses jni it can only be loaded once and therefore
417 must be placed in $CATALINA_HOME/lib and not included in each war.
418 This directory is defined as /usr/share/tomcat6/lib/ on Ubuntu 10.04.
419 More information about this issue can be found in the Tomcat 6 release
420 notes in the "JNI Based Applications" section:
422 http://tomcat.apache.org/tomcat-6.0-doc/RELEASE-NOTES.txt
424 * README: Remove note about this issue. Deployment info should really
425 be on the wiki anyway so I'll add it right now.
426 * pom.xml: Change java-libglom dependency from compile to provided so
427 that it's copied in to the packaged war.
429 2011-03-09 Ben Konrath <ben@bagu.org>
431 Change to using a neutral locale for currency, date and time formatting.
433 This solves the problem of currency values being represented without a
434 space between the currency code and the number (e.g. "EUR5.89" is now
435 represented as "EUR 5.89"). More work is required when we implement
436 a locale preference setting.
438 * TODO: Add note about currency formatting issues with different
440 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Change
441 to using the neutral ROOT locale.
443 2011-03-09 Ben Konrath <ben@bagu.org>
445 Add support for currency codes that are not ISO 4217 codes.
447 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Use
448 the currency code defined in the glom file when it's not 3 characters
449 long or when Java doesn't recognize the string as an ISO 4217 code.
451 2011-03-08 Ben Konrath <ben@bagu.org>
453 Remove test classes, launch configurations and configuration.
455 The test stuff was getting in the way when creating the war. To make
456 the war file you can now do 'mvn clean package'. The packaged war file
457 will be in the target directory.
459 * .classpath: Remove unused classpathentry for tests and i18n.
460 * pom.xml: Remove junit.jar dependency. Properly use gwt.version
461 property. Don't run test or i18n goals when packaging the war.
462 * src/main/webapp/WEB-INF/web.xml: Add xml name space. Correct
467 * OnlineGlomTest-dev.launch:
468 * OnlineGlomTest-prod.launch:
469 * src/test/java/org/glom/web/client/GwtTestOnlineGlom.java:
470 * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml:
472 2011-03-07 Ben Konrath <ben@bagu.org>
474 Update gwt-maven plugin to 2.2.0 and fix other configuation problems.
476 These fixes allow me to use 'mvn deploy' to create the war file.
478 * .classpath: This generated config has been updated by Eclipse. This
479 change was probably triggered by me updating from Eclipse 3.6.1 to
481 * .gitignore: Add entry to ignore the directory
482 src/main/webapp/WEB-INF/deploy. This directory is generated by Eclipse.
483 * .project: The generated config has been updated by Eclipse. This
484 change was probably triggered by me updating from Eclipse 3.6.1 to
486 * .settings/com.google.appengine.eclipse.core.prefs: Add empty config
487 so that Eclipse doesn't complain
488 * pom.xml: Update to gwt-maven-plugin 2.2.0.
489 * src/test/java/org/glom/web/client/GwtTestOnlineGlom.java: Move from
490 'tests' directory to 'client' directory. This is the new
491 gwt-maven-plugin convension.
492 * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml: Correctly
493 refer to org.glom.web.OnlineGlom gwt module and OnlineGlomServiceImpl.
495 2011-03-07 Ben Konrath <ben@bagu.org>
497 Add support for horizontal alignment in the LayoutList columns.
499 * TODO: Remove item about horizontal alignment. Add item about
500 improvements to ColumnInfo.
501 * src/main/java/org/glom/web/client/LayoutListView.java: Set horizontal
502 alignment on the columns. Use ColumnInfo RPC object get the column
503 title and horizontal alignment.
504 * src/main/java/org/glom/web/client/OnlineGlom.java: Update
505 LayoutListView creation with ColumnInfo RPC object.
506 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Create
507 a ColumnInfo object for every LayoutList columnn. Convert the
508 FieldFormatting.HorizontalAlignment to the correct
509 ColumnnInfo.HorizontatlAlignment with the new
510 getColumnInfoHorizontalAlignment helper method.
511 * src/main/java/org/glom/web/shared/ColumnInfo.java: New RPC object
512 to encapsulate column information like alignment and title. This
513 could be used to set the colour instead of on a per cell field basis.
514 * src/main/java/org/glom/web/shared/LayoutListTable.java: Replace
515 column title storage and retrieval with ColumnInfo.
517 2011-03-04 Ben Konrath <ben@bagu.org>
519 Add support for column sorting.
521 * src/main/java/org/glom/web/client/LayoutListView.java: Change
522 AsynDataProvider to be an anonymous inner class. Use new
523 getSortedTableData RPC method when column sort is requested. Set all
524 columns sortable and add an AsyncHandler to activate sorting in the
526 * src/main/java/org/glom/web/client/OnlineGlomService.java: Add new
527 method getSortedTableData(). Cleanup other method signatures.
528 * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
529 new method getSortedTableData(). Cleanup other method signatures.
530 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
531 Implement getSortedTableData() and getTableData() methods by using a
532 private helper method with the appropriate parameters filled in. Use
533 user supplied sort clause when supplied, otherwise fall back to
534 sorting by the primary key. Move destroy() method to be underneath
535 constructor for readability. Cleanup comments.
537 2011-03-03 Ben Konrath <ben@bagu.org>
539 Add support for colour text and colour backgrounds to the layout list cells.
541 Only the cell backgrounds are coloured which leaves a gap between the
542 cells that isn't coloured. I need to figure out a way to set
543 'style=background-colour:' on the whole column rather than just the
546 * TODO: Add a note about colouring the background of the whole column.
547 * src/main/java/org/glom/web/client/LayoutListView.java: Add a custom
548 column type (GlomFieldColumn) and a custom cell type (GlomFieldCell) to
549 render the coloured text and backgrounds. Use GlomField[] for the row type.
550 * src/main/java/org/glom/web/client/OnlineGlomService.java: Use GlomField[]
552 * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Use
553 GlomField[] for the row type.
554 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Use
555 GlomField[] for the row type. Set the text, text colour and background
556 colour in the GlomField objects as specified in the glom document. Add
557 method to convert from Gdk::Color to HTML colour string. Cleanup comments.
558 * src/main/java/org/glom/web/shared/GlomField.java: New file to encapulate
559 the glom field text, foreground colour and background colour.
561 2011-03-02 Ben Konrath <ben@bagu.org>
563 Don't display hidden tables in the combo box.
565 * src/main/java/org/glom/web/client/OnlineGlom.java: Update code to use
567 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
568 code to ignore hidden tables using ArrayLists for the table names and
570 * src/main/java/org/glom/web/shared/GlomDocument.java: Change tableTitles and
571 tableNames to use ArrayLists instead of String[]. Update getter and setter
574 2011-03-01 Ben Konrath <ben@bagu.org>
576 Add support for Date and Time number types.
578 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
579 Implement formatting for Date and Time values. Change the default glom
580 file to small business example.
582 2011-03-01 Ben Konrath <ben@bagu.org>
584 Add support for formatting glom types as specified in the glom file.
586 Formatting isn't finished yet - I still need to add support for Date
589 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
590 formatting support for TYPE_TEXT, TYPE_BOOLEAN and TYPE_NUMERIC. Remove
591 checks for null values in JDBC cleanup code and catch all exceptions
592 instead of just SQLExceptions.
593 * src/main/java/org/glom/web/shared/LayoutListTable.java: Fix incorrect
596 2011-03-01 Ben Konrath <ben@bagu.org>
598 Use GWT 2.2.0 instead of 2.1.1.
600 * pom.xml: Change GWT version numbers.
602 2011-03-01 Ben Konrath <ben@bagu.org>
604 A few small code cleanups.
606 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Remove
608 * src/main/java/org/glom/web/shared/GlomDocument.java: Remove
609 unnecessary object creation in constructor.
610 * src/main/java/org/glom/web/shared/LayoutListTable.java: Remove
611 unnecessary object creation in constructor.
613 2011-02-28 Ben Konrath <ben@bagu.org>
615 Add file for TODO list.
619 2011-02-18 Ben Konrath <ben@bagu.org>
621 Enable the CellTable Pager when more than 20 rows need to be viewed.
623 The Pager will automatically become active when the results are larger
624 than the CellTable size which is currently set to 20 lines.
626 * src/main/java/org/glom/web/client/LayoutListView.java: Correct class
627 name on debug statment in RPC call in LayoutListDataProvider, add
628 numRows parameter to LayoutListView constructor, propperly set rowCount
630 * src/main/java/org/glom/web/client/OnlineGlom.java: Correct class
631 name on debug statment in RPC call, use LayoutListTable object in RPC
632 calls, pass rowCount to LayoutListView.
633 * src/main/java/org/glom/web/client/OnlineGlomService.java: Change
634 getLayoutListHeaders to getLayoutListTable and return LayoutListTable
636 * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Update
637 interface for changes in OnlineGlomService.
638 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Change
639 getLayoutListHeaders() to getLayoutListTable() and return
640 LayoutListTable. Using this object allows me to pass other information
641 about the LayoutList like the expected number of rows in the result set.
642 The Connection object from the connection pool is now propperly closed.
643 Only the requested number of lines are returned to the client in
645 * src/main/java/org/glom/web/shared/LayoutListTable.java: Move from
646 GlomTable and add columnTitles and numRows.
648 2011-02-18 Ben Konrath <ben@bagu.org>
650 Use String arrays instead of GlomTable objects in GlomDocument GWT-RPC object.
652 This is a small performance boost. I'll use GlomTable to get the required
653 layoutlist information.
655 * src/main/java/org/glom/web/client/OnlineGlom.java:
656 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
657 * src/main/java/org/glom/web/shared/GlomDocument.java:
659 2011-02-18 Ben Konrath <ben@bagu.org>
661 Add option to turn off formatting in JDT formatter preferences.
663 * .settings/org.eclipse.jdt.core.prefs:
665 2011-02-18 Ben Konrath <ben@bagu.org>
667 Rename LayoutList to LayoutListView.
669 I'm working towards setting things up to easily use MVP when the time
672 * src/main/java/org/glom/web/client/LayoutListView.java: Rename from
674 * src/main/java/org/glom/web/client/OnlineGlom.java: Update
677 2011-02-17 Ben Konrath <ben@bagu.org>
679 Move LayoutListDataProvider class into LayoutList.java.
681 * src/main/java/org/glom/web/client/LayoutList.java:
683 2011-02-17 Ben Konrath <ben@bagu.org>
685 Rename RPC service classes from LibGlomService* to OnlineGlomService*.
687 * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Update
689 * src/main/java/org/glom/web/client/OnlineGlom.java: Update references.
690 * src/main/java/org/glom/web/client/OnlineGlomService.java: Rename
691 from LibGlomServer.java.
692 * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
693 Rename from LibGlomServiceAsync.java.
694 * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
695 Rename from LibGlomServiceImpl.java.
696 * src/main/webapp/WEB-INF/web.xml: Update configuration.
698 2011-02-17 Ben Konrath <ben@bagu.org>
702 * .settings/org.eclipse.jdt.core.prefs:
704 2011-02-17 Ben Konrath <ben@bagu.org>
706 Move GWT-RPC objects to shared package (where they should be).
708 * src/main/java/org/glom/web/client/LibGlomService.java: Update imports.
709 * src/main/java/org/glom/web/client/LibGlomServiceAsync.java: Update imports.
710 * src/main/java/org/glom/web/client/OnlineGlom.java: Update imports.
711 * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Update imports.
712 * src/main/java/org/glom/web/shared/GlomDocument.java: Move to
713 org.glom.web.shared package.
714 * src/main/java/org/glom/web/shared/GlomTable.java: Move to
715 org.glom.web.shared package.
716 * src/main/resources/org/glom/web/OnlineGlom.gwt.xml: Included shared
717 directory in compilation to javascript.
719 2011-02-16 Ben Konrath <ben@bagu.org>
721 Add sort clause to the sql query that grabs table information.
723 * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add sort clause
724 if one of the columns is a primary key.
726 2011-02-16 Ben Konrath <ben@bagu.org>
728 Disable generateAsync feature of gwt-maven.
730 The generated interface does not correctly match the methods in LibGlomService
731 and the generated singleton Util inner-class doesn't respect the servlet
734 * pom.xml: Turn off generateAsync feature.
735 * src/main/java/org/glom/web/client/LibGlomServiceAsync.java: Re-add file
736 with singleton Util inner-class.
738 2011-02-14 Ben Konrath <ben@bagu.org>
740 Add LGPL v3 licence notices.
742 Followed directions listed here:
743 http://www.gnu.org/licenses/gpl-howto.html
745 * COPYING: This file is a copy of the GPL v3.
746 * COPYING.LESSER: This file is a copy of the LGPL v3.
747 * src/main/java/org/glom/web/client/GlomDocument.java: Add licence
749 * src/main/java/org/glom/web/client/GlomTable.java: Add licence
751 * src/main/java/org/glom/web/client/LayoutList.java: Add licence
753 * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Add
755 * src/main/java/org/glom/web/client/LibGlomService.java: Add licence
757 * src/main/java/org/glom/web/client/OnlineGlom.java: Add licence
759 * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add
762 2011-02-14 Ben Konrath <ben@bagu.org>
764 Use ArrayList instead of Array in GWT-RPC calls.
766 Apparently this gives a slight performance boost to the compiled
769 * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Use ArrayList
771 * src/main/java/org/glom/web/client/LibGlomService.java: Use ArrayList instead
774 2011-02-14 Ben Konrath <ben@bagu.org>
776 Access data from a postgres db rather than the example glom file.
778 * .settings/com.google.gwt.eclipse.core.prefs: Change GWT setting to
779 compile down to obfuscated javascript.
780 * pom.xml: Add c3p0 and postgres JDBC libraries.
781 * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Return data
782 using a postgres db accessed through the c3p0 connection pooling library.
784 2011-02-14 Ben Konrath <ben@bagu.org>
786 Update Java formatter settings.
788 * .settings/org.eclipse.jdt.core.prefs: Change comment length to 120.
790 2011-02-02 Ben Konrath <ben@bagu.org>
792 Update Eclipse and Maven configs to in preparation for the postgres JDBC jar.
794 * .classpath: Change JRE to Java 1.6, remove GWT configuration as we're now
796 * .settings/com.google.gwt.eclipse.core.prefs: Don't copy gwt-servlet.jar to
797 the compiled webapp directory that Eclipse uses as we're using Maven now.
798 * .settings/org.eclipse.jdt.core.prefs: Change target platform to Java 1.6.
799 * .settings/org.eclipse.wst.common.project.facet.core.xml: Change Java version
801 * pom.xml: Format file, change target Java version to 1.6.
803 2011-02-02 Ben Konrath <ben@bagu.org>
805 Add information about a deployment related issue.
807 * README: Add Notes section with the problem outlined.
809 2011-02-02 Ben Konrath <ben@bagu.org>
811 Call Glom.libglom_deinit() when the servlet is shutdown.
813 * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add
814 Glom.libglom_deinit() to destroy() method.
816 2011-01-28 Ben Konrath <ben@bagu.org>
818 Use generated Util class to get the RPC Async interface.
820 * .settings/com.google.gwt.eclipse.core.prefs: Update generated Eclipse config
822 * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Use generated
823 getInstance() method to get a reference to the RPC Async interface.
824 * src/main/java/org/glom/web/client/OnlineGlom.java: Use generated
825 getInstance() method to get a reference to the RPC Async interface, remove
826 the now unused getLibGlomServiceProxy() method.
828 2011-01-27 Ben Konrath <ben@bagu.org>
830 Cleanup ChangeLog entry from previous commit.
832 * ChangeLog: Group logical changes together and add comments.
834 2011-01-25 Ben Konrath <ben@bagu.org>
836 Convert to gwt-maven project.
838 * .gitignore: Update for new project structure.
839 * README: New file with a link to the online documentation.
840 * pom.xml: The generated maven configuration file with some tweaks.
842 Add / update Eclipse settings. These files are a merge of the files that
843 were generated with the gwt-maven plugin and the files we were previously
847 * .settings/.jsdtscope:
848 * .settings/com.google.gdt.eclipse.core.prefs:
849 * .settings/com.google.gwt.eclipse.core.prefs:
850 * .settings/org.eclipse.jdt.core.prefs:
851 * .settings/org.eclipse.wst.common.component:
852 * .settings/org.eclipse.wst.common.project.facet.core.xml:
853 * .settings/org.eclipse.wst.jsdt.ui.superType.container:
854 * .settings/org.maven.ide.eclipse.prefs:
855 * OnlineGlomTest-dev.launch:
856 * OnlineGlomTest-prod.launch:
858 Java source files moved from the 'src' directory to the directory structure
860 * src/main/java/org/glom/web/client/GlomDocument.java:
861 * src/main/java/org/glom/web/client/GlomTable.java:
862 * src/main/java/org/glom/web/client/LayoutList.java:
863 * src/main/java/org/glom/web/client/LayoutListDataProvider.java:
864 * src/main/java/org/glom/web/client/LibGlomService.java:
865 * src/main/java/org/glom/web/client/OnlineGlom.java:
866 * src/main/java/org/glom/web/server/LibGlomServiceImpl.java:
868 Non-functional property file used for translations. I included this as
869 reminder that it's something I need to sort out.
870 * src/main/resources/org/glom/web/client/Messages.properties:
872 The OnlineGlom GWT config file moved from the 'src/org/glom/web' directory.
873 * src/main/resources/org/glom/web/OnlineGlom.gwt.xml:
875 The servlet configuration files moved from the 'war' directory.
876 * src/main/webapp/OnlineGlom.css:
877 * src/main/webapp/OnlineGlom.html:
878 * src/main/webapp/WEB-INF/web.xml:
880 Generated test files with most of the code commented out. I included these
881 so that it's easy to add tests when we're ready for them.
882 * src/test/java/org/glom/web/tests/GwtTestOnlineGlom.java:
883 * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml:
885 2011-01-25 Ben Konrath <ben@bagu.org>
887 Remove unused println.
889 * src/org/glom/web/server/LibGlomServiceImpl.java:
891 2011-01-25 Ben Konrath <ben@bagu.org>
893 Add project specific JDT settings.
895 * .settings/org.eclipse.jdt.core.prefs: Generated by Eclipse.
896 * .settings/org.eclipse.jdt.ui.prefs: Generated by Eclipse.
898 2011-01-25 Ben Konrath <ben@bagu.org>
900 Populate celltable with example data.
902 * src/org/glom/web/client/GlomDocument.java: Correct formatting.
903 * src/org/glom/web/client/GlomTable.java: Correct formatting.
904 * src/org/glom/web/client/LayoutList.java: Renamed from ListLayoutTable.java,
905 add LayoutListDataProvider to CellTable, add simpler pager (not working yet).
906 * src/org/glom/web/client/LayoutListDataProvider.java: New file,
907 asynchronously gets the example data.
908 * src/org/glom/web/client/LibGlomService.java: Add getTableData() method.
909 * src/org/glom/web/client/LibGlomServiceAsync.java: Add getTableData() method.
910 * src/org/glom/web/client/OnlineGlom.java: Allow service proxy object and
911 curently selected table to be retrieved by other widgets.
912 * src/org/glom/web/server/LibGlomServiceImpl.java: Correct formatting,
913 implement getTableData() in a hacky way. This method needs to be updated
914 to grab information from the database when database creating is
917 2011-01-20 Ben Konrath <ben@bagu.org>
919 Set table headers when table dropBox changes.
921 * src/org/glom/web/client/GlomDocument.java: Correct some method
923 * src/org/glom/web/client/LibGlomService.java: Add method
924 to get list layout field names.
925 * src/org/glom/web/client/LibGlomServiceAsync.java: Add method
926 to get list layout field names.
927 * src/org/glom/web/client/ListLayoutTable.java: New file - composite
928 widget for list layout table.
929 * src/org/glom/web/client/OnlineGlom.java: Add a change handler for
930 the table drop box and add new updateTable() method to asynchronously
931 get the layout list field names for the currently selected table.
932 * src/org/glom/web/server/LibGlomServiceImpl.java: Add server side
933 implementation of getLayoutListHeaders() method.
934 * war/OnlineGlom.html: Remove GlomWebApp div tag as it is not required.
936 2011-01-18 Ben Konrath <ben@bagu.org>
938 Make a listBox with table titles instead of the flexTable demo.
940 This is the start of something more useful.
942 * .classpath: Exclude a bunch of packages from the JVM that are
943 getting in the way of the Eclipse content assist.
944 * src/org/glom/web/client/GlomDocument.java:
945 * src/org/glom/web/client/GlomTable.java:
946 * src/org/glom/web/client/LibGlomService.java:
947 * src/org/glom/web/client/LibGlomServiceAsync.java:
948 * src/org/glom/web/client/OnlineGlom.java:
949 * src/org/glom/web/server/LibGlomServiceImpl.java:
950 * war/OnlineGlom.html:
951 * war/WEB-INF/web.xml:
953 211-01-13 Ben Konrath <ben@bagu.org>
955 Update to new java-libglom API.
957 * .gitignore: Ignore OnlineGlom.war.
958 * src/org/glom/web/server/TableNamesServiceImpl.java: Update to new java-libglom API.
960 2010-12-20 Ben Konrath <ben@bagu.org>
962 Add some basic style to the table listing.
964 * src/org/glom/web/client/OnlineGlom.java: Add style to the table
965 header, print useful error message on async callback failure.
966 * war/OnlineGlom.css: Add style for table header, remove defaults
967 provided by the Eclipse project wizard.
969 2010-12-20 Ben Konrath <ben@bagu.org>
971 Load example file from installed glom dir.
973 * src/org/glom/web/server/TableNamesServiceImpl.java: Use the Java API
974 provided by java-libglom to find the example file.
976 2010-12-20 Ben Konrath <ben@bagu.org>
978 Update Eclipse settings.
981 * .settings/com.google.gdt.eclipse.core.prefs:
982 * .settings/com.google.gwt.eclipse.core.prefs:
984 2010-12-17 Ben Konrath <ben@bagu.org>
988 * .classpath: New file.
989 * .gitignore: New file.
990 * .project: New file.
991 * .settings/com.google.gdt.eclipse.core.prefs: New file.
992 * .settings/com.google.gwt.eclipse.core.prefs: New file.
993 * src/org/glom/web/OnlineGlom.gwt.xml: New file.
994 * src/org/glom/web/client/GlomTable.java: New file.
995 * src/org/glom/web/client/OnlineGlom.java: New file.
996 * src/org/glom/web/client/TableNameService.java: New file.
997 * src/org/glom/web/client/TableNameServiceAsync.java: New file.
998 * src/org/glom/web/server/TableNamesServiceImpl.java: New file.
999 * war/OnlineGlom.css: New file.
1000 * war/OnlineGlom.html: New file.
1001 * war/WEB-INF/web.xml: New file.
1002 * war/images/glom.png: New file.