setSettings method

Future<AlgoliaTask> setSettings()

Implementation

Future<AlgoliaTask> setSettings() async {
  try {
    assert(
        _parameters.keys.isNotEmpty, 'No setting parameter to update found.');

    String url = '${algolia._host}indexes/$_index/settings';
    Response response = await put(
      Uri.parse(url),
      headers: algolia._header,
      body: utf8
          .encode(json.encode(_parameters, toEncodable: jsonEncodeHelper)),
      encoding: Encoding.getByName('utf-8'),
    );
    Map<String, dynamic> body = json.decode(response.body);
    AlgoliaTask task = AlgoliaTask._(algolia, _index, body);
    return task;
  } catch (err) {
    Map<String, dynamic> body = json.decode(err.toString());

    AlgoliaTask task = AlgoliaTask._(algolia, _index, body);
    return task;
  }
}