def consume(input_queue, done_jobs, length_pipe, name_pipe, keyfile_name): while True: try: filename, data = input_queue.get() name_pipe.send(filename) length_pipe.send(len(data)) metadata = coding.send_chunks_get_metadata(data) print "Got chunks" # Save it back with open(keyfile_name, 'r') as keyfile_handle: keyfile = json.loads(keyfile_handle.read()) keyfile[filename] = metadata keyfilelib.save(keyfile_name, keyfile) print "Done saving to keyfile" except Queue.Empty: time.sleep(1)
parser.add_argument('--output', dest='output') args = parser.parse_args() if not args.keyfile: keyfile_name = keyfilelib.create_new_keyfile() else: keyfile_name = args.keyfile with open(keyfile_name, 'r') as keyfile_handle: keyfile = json.loads(keyfile_handle.read()) if args.upload: with open(args.upload, 'r') as f: data = f.read() metadata = coding.send_chunks_get_metadata(data) keyfile[args.upload] = metadata keyfilelib.save(keyfile_name, keyfile) if args.download: if not args.download in keyfile: print "Unknown file. Exiting" sys.exit(1) if not args.output: print "Please supply a destination file for writing" else: file_metadata = keyfile[args.download] data = coding.get_chunks(file_metadata) output_file = open(args.output, "w") output_file.write(data) output_file.close()