Airavata Source Code & Developers Guide
Airavata source code is maintained using Apache Subversion version control.
Browse Airavata source repository in ViewVC.
The SVN location is Airavata SVN
Source Code
To check out the source code: svn co https://svn.apache.org/repos/asf/incubator/airavata/trunk/
- The source code is organized by major components into modules directory.
- The GFac-Core is the POJO style implementation of the Airavata Application Wrapper and Job management tool.
- GFac-Axis2 is a web service interface to GFac-Core developed in Axis2 Framework.
- XBaya-GUI is the desktop and JNLP webstartable interface to construct, execute and monitor workflows. XBaya provides a graphical programming abstraction over worklfow languages like BPEL.
- Workflow Interpreter is an axis2 web service which wraps XBaya to provide server side enactment capability.
- WS-Messenger is a web service messaging system used within Airavata for all service to service and end user communications.
- XRegistry is a registry services which provides a web service interface to a database of application, service and workflow deployment descriptions. XRegistry is developed using XSUL.
Developers Guide
Some coding practices:
- License Header: Always add the current ASF license header as described in ASF Source Header.
- Trailing Whitespaces: Remove all trailing whitespaces. Eclipse users can use Source->Cleanup option to accomplish this.
- Indentation: Use 4 space indents and never use tabs!
- Line wrapping: Use 120-column line width for Java code and Javadoc.
- Author Tags: Do not use Author Tags. The code is developed and owned by the community.
Eclipse Configuration Tips
Configure Eclipse Preferences
- Download Eclipse Formatting and Style Guides for Airavata Style Templates
- To add Formatter: Preferences > Java > Code Style > Formatter and import the airavata-formatting-preferences.xml downloaded in the previous step.
- To add Templates: Preferences > Java > Code Style > Code Templates and import the airavata-code-style-template.xml. This templates adds the ASF header and so on for new code.
Building code
See build instructions.