Header Header


JavaGAT logo

Java Grid Application Toolkit (JavaGAT) offers a set of coordinated, generic and flexible APIs for accessing grid services from application codes, portals, data managements systems, etc.

JavaGAT sits between grid applications and numerous types of grid middleware, such as Globus, Glite, SGE, SSH or Zorilla. JavaGAT lifts the burden of grid application programmers by providing them with a uniform interface that provides:

  • file operations (File, LogicalFile, RandomAccessFile, Endpoint)
  • file stream operations (FileInputStream, FileOutputStream)
  • job submission (ResourceBroker)
  • monitoring (Monitorable)
  • access to information services (AdvertService)

As a result, grid application programmers need only to learn a single API to obtain access to the entire grid. Due to its modular design, JavaGAT can easily be extended with support for other grid middleware layers.

The structure of JavaGAT is shown in the picture on the right.

JavaGAT design overview

The idea is that grid applications do not use grid middleware directly. Instead, the applications calls methods of the GAT API. The GAT engine dynamically "routes" the API calls to the correct grid middleware.

We have plugins (called adaptors) for many different grid middleware systems. The list of available adaptors can be found here. All adaptors are implemented in java, and libraries that are needed are included in the distribution. JavaGAT does not rely on any pre installed external packages or libraries.