Prepares requests for download and creates empty folders

        :param save_data: Tells whether to save data or not
        :type: bool
        :param return_data: Tells whether to return data or not
        :type: bool

def _preprocess_request(self, save_data, return_data):
        """
        Prepares requests for download and creates empty folders

        :param save_data: Tells whether to save data or not
        :type: bool
        :param return_data: Tells whether to return data or not
        :type: bool
        """
        if not self.is_valid_request():
            raise ValueError('Cannot obtain data because request is invalid')

        if save_data and self.data_folder is None:
            raise ValueError('Request parameter `data_folder` is not specified. '
                             'In order to save data please set `data_folder` to location on your disk.')

        for download_request in self.download_list:
            download_request.set_save_response(save_data)
            download_request.set_return_data(return_data)
            download_request.set_data_folder(self.data_folder)

        if save_data:
            for folder in self.folder_list:
                make_folder(os.path.join(self.data_folder, folder))