OGCE and Gateways
We develop and package software for use by Gateways.
Tagged release in http://ogce.svn.sourceforge.net/viewvc/ogce/tags/
Run “mvn clean install” in GTLAB directory.
Download includes a web server.
Start with “./startup.sh”, go to http://localhost:8080/GTLAB
What’s New with GTLAB?
Completely revised dependency graph processing.
Removed dependence on COG graph processing (still use the COG)
We can now support graphs of any tag you care to write.
Only support pipelines currently, not full DAGs
Redesigned to simplify writing new tags.
Extensive use of factories.
You no longer have to change core code to add a tag
Simplified process of creating new tags
4 Java files and 3 XML config files
Now can be done in one (mvn) step
Many new tags
Levels of Abstraction in GTLAB code
Note JSF is compatible with JSP, so you can mix and match.
YUI, Scriptaculous user interface goodies.
Google and Facebook APIs.
You can use prepackaged gadgets/portlets. You can develop new applications using existing tag libraries. You can make new tags for your services You can hack or steal the code
Tag Description MyProxy Gets a proxy credential (COG) JobSubmit Runs remote commands (COG) FileOperation Create, delete, list remote files and dirs (COG) FileTransfer GridFTP downloads, 3 rd party transfers (COG) XSubmissionOutput Format outputs of job and file operations ResourceDiscovery Clients for the RDS ResourcePrediction Clients for the RPS MyCommunityProxy Get and decorate TG Community credentials with Grid Shib Community Log Log use of TG Community credentials
These will work as gadgets, portlets, or standalone applications GTLAB Example Description MyProxyExample Get a credential and store in OGCE global proxy store. JobSubmitExamples Various examples showing how to submit a grid job and get output. Dashboard Examples Runs showq on Big Red, Cobalt, and Mercury and formats output. DirectoryBrowser Displays and downloads files on a remote host via GridFTP MultipleTaskExample Shows how to couple file transfers, operations, and
GTLAB Gadgets Code Base GTLAB Portlets Code Base Tomcat Web Server Tomcat Web Server + Portlet Container iGoogle Client Aggregator Compile and deploy into server Decorate with bridge and container jars, xml config files. GTLAB gadgets can also run as portlets with no code changes by using the JSF portlet bridge.
Making GTLAB Google Gadgets
A Gadget is a standalone application that is integrated into your personal iGoogle display.
They can run on your Web server.
You can use SSL/HTTPS
Google Gadgets have two versions
url : these wrap external applications with IFrames.
Not much real estate (but location, location, location)
Cookies manage state on gadgets from the same server but we need a way to integrate multiple independent servers.
Example Gadget Config File <?xml version="1.0" encoding="UTF-8" ?> <Module> <ModulePrefs title="MyProxy Gadget Example" scrolling="true" height="500"/> <Content type="url" href="http://…/:8080/GTLAB/examples/MyProxyExample.jsf"> </Content> </Module> Save this as MyProxy.xml and place in a Web accessible place.
Other Gadgets Providers Tomcat + GTLAB Gadgets Grid and Web Services (TeraGrid, OSG, etc) Other Gadgets Providers Social Network Services (Orkut, LinkedIn,etc) RSS Feed, Cloud, etc Services Gadget containers aggregate content from multiple providers. Content is aggregated on the client by the user. Nearly any web application can be a simple gadget (as Iframes)
Click “Add stuff” and then “Add feed or gadget”. Type the URL of your gadget.
GTLAB Applications as Google Gadgets: MOAB dashboard, remote directory browser, and proxy management.
Making GTLAB Gadgets into Portlets
Do all development in jsf_standalone.
When you are ready to convert:
mvn clean process-resources
mvn clean install
You will need to manually edit portlet.xml, group.xml, and layout.xml in GTLAB/portlet/src/main/webapp/WEB-INF/
Tomcat + Portlets and Container Grid and Web Services (TeraGrid, OSG, etc) Grid and Web Services (TeraGrid, OSG, etc) Grid and Web Services (TeraGrid, OSG, etc) HTML/HTTP SOAP/HTTP Common science gateway architecture. Aggregation is in the portlet container. Users have limited selections of components.
Various GTLAB applications deployed as portlets: Remote directory browsing, proxy management, and LoadLeveler queues.
What’s next for GTLAB?
OpenID and RSS client support
Many other client libraries
Google, Facebook, Amazon
Support for more complicated graphs
But really, we’re looking for interested developers and users.