Enterprise Griffon

1,665 views

Published on

Presented on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,665
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Enterprise Griffon

  1. 1. Enterprise Griffon James Williams Software Engineer, BT/Ribbit
  2. 2. Agenda •Basic Griffon Overview •Griffon's Plugin Architecture •MDI •Beyond SwingBuilder •Notifications •Databases •Printing •Deployment
  3. 3. If you missed the last session...
  4. 4. Boo!!!
  5. 5. Griffon Basics •Apache 2 Licensed •Inspired by Grails and SAF •Desktop framework for the Java platform •Extensible through plugins and addons
  6. 6. Griffon Basics •UIs done right •Composite UI builder can mix and match components •Common structure for all apps •Embraces MVC design
  7. 7. Plugins •Provide compile-time features •Directory structure is the same as applications •UI toolkits •Testing frameworks •Data services (db/web) •Addons
  8. 8. Addons •Supply run-time capabilities •Can decorate core features and components
  9. 9. Distributing Your Plugins ● griffon package-plugin ● Creates docs and zips the plugin ● griffon release-plugin ● Packages plugin and checks it into the griffon repo
  10. 10. Creating A Plugin Demo
  11. 11. Multi-Doc Plugin •Simplifies the process of creating tabbed interfaces •Creates a document state class to manage open and active documents •Creates actions for opening, closing, and saving documents
  12. 12. Beyond SwingBuilder
  13. 13. SwingXBuilder •Provides a builder for the SwingLabs components •The easiest way to give your apps some bling •Well supported when it comes to theming
  14. 14. MacWidgetsBuilder •OS X Java UI widgets •cross-platform •over 10 components
  15. 15. MacWidgetsBuilder
  16. 16. Demo
  17. 17. Notifications
  18. 18. Notifications ● Griffon (and Java) ● can use the system tray ● intercept webhook notifications ● can use Growl
  19. 19. What are Webhooks? ● Fluid interface for communication ● You already how to use it ● Just send an HTTP POST to a user-provided or generated URL
  20. 20. Notify.io •Users register with Notify.io •They provide their email addy to Notify.io enabled sites •Sites use webhooks to send notifications to their users
  21. 21. Growl •Slightly messy •Ubuntu and OS X work natively •Windows needs an additional install •No plugin available at this time
  22. 22. Demo
  23. 23. Databases •Rich database support •GSQL •MongoDB •Neo4J •CouchDB •and several others
  24. 24. Printing •Printing plugin simplifies printing for •TXT •RTF •HTML •and PDF files •Markup Builder + PDFRenderer for complex layouts •Some CSS layout support
  25. 25. Deployment ● Apps can be deployed as ● applets ● desktop ● webstart ● Some important considerations ● Non-swing UIs ● Sandbox issues
  26. 26. Installer Plugin •Creates app launchers for all major operating systems •Creates platform specific installers •Can be extended to conditionally include assets
  27. 27. Demo
  28. 28. Plugins mentioned ● rest ● tray-builder ● installer ● printing ● swingx-builder ● macwidgets-builder
  29. 29. Links Blog: http://jameswilliams.be/blog Twitter: @ecspike @theaviary (Griffon News) Griffon: http://griffon.codehaus.org

×