'copy values from src_value to target[src_key], converting src_key and sub keys to camel case'

@classmethod
def copy_attribute(cls, target, src_key, src_value):

    src_key_camel = string_utils.snake_case_to_camel(src_key, upper_case_first=False)
    if isinstance(src_value, dict):
        if (not target.get(src_key_camel)):
            target[src_key_camel] = {}
        for (key, value) in src_value.items():
            camel_key = string_utils.snake_case_to_camel(key, upper_case_first=False)
            if isinstance(value, dict):
                target[src_key_camel][camel_key] = {}
                cls.copy_attribute(target[src_key_camel], key, value)
            else:
                target[src_key_camel][camel_key] = value
    elif isinstance(src_value, list):
        if (not target.get(src_key_camel)):
            target[src_key_camel] = []
        for element in src_value:
            if isinstance(element, dict):
                new_item = {}
                for (key, value) in element.items():
                    camel_key = string_utils.snake_case_to_camel(key, upper_case_first=False)
                    cls.copy_attribute(new_item, camel_key, value)
                target[src_key_camel].append(new_item)
            else:
                target[src_key_camel].append(element)
    else:
        target[src_key_camel] = src_value
