def download(self, storagemodel:object, modeldefinition = None):
        """ load blob from storage into StorageBlobModelInstance """

        if (storagemodel.name is None):
            # No content to download
            raise AzureStorageWrapException(storagemodel, "StorageBlobModel does not contain content nor content settings")

        else:
            container_name = modeldefinition['container']
            blob_name = storagemodel.name
            try:
                if modeldefinition['blobservice'].exists(container_name, blob_name):
                    """ download blob """
                    blob = modeldefinition['blobservice'].get_blob_to_bytes(
                            container_name=modeldefinition['container'], 
                            blob_name=storagemodel.name
                        )

                    storagemodel.__mergeblob__(blob)
                 
            except Exception as e:
                msg = 'can not load blob from container {} because {!s}'.format(storagemodel._containername, e)
                raise AzureStorageWrapException(storagemodel, msg=msg)
           
        return storagemodel
load blob from storage into StorageBlobModelInstance