From: <z3...@us...> - 2010-09-07 20:42:16
|
Revision: 315 http://spd.svn.sourceforge.net/spd/?rev=315&view=rev Author: z3po Date: 2010-09-07 20:42:10 +0000 (Tue, 07 Sep 2010) Log Message: ----------- completly seperated the CLI from the INTERFACE. much more scalable right now :) Modified Paths: -------------- branches/spd-ng/src/spdCLI.py branches/spd-ng/src/spdInterface.py Modified: branches/spd-ng/src/spdCLI.py =================================================================== --- branches/spd-ng/src/spdCLI.py 2010-09-07 16:08:32 UTC (rev 314) +++ branches/spd-ng/src/spdCLI.py 2010-09-07 20:42:10 UTC (rev 315) @@ -3,8 +3,8 @@ import string from optparse import OptionParser -class CLI(object): # {{{ - """This is the CLI Module. +class Cli(object): # {{{ + """This is the Cli Module. Resistance is Futile""" output = "normal" @@ -40,7 +40,7 @@ searchstring = raw_input("Please give your Searchstrings separated by whitespace") return searchstring # }}} - + def createEntry(self,columns): # {{{ Entry = {} print "Adding a new Entry to our passfile" @@ -50,12 +50,13 @@ return Entry # }}} - def getParser(self,version): # {{{ + def parseArgs(self,version,columns): # {{{ parser = OptionParser( "%prog [Options] [Keywords]", - description = "SPD - Simple Password Displayer", - version = version, - epilog = "With no parameters it will print out everything!") - + description = "SPD - Simple Password Displayer - CLI", + version = "SPD " + version, + epilog = """With no parameters it will print out everything! + Please report Bugs or Feature Request at http://spd.sourceforge.net""") + #parser.add_option( "-d", "--delete", # metavar="Keywords", # dest ="delete", @@ -81,9 +82,9 @@ default=False, help = "Add an Entry") - #parser.add_option( "--add-collumn", + #parser.add_option( "--add-column", # metavar="Collumn", - # dest = "addcollumn", + # dest = "addcolumn", # default=False, # help = "Add a Collumn to Passfile") # @@ -109,7 +110,13 @@ # dest = "passfile", # help = "do not use the confgured passfile but the one given here") - return parser + (options, args) = parser.parse_args() + + if options.add: + Entry = self.createEntry(columns) + return ["addEntry", Entry] + + return ["findPasswords", args] # }}} def main(self,options,args): # {{{ Modified: branches/spd-ng/src/spdInterface.py =================================================================== --- branches/spd-ng/src/spdInterface.py 2010-09-07 16:08:32 UTC (rev 314) +++ branches/spd-ng/src/spdInterface.py 2010-09-07 20:42:10 UTC (rev 315) @@ -4,7 +4,6 @@ import spdCore import spdCLI import string -from optparse import OptionParser version = "0.3-alpha" @@ -12,33 +11,28 @@ """The Interface Module. Connection between Output and Core.""" - clientmode = "CLI" - - def __init__(self,clientmode="CLI"): # {{{ + def __init__(self,version,clientmode="CLI"): # {{{ """init procedure""" + self.version = version + check = spdCheck.Check("spdInterface") del check if clientmode == 'CLI': - self.client = spdCLI.CLI() + self.client = spdCLI.Cli() self.core = spdCore.Core() # }}} - def findPasswords(self,searchString='%',interactive=False): # {{{ - """Find the passwords interactively or by searchlist handed. + def findPasswords(self,searchString='%'): # {{{ + """Find the passwords by searchlist handed. print the results in output format. - # searchlist: optional list of keywords to search for - # interactive: shall the interface ask for the keywords?""" + # searchlist: optional string or list of keywords to search for.""" - if not interactive: - if type(searchString).__name__ == 'list': - searchlist = searchString - else: - searchlist = string.split(searchString) + if type(searchString).__name__ == 'list': + searchlist = searchString else: - searchString = self.client.findPasswordsInteractive() searchlist = string.split(searchString) if len(searchlist) == 0: @@ -47,26 +41,19 @@ self.client.printPasswords(passdict) # }}} - def addEntry(self): # {{{ - Entry = self.client.createEntry(self.core.getColumns()) + def addEntry(self,Entry): # {{{ self.core.addEntry(Entry) # }}} - def main(self,version): # {{{ - parser = self.client.getParser(version) - - (options, args) = parser.parse_args() - - if options.add: - interface.addEntry() - - interface.findPasswords(args) + def main(self): # {{{ + function, value = self.client.parseArgs(self.version,self.core.getColumns()) + getattr(self, function)(value) # }}} # }}} -interface = Interface() -interface.main(version) +interface = Interface(version) +interface.main() # EOF This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |