Monday, January 28, 2008

glite-api-wrapper v3

Yesterday I have released GAW v.3.

Most of the attention during this sprint was concentrated on the Catalog Manager. It has been slightly redesigned and improved. Now it is way much easier to use GAW, to support it and to extend it. Usage of the gLite LFC catalog became dramatically easier with this version of GAW.
Just a couple of examples:
#1 Changing LFC current directory to "/grid/dech"
CGLiteAPIWrapper::Instance().Init();
CCatalogManager * pCatalog( &CGLiteAPIWrapper::Instance().GetCatalogManager() );
gaw_lfc_cwd cwd;
cwd.m_dir = "/grid/dech";
pCatalog->Run( cwd );
#2 or retrieving the current LFC directory
string sRetVal;
gaw_lfc_pwd pwd;
pCatalog->Run( pwd, &sRetVal );
cout << "---> Current catalog directory: " << sRetVal << endl;
#3 or list current LFC directory to a container
LFCHelper::LFCFileInfoVector_t file_list;
gaw_lfc_ls ls;
ls.m_dir = "/grid/dech";
pCatalog->Run( ls, &file_list );
or to the stdout
gaw_lfc_sls ls;
ls.m_dir = "/grid/dgtest";
cout << "---> Listing directory: " << ls.m_dir << endl;
pCatalog->Run( ls, &cout );
more examples one can fined here

Also, this version of GAW got a redesigned XML configuration file with a schema.
Additionally the version includes a number of cosmetic changes and an updated source documentation.

supported features
  • Workload Management System operations:
    • job submission - normal, DAG and parametric jobs (gLite WMProxy API),
    • smart look-up algorithm for WMP-Endpoints,
    • job status querying (gLite LB API),
    • job output retrieving (Globus GridFTP).
  • File Catalog operations (gLite/LCG LFC API):
    • smart session manager,
    • set/query the current working catalog directory,
    • list files, directories and their stats,
    • add/remove files in a catalog namespace,
    • add/remove directories,
    • add/remove replicas from a given file.
  • An executive logging.
  • Support of an external xml configuration file with according XML schema.

Friday, January 11, 2008

ROOT HTML documentation for RGLite plug-in

I've just finished the ROOT style HTML documentation for RGLite plug-in.
Only one comment: it takes really a lot more time to write, compile and support a good documentation with the ROOT Automatic HTML Documentation style than with doxygen, for example.
Now I love doxygen much more than I used to.

Anyway, the first draft of the RGLite documentation is ready.

Tuesday, January 8, 2008

New XML schema for the GAW configuration

glite-api-wrapper (GAW) has just gotten a new XML Schema for the configuration file, starting from r1630. Documentation pages could be found here (a XML Schema documentation).

BTW, from now on we use a Xerces-C DOMBuilder interface to validate and parse GAW configurations.
DOMBuilder is an interface introduced by the W3C DOM Level 3.0 Abstract Schemas and Load and Save Specification. DOMBuilder provides the "Load" interface for parsing XML documents and building the corresponding DOM document tree from various input sources.