# HG changeset patch # User Jeff Hammel # Date 1273170203 25200 # Node ID c80d44e5ca413dd6d1ed77a92bce75685893fd1a # Parent 543d08958b6762d2ec26c7a4eadea108e7b1278c flush out new() function diff -r 543d08958b67 -r c80d44e5ca41 profilemanager/manager.py --- a/profilemanager/manager.py Thu May 06 11:06:59 2010 -0700 +++ b/profilemanager/manager.py Thu May 06 11:23:23 2010 -0700 @@ -31,12 +31,28 @@ ### (public) API - def new(self, name): + def new(self, name, directory=None, hash=True): """ generate a new clean profile - name: name of the profile to generate + - directory: where to create the profile [DEFAULT: relative to profiles.ini] + - hash: whether to generate a a random hash tag """ - raise NotImplementedError + + # path to the profile directory + dirname = name + if hash: + dirname = '%s.%s' % self.hash() + if not directory: + directory = self.profile_dir + dirname = os.path.join(directory, dirname) + + # create directory + # TODO: (optionally) pre-populate the directory a la FF + os.mkdir(dirname) + + # return the directory name + return dirname def list(self, directories=False): """