org.griphyn.cPlanner.parser
Class ConfigXmlParser

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by org.griphyn.cPlanner.parser.Parser
          extended by org.griphyn.cPlanner.parser.ConfigXmlParser
All Implemented Interfaces:
ContentHandler, DTDHandler, EntityResolver, ErrorHandler

public class ConfigXmlParser
extends Parser

This is the parsing class, used to parse the pool config file in xml format.

Version:
$Revision: 130 $
Author:
Gaurang Mehta gmehta@isi.edu, Karan Vahi vahi@isi.edu

Field Summary
private  GridFTPServer gftp
           
private  String m_key
           
private  String m_namespace
           
 PoolConfig m_pconfig
           
private  SiteInfo m_pool_info
           
static String SCHEMA_LOCATION
          The "not-so-official" location URL of the VDLx schema definition.
static String SCHEMA_NAMESPACE
          uri namespace
 
Fields inherited from class org.griphyn.cPlanner.parser.Parser
DEFAULT_PARSER_NAME, mAdjFName, mLocator, mLogger, mLogMsg, mParser, mProps, mTextContent, mTextString
 
Constructor Summary
ConfigXmlParser(PegasusProperties properties)
          Default Class Constructor.
ConfigXmlParser(String configFileName, PegasusProperties properties)
          Class Constructor intializes the parser and turns on validation.
 
Method Summary
 void endDocument()
          This is called automatically when the end of the XML file is reached.
 void endElement(String uri, String localName, String qName)
          An empty implementation is provided by DefaultHandler class.
 PoolConfig getPoolConfig()
          This class returns the reference to the PooConfig object containing information about all the pools.
 String getSchemaLocation()
          Helps the load database to locate the VDLx XML schema, if available.
private static void handleConfigTagEnd()
          Handles the end of the Xml files.
private  PoolConfig handleConfigTagStart()
           
private static void handleGridFtpBandwidthTagEnd()
           
private  void handleGridFtpBandwidthTagStart(SiteInfo pinfo, Attributes attrs)
          sk added function to handle gridftpbandwidth tag
private  void handleGridFtpTagEnd()
          sk made changes to the following function to set GRIDFTPServer instead of setting it in fn handleGridFtpTagStart()
private  void handleGridFtpTagStart(SiteInfo pinfo, Attributes attrs)
           
private static void handleJobManagerTagEnd()
          Handles the end of the JobManager Tag
private static void handleJobManagerTagStart(SiteInfo pinfo, Attributes attrs)
          This method handles the start of a jobmanager tag.
private static void handleLRCTagEnd()
          Handles the end of the LRC Tag
private static void handleLRCTagStart(SiteInfo pinfo, Attributes attrs)
           
private static void handlePoolTagEnd()
          Handles the end of the pool tag.
private  SiteInfo handlePoolTagStart(PoolConfig pcfg, Attributes attrs)
           
private  void handleProfileTagEnd(SiteInfo pinfo)
          Handles the end of the Profile tag.
private  void handleProfileTagStart(SiteInfo pinfo, Attributes attrs)
           
private  void handleWorkDirectoryTagEnd(SiteInfo pinfo)
          This method handles the Workdirectory tg end.
private static void handleWorkDirectoryTagStart(SiteInfo pinfo, Attributes attrs)
          Handles the WorkDirectory Tag Start.
 void startElement(String uri, String localName, String qName, Attributes attrs)
          An empty implementation is provided by DefaultHandler of ContentHandler.
 void startParser(String configxml)
          Start the parser.
 
Methods inherited from class org.griphyn.cPlanner.parser.Parser
characters, ignoreWhitespace, setDocumentLocator, setParserFeature, setSchemaLocations, testForFile
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SCHEMA_LOCATION

public static final String SCHEMA_LOCATION
The "not-so-official" location URL of the VDLx schema definition.

See Also:
Constant Field Values

SCHEMA_NAMESPACE

public static final String SCHEMA_NAMESPACE
uri namespace

See Also:
Constant Field Values

m_pconfig

public PoolConfig m_pconfig

m_pool_info

private SiteInfo m_pool_info

m_namespace

private String m_namespace

m_key

private String m_key

gftp

private GridFTPServer gftp
Constructor Detail

ConfigXmlParser

public ConfigXmlParser(PegasusProperties properties)
Default Class Constructor.

Parameters:
properties - the PegasusProperties to be used.

ConfigXmlParser

public ConfigXmlParser(String configFileName,
                       PegasusProperties properties)
Class Constructor intializes the parser and turns on validation.

Parameters:
configFileName - The file which you want to parse
properties - the PegasusProperties to be used.
Method Detail

startParser

public void startParser(String configxml)
Description copied from class: Parser
Start the parser. This starts the parsing of the file by the parser.

Specified by:
startParser in class Parser
Parameters:
configxml - the path to the XML file you want to parse.

endDocument

public void endDocument()
Description copied from class: Parser
This is called automatically when the end of the XML file is reached.

Specified by:
endDocument in interface ContentHandler
Specified by:
endDocument in class Parser

endElement

public void endElement(String uri,
                       String localName,
                       String qName)
Description copied from class: Parser
An empty implementation is provided by DefaultHandler class. This method is called automatically by the Sax parser when the end tag of an element comes in the xml file. Any parser class should implement this method

Specified by:
endElement in interface ContentHandler
Specified by:
endElement in class Parser

startElement

public void startElement(String uri,
                         String localName,
                         String qName,
                         Attributes attrs)
Description copied from class: Parser
An empty implementation is provided by DefaultHandler of ContentHandler. This method receives the notification from the sacks parser when start tag of an element comes. Any parser class must implement this method.

Specified by:
startElement in interface ContentHandler
Specified by:
startElement in class Parser

getSchemaLocation

public String getSchemaLocation()
Description copied from class: Parser
Helps the load database to locate the VDLx XML schema, if available. Please note that the schema location URL in the instance document is only a hint, and may be overriden by the findings of this method.

Specified by:
getSchemaLocation in class Parser
Returns:
a location pointing to a definition document of the XML schema that can read VDLx. Result may be null, if such a document is unknown or unspecified.

handleConfigTagStart

private PoolConfig handleConfigTagStart()
Returns:
PoolConfig Returns a new PoolConfig object when it encounters start of XML.
See Also:
PoolConfig

handlePoolTagStart

private SiteInfo handlePoolTagStart(PoolConfig pcfg,
                                    Attributes attrs)
                             throws Exception
Parameters:
pcfg - Takes the PoolConfig class.
attrs - Takes the atrributes returned in XML.
Returns:
SiteInfo returns the reference to the PooInfo ojject
Throws:
Exception
See Also:
SiteInfo, PoolConfig

handleProfileTagStart

private void handleProfileTagStart(SiteInfo pinfo,
                                   Attributes attrs)
                            throws Exception
Parameters:
pinfo - Poolinfo object that is to be populated
attrs - Attributes for the element
Throws:
Exception

handleLRCTagStart

private static void handleLRCTagStart(SiteInfo pinfo,
                                      Attributes attrs)
                               throws Exception
Parameters:
pinfo - Poolinfo object that is to be populated
attrs - Attributes for the element
Throws:
Exception

handleGridFtpTagStart

private void handleGridFtpTagStart(SiteInfo pinfo,
                                   Attributes attrs)
                            throws Exception
Parameters:
pinfo - Poolinfo object that is to be populated
attrs - Attributes for the element
Throws:
Exception

handleGridFtpBandwidthTagStart

private void handleGridFtpBandwidthTagStart(SiteInfo pinfo,
                                            Attributes attrs)
                                     throws Exception
sk added function to handle gridftpbandwidth tag

Parameters:
pinfo - Poolinfo object that is to be populated
attrs - Attributes for the element
Throws:
Exception

handleJobManagerTagStart

private static void handleJobManagerTagStart(SiteInfo pinfo,
                                             Attributes attrs)
                                      throws Exception
This method handles the start of a jobmanager tag.

Parameters:
pinfo - The PoolInfo object which will hold the jobmanager information
attrs - The attributes about the jobmanager tag returned from the XML.
Throws:
Exception
See Also:
SiteInfo

handleWorkDirectoryTagStart

private static void handleWorkDirectoryTagStart(SiteInfo pinfo,
                                                Attributes attrs)
                                         throws Exception
Handles the WorkDirectory Tag Start.

Parameters:
pinfo - Takes a SiteInfo object for which the work directory is.
attrs - Takes the attributes returned from the XML by the parser.
Throws:
Exception
See Also:
SiteInfo

handleConfigTagEnd

private static void handleConfigTagEnd()
Handles the end of the Xml files.


handlePoolTagEnd

private static void handlePoolTagEnd()
Handles the end of the pool tag.


handleProfileTagEnd

private void handleProfileTagEnd(SiteInfo pinfo)
                          throws RuntimeException
Handles the end of the Profile tag.

Parameters:
pinfo - PoolInfo object for which the profiles are collected.
Throws:
Exception
RuntimeException
See Also:
SiteInfo

handleLRCTagEnd

private static void handleLRCTagEnd()
Handles the end of the LRC Tag


handleGridFtpTagEnd

private void handleGridFtpTagEnd()
                          throws RuntimeException
sk made changes to the following function to set GRIDFTPServer instead of setting it in fn handleGridFtpTagStart()

Throws:
RuntimeException

handleGridFtpBandwidthTagEnd

private static void handleGridFtpBandwidthTagEnd()

handleJobManagerTagEnd

private static void handleJobManagerTagEnd()
Handles the end of the JobManager Tag


handleWorkDirectoryTagEnd

private void handleWorkDirectoryTagEnd(SiteInfo pinfo)
                                throws RuntimeException
This method handles the Workdirectory tg end.

Parameters:
pinfo - Takes the PoolInfo object.
Throws:
Exception
RuntimeException
See Also:
SiteInfo

getPoolConfig

public PoolConfig getPoolConfig()
This class returns the reference to the PooConfig object containing information about all the pools.

Returns:
returns a reference to the PoolConfig object which contains all the pools.
See Also:
PoolConfig


Copyright © 2007 The University of Southern California. All Rights Reserved.