# File lib/dragonfly/data_storage/s3data_store.rb, line 38
      def store(temp_object, opts={})
        ensure_configured
        ensure_bucket_initialized
        
        headers = opts[:headers] || {}
        mime_type = opts[:mime_type] || opts[:content_type]
        headers['Content-Type'] = mime_type if mime_type
        uid = opts[:path] || generate_uid(temp_object.name || 'file')
        
        rescuing_socket_errors do
          if use_filesystem
            temp_object.file do |f|
              storage.put_object(bucket_name, uid, f, full_storage_headers(headers, temp_object.meta))
            end
          else
            storage.put_object(bucket_name, uid, temp_object.data, full_storage_headers(headers, temp_object.meta))
          end
        end
        
        uid
      end