@classmethod
def create_block_import(cls, cli, remote_system, src_resource,
    dst_resource_config, dst_resource_element_configs=None,
    import_as_vmware_datastore=None, throttle=None, hosts=None,
    cutover_threshold=None, name=None):
    """
        Create a block import session.

        :param remote_system: Source system from which the import is being
            configured.
        :param src_resource: Unique identifier of the source resource.
        :param dst_resource_config: This is the user chosen config for
            destination resource provisioning.
        :param dst_resource_element_configs: This is the user chosen config
            for each of the member element of the destination resource.
        :param import_as_vmware_datastore: Specify if the target resource
            should be VMware Datastore. Default is 'false' and not
            application to consistency groups, only standalone luns.
        :param throttle: Throttle for session. 'True' (Default):
            Session throttled. 'False': Session not throttled.
        :param hosts: List of hosts that will be granted access to
            import session destination resources.
        :param cutover_threshold: Cutover threshold. Default value: 5
        :param name: Name of the import session.
        :return: The newly created import session.
        """
    req_body = cli.make_body(remoteSystem=remote_system, srcResource=
        src_resource, dstResourceConfig=dst_resource_config,
        dstResourceElementConfigs=dst_resource_element_configs,
        importAsVMwareDatastore=import_as_vmware_datastore, throttle=
        throttle, hosts=hosts, cutoverThreshold=cutover_threshold, name=name)
    resp = cli.type_action(cls().resource_class, 'createBlockImport', **
        req_body)
    resp.raise_if_err()
    session_resp = resp.first_content['id']
    return cls.get(cli, _id=session_resp['id'])
