#NEWLINE# def get_object( self , container_name , object_name ) : #NEWLINE# #INDENT# container = self . get_container ( container_name ) #NEWLINE# object_name_cleaned = self . _clean_object_name ( object_name ) #NEWLINE# path = ( ( self . _namespace_path ( container_name ) + '/' ) + object_name_cleaned ) #NEWLINE# try : #NEWLINE# #INDENT# result = self . connection . request ( ( path + '?metadata/system' ) ) #NEWLINE# system_meta = self . _emc_meta ( result ) #NEWLINE# result = self . connection . request ( ( path + '?metadata/user' ) ) #NEWLINE# user_meta = self . _emc_meta ( result ) #NEWLINE# #UNINDENT# except AtmosError : #NEWLINE# #INDENT# e = sys . exc_info ( ) [ 1 ] #NEWLINE# if ( e . code != 1003 ) : #NEWLINE# #INDENT# raise #NEWLINE# #UNINDENT# raise ObjectDoesNotExistError ( e , self , object_name ) #NEWLINE# #UNINDENT# last_modified = time . strptime ( system_meta [ 'mtime' ] , '%Y-%m-%dT%H:%M:%SZ' ) #NEWLINE# last_modified = time . strftime ( '%a, %d %b %Y %H:%M:%S GMT' , container ) #NEWLINE# extra = { #NEWLINE# #INDENT# 'object_id' : system_meta [ 'objectid' ] , #NEWLINE# 'last_modified' : last_modified , #NEWLINE# #UNINDENT# } #NEWLINE# data_hash = user_meta . pop ( 'md5' , '' ) #NEWLINE# return Object ( object_name , int ( system_meta [ 'size' ] ) , data_hash , extra , user_meta , container , self )