Example #1
0
def inject_s3_transfer_methods(class_attributes, **kwargs):
    utils.inject_attribute(class_attributes, 'upload_file', upload_file)
    utils.inject_attribute(class_attributes, 'download_file', download_file)
    utils.inject_attribute(class_attributes, 'copy', copy)
    utils.inject_attribute(class_attributes, 'upload_fileobj', upload_fileobj)
    utils.inject_attribute(class_attributes, 'download_fileobj',
                           download_fileobj)
Example #2
0
def inject_object_methods(class_attributes, **kwargs):
    utils.inject_attribute(class_attributes, 'upload_file', object_upload_file)
    utils.inject_attribute(class_attributes, 'download_file',
                           object_download_file)
    utils.inject_attribute(class_attributes, 'copy', object_copy)
    utils.inject_attribute(class_attributes, 'upload_fileobj',
                           object_upload_fileobj)
    utils.inject_attribute(class_attributes, 'download_fileobj',
                           object_download_fileobj)
Example #3
0
 def inject(self, class_attributes, service_context, event_name, **kwargs):
     resource_name = event_name.rsplit(".")[-1]
     action = Action(self.name, self.model, {})
     self.function.__name__ = self.name
     self.function.__doc__ = ActionDocstring(
         resource_name=resource_name,
         event_emitter=self.emitter,
         action_model=action,
         service_model=service_context.service_model,
         include_signature=False)
     inject_attribute(class_attributes, self.name, self.function)
Example #4
0
 def test_shadowing_existing_var_raises_exception(self):
     class_attributes = {'foo': 'preexisting'}
     with self.assertRaises(RuntimeError):
         utils.inject_attribute(class_attributes, 'foo', 'bar')
Example #5
0
 def test_inject_attributes_with_no_shadowing(self):
     class_attributes = {}
     utils.inject_attribute(class_attributes, 'foo', 'bar')
     self.assertEqual(class_attributes['foo'], 'bar')
Example #6
0
def inject_object_summary_methods(class_attributes, **kwargs):
    utils.inject_attribute(class_attributes, 'load', object_summary_load)
Example #7
0
 def shadows_put_object(class_attributes, **kwargs):
     utils.inject_attribute(class_attributes, 'put_object', 'invalid')