Log Message: |
Initial commit of Shindig Gadget Container JavaScript and Gadget Server.
Includes:
* Gadget Container JavaScript. Code embedded into an arbitrary web page
enabling it to render and manage Gadgets.
+ Support for rendering using gmodules.com or a Shindig Gadget Server
+ Basic IFPC (gadget <-> container communication) support via inclusion
of Google IFPC library
+ Simple layout management: render in DIV (StaticLayoutManager);
render multiple Gadgets left-aligned in DIV (FloatLeftLayoutManager)
+ UserPrefs support through JS interface
+ Cookie-based UserPrefs implementation
+ _IG_SetTitle container-side support
+ _IG_AdjustIframeHeight container-side support
+ Sample pages demonstrating all the above functionality
* Gadget Server (written in Java). Web server that processes Gadget
requests, parsing their spec XML, processing it through a workflow
of core and extension (<Require>/<Optional>) Features, and serializing
output for rendering the Gadget to the end user.
+ Core server implementation constructing processing workflows out of
GadgetFeature objects providing various feature support
+ GadgetFeature interface providing core extensibility mechanism for
the Gadgets platform; extenders implement GadgetFeature and register
their implementation with GadgetFeatureRegistry
+ Gadget spec XML parser
+ Simple caching API with in-memory Map-based implementations as samples
+ Remote content (eg. HTTP) fetcher interface
+ Basic java.net-based RemoteContentFetcher implementation
+ "Hangman" variable substitution support (eg. __MSG_foo__), including BIDI,
MSG (message bundles) and UP (user prefs) type variables
+ Early JavaScript-based Feature support through JsLibrary* classes
+ Content proxy including JSON support
* A handful of tests for various Server components.
* Maven build support.
This submission represents significant contributions by:
fargo@google.com, etnu@google.com, dharkness@google.com,
jyang@google.com, wangz@google.com, dcoker@google.com
Much more to come!
|