def __init__(self, name, settings, gerrit):
self.touched = False
+ self.gerrit = gerrit
self.name = name
self.dataset = {}
- self.create_path(self.name, gerrit)
- self.filename = ('%s.csv' % (self.determine_filename(self.name)))
- self.filemode = self.determine_filemode(self.filename, gerrit)
+ self.filename = ('%s.csv' % (self.determine_filename()))
+ self.directory = self.determine_directory()
+ self.create_path()
+ self.filemode = self.determine_filemode()
self.today = datetime.today()
self.email = {}
def __str__(self):
return self.name
- def create_path(self, filename, gerrit):
- print filename
- dir= os.path.dirname(filename)
- if dir != '':
- dir = os.path.join(gerrit.data_location, dir)
+ def determine_directory(self):
+ return os.path.join(self.gerrit.data_location, self.name)
+
+ def create_path(self):
+ if self.directory != '':
try:
- os.makedirs(dir)
- print 'Creating %s...' % dir
+ os.makedirs(self.directory)
+ print 'Creating %s...' % self.directory
except OSError:
pass
- def determine_filename(self, filename):
- return os.path.basename(filename)
+ def determine_filename(self):
+ return os.path.basename(self.name)
- def determine_filemode(self, filename, settings):
- if os.path.isfile('%s/%s' % (settings.data_location, filename)) == False:
+ def determine_filemode(self):
+ if os.path.isfile('%s/%s' % (self.gerrit.data_location, self.filename)) == False:
return 'w'
else:
return 'a'
def write_heading(fh, repo):
output_results(fh, 'data',',','repository',',')
- #fh.write('%s,%s,' % ('date', 'repository'))
- #sys.stdout.write('%s,%s,' % ('date', 'repository'))
for metric_counter, (name, metric) in enumerate(repo.dataset.iteritems()):
headings = metric.keys()
for counter, heading in enumerate(headings):
delim = set_delimiter(headings, counter)
else:
delim = ','
- #fh.write('%s_%s%s' % (name, heading, delim))
- #sys.stdout.write('%s_%s%s' % (name, heading, delim))
output_results(fh, name,'_', heading, delim)
fh.write('\n')
sys.stdout.write('\n')
def create_dataset(repos, gerrit):
for key, repo in repos.iteritems():
- fh = open('%s/%s' % (gerrit.data_location, repo.filename), repo.filemode)
+ fh = open('%s%s' % (repo.directory, repo.filename), repo.filemode)
if repo.filemode == 'w':
write_heading(fh, repo)
- #sys.stdout.write('%s-%s-%s,%s,' % (repo.today.month,repo.today.day,repo.today.year, repo.name))
- #fh.write('%s-%s-%s,%s,' % (repo.today.month,repo.today.day,repo.today.year, repo.name))
output_results(fh, repo.today.month,'-',repo.today.day,'-',repo.today.year,',',repo.name,',')
print_dict(repo, fh)
sys.stdout.write('\n*****************\n')
delim = set_delimiter(fields, counter)
else:
delim = ','
- #print delim
sys.stdout.write('%s%s' % (dataset[metric][field], delim))
fh.write('%s%s' % (dataset[metric][field], delim))
try:
obs= json.loads(obs)
except ValueError, e:
- print e
+ pass
+ #print obs,e
if isinstance(obs, dict) and 'rowCount' not in obs:
try: