def bucketlist(self,
                   bucket,
                   prefix=None,
                   marker=None,
                   limit=None,
                   mode=None,
                   starttime=None,
                   endtime=None):
        options = {
            'bucket': bucket,
        }
        if marker:
            options['marker'] = marker
        if limit:
            if limit in self._limit_check():
                options['limit'] = limit
            else:
                error('Invalid limit ! Please redefine limit')
                raise ValueError("Invalid limit")
        if prefix:
            options['prefix'] = urlsafe_base64_encode(prefix)
        if mode == 1 or mode == 0:
            options['mode'] = mode

        if starttime:
            options['startTime'] = starttime
        if endtime:
            options['endTime'] = endtime

        url = https_check(self._make_url('list', options))
        if options:
            debug('List options is %s' % options)
        debug('List bucket %s' % bucket)
        return _get(url=url,
                    headers=super(BucketManager, self)._gernerate_headers(url))
Exemple #2
0
 def __init__(self, configfile=None):
     if configfile:
         try:
             self.read_config_file(configfile)
         except IOError as e:  # 这里尚未确定读取配置文件异常如何处理
             error("Can't read config file ")
             sys.exit()
Exemple #3
0
 def upload(self, filepath, token, key='filename'):
     if os.path.exists(filepath) and os.path.isfile(filepath):
         f = self._gernerate_content(filepath)
         url, encoder, headers = self._gernerate_tool(f, token, key)
         return self._upload(url, encoder, headers, f)
     else:
         error('Sorry ! Please input a existing file')
         raise ValueError("Sorry ! We need a existing file to upload")
Exemple #4
0
 def __init__(self, url):
     self.url = url
     self.token = ''
     self.path = ''
     self.size = 0
     self.key = ''
     self.blocknum = 0
     self.results = []
     self.uploadBatch = ''
     self.progress = 0
     self.recorder = None
     #self.cfg = Config(config_file)
     self.cfg = Config()
     try:
         self.concurrency = int(self.cfg.concurrency)
         self.block_size = int(self.cfg.block_size)
         self.bput_size = int(self.cfg.bput_size)
     except ValueError as e:
         error(u"Invalid value,please check .wcscfg file")
         sys.exit()