def direct_get_suffix_hashes(node, part, suffixes, conn_timeout=5, response_timeout=15, headers=None):
 if (headers is None):
  headers = {}
 path = ('/%s' % '-'.join(suffixes))
 with Timeout(conn_timeout):
  conn = http_connect(node['replication_ip'], node['replication_port'], node['device'], part, 'REPLICATE', path, headers=gen_headers(headers))
 with Timeout(response_timeout):
  resp = conn.getresponse()
 if (not is_success(resp.status)):
  raise DirectClientException('Object', 'REPLICATE', node, part, path, resp, host={'ip': node['replication_ip'], 'port': node['replication_port']})
 return pickle.loads(resp.read())

def direct_get_suffix_hashes ( node , part , suffixes , conn_timeout = 5 , response_timeout = 15 , headers = None ) : if ( headers is None ) : headers = { } path = ( '/%s' % '-' . join ( suffixes ) ) with Timeout ( conn_timeout ) : conn = http_connect ( node [ 'replication_ip' ] , node [ 'replication_port' ] , node [ 'device' ] , part , 'REPLICATE' , path , headers = gen_headers ( headers ) ) with Timeout ( response_timeout ) : resp = conn . getresponse ( ) if ( not is_success ( resp . status ) ) : raise DirectClientException ( 'Object' , 'REPLICATE' , node , part , path , resp , host = { 'ip' : node [ 'replication_ip' ] , 'port' : node [ 'replication_port' ] } ) return pickle . loads ( resp . read ( ) )
get suffix hashes directly from the object server .