Skip to content

Commit

Permalink
#22 - reap only specified dir, /data by default
Browse files Browse the repository at this point in the history
  • Loading branch information
mgk committed Mar 30, 2016
1 parent 4543e9f commit 212dbbf
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 6 deletions.
6 changes: 4 additions & 2 deletions python/sdreaper/app.py
Expand Up @@ -24,8 +24,10 @@ class App(object):

locale.setlocale(locale.LC_ALL, '')

def __init__(self, reaper, rm_after_download=True, auto_run=False):
def __init__(self, reaper, rm_after_download=True, auto_run=False,
sd_data_dir=''):
self.rm_after_download = rm_after_download
self.sd_data_dir = sd_data_dir
self.reaper = reaper
self.file_progress = TimedProgressBar('normal',
'complete',
Expand All @@ -44,7 +46,7 @@ def __init__(self, reaper, rm_after_download=True, auto_run=False):
info = self.reaper.info()
self.device_id = info['samd_id'][2:]
self.file_count = uw.Text('')
self.file_list = self.reaper.ls()
self.file_list = self.reaper.ls(self.sd_data_dir)
self.update_file_count()

info_text = [
Expand Down
5 changes: 3 additions & 2 deletions python/sdreaper/main.py
Expand Up @@ -9,7 +9,8 @@
Options:
-r --run begin download automatically
-d DATA --data=DATA data directory to use [default: data]
-d DATA --data=DATA destination directory of downloads [default: data]
--sd-data-dir=SD-DATA source dir to download from SD card [default: /data]
Advanced Options:
-p PORT --port=PORT Port to use. By default the port is auto detected.
Expand Down Expand Up @@ -69,7 +70,7 @@ def main():
reaper.commands(args['<command>'])
else:
reaper.echo = False
App(reaper, not args['--no-rm'], args['--run'])
App(reaper, not args['--no-rm'], args['--run'], args['--sd-data-dir'])

reaper.disconnect()

Expand Down
10 changes: 8 additions & 2 deletions python/sdreaper/reaper.py
Expand Up @@ -158,6 +158,12 @@ def progress_fun(num_bytes, w):
self.pr('received {}, size={}'.format(filename, size))
elif verb == 'info':
return self.info()
elif verb == 'ls':
try:
prefix = parts[1]
except:
prefix = ''
print(self.ls(prefix))
else:
self.send_command(command)
return self.read()
Expand Down Expand Up @@ -218,7 +224,7 @@ def get_time(self):
tzinfo=datetime.timezone.utc)
return dt

def ls(self):
def ls(self, prefix=''):
"""Get list of files"""
self.send_command('ls')
result = []
Expand All @@ -241,7 +247,7 @@ def ls(self):

name = current_dir
prev_level = level
return result
return [f for f in result if f['name'].startswith(prefix)]

def send_command(self, command, timeout=None):
self.sync(timeout=timeout)
Expand Down

0 comments on commit 212dbbf

Please sign in to comment.