diff -r cc26d1c27da5 -r d95d60ba16aa E5XML/DebuggerPropertiesHandler.py --- a/E5XML/DebuggerPropertiesHandler.py Mon Sep 13 09:06:38 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,167 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright (c) 2003 - 2010 Detlev Offenbach <detlev@die-offenbachs.de> -# - -""" -Module implementing the handler class for reading an XML project debugger properties file. -""" - -from .Config import debuggerPropertiesFileFormatVersion -from .XMLHandlerBase import XMLHandlerBase - -class DebuggerPropertiesHandler(XMLHandlerBase): - """ - Class implementing a sax handler to read an XML project debugger properties file. - """ - def __init__(self, project): - """ - Constructor - - @param project Reference to the project object to store the - information into. - """ - XMLHandlerBase.__init__(self) - - self.startDocumentSpecific = self.startDocumentDebuggerProperties - - self.elements.update({ - 'DebuggerProperties' : (self.startDebuggerProperties, self.defaultEndElement), - 'Interpreter' : (self.defaultStartElement, self.endInterpreter), - 'DebugClient' : (self.defaultStartElement, self.endDebugClient), - 'Environment' : (self.startEnvironment, self.endEnvironment), - 'RemoteDebugger' : (self.startRemoteDebugger, self.defaultEndElement), - 'RemoteHost' : (self.defaultStartElement, self.endRemoteHost), - 'RemoteCommand' : (self.defaultStartElement, self.endRemoteCommand), - 'PathTranslation' : (self.startPathTranslation, self.defaultEndElement), - 'RemotePath' : (self.defaultStartElement, self.endRemotePath), - 'LocalPath' : (self.defaultStartElement, self.endLocalPath), - 'ConsoleDebugger' : (self.startConsoleDebugger, self.endConsoleDebugger), - 'Redirect' : (self.startRedirect, self.defaultEndElement), - 'Noencoding' : (self.startNoencoding, self.defaultEndElement), - }) - - self.project = project - - def startDocumentDebuggerProperties(self): - """ - Handler called, when the document parsing is started. - """ - self.version = '' - - ################################################### - ## below follow the individual handler functions - ################################################### - - def endInterpreter(self): - """ - Handler method for the "Interpreter" end tag. - """ - self.project.debugProperties["INTERPRETER"] = self.buffer - - def endDebugClient(self): - """ - Handler method for the "DebugClient" end tag. - """ - self.project.debugProperties["DEBUGCLIENT"] = self.buffer - - def startEnvironment(self, attrs): - """ - Handler method for the "Environment" start tag. - """ - self.buffer = "" - self.project.debugProperties["ENVIRONMENTOVERRIDE"] = \ - int(attrs.get("override", "0")) - - def endEnvironment(self): - """ - Handler method for the "Environment" end tag. - """ - self.project.debugProperties["ENVIRONMENTSTRING"] = \ - self.unescape(self.buffer) - - def startRemoteDebugger(self, attrs): - """ - Handler method for the "RemoteDebugger" start tag. - """ - self.buffer = "" - self.project.debugProperties["REMOTEDEBUGGER"] = \ - int(attrs.get("on", "0")) - - def endRemoteHost(self): - """ - Handler method for the "RemoteHost" end tag. - """ - self.project.debugProperties["REMOTEHOST"] = self.buffer - - def endRemoteCommand(self): - """ - Handler method for the "RemoteCommand" end tag. - """ - self.project.debugProperties["REMOTECOMMAND"] = \ - self.unescape(self.buffer) - - def startPathTranslation(self, attrs): - """ - Handler method for the "PathTranslation" start tag. - """ - self.buffer = "" - self.project.debugProperties["PATHTRANSLATION"] = \ - int(attrs.get("on", "0")) - - def endRemotePath(self): - """ - Handler method for the "RemotePath" end tag. - """ - self.project.debugProperties["REMOTEPATH"] = self.buffer - - def endLocalPath(self): - """ - Handler method for the "LocalPath" end tag. - """ - self.project.debugProperties["LOCALPATH"] = self.buffer - - def startConsoleDebugger(self, attrs): - """ - Handler method for the "ConsoleDebugger" start tag. - """ - self.buffer = "" - self.project.debugProperties["CONSOLEDEBUGGER"] = \ - int(attrs.get("on", "0")) - - def endConsoleDebugger(self): - """ - Handler method for the "ConsoleDebugger" end tag. - """ - self.project.debugProperties["CONSOLECOMMAND"] = \ - self.unescape(self.buffer) - - def startRedirect(self, attrs): - """ - Handler method for the "Redirect" start tag. - """ - self.project.debugProperties["REDIRECT"] = \ - int(attrs.get("on", "1")) - - def startNoencoding(self, attrs): - """ - Handler method for the "Noencoding" start tag. - """ - self.project.debugProperties["NOENCODING"] = \ - int(attrs.get("on", "0")) - - def startDebuggerProperties(self, attrs): - """ - Handler method for the "DebuggerProperties" start tag. - - @param attrs list of tag attributes - """ - self.version = attrs.get('version', debuggerPropertiesFileFormatVersion) - - def getVersion(self): - """ - Public method to retrieve the version of the debugger properties. - - @return String containing the version number. - """ - return self.version