public virtual async Task<IResult> FlushAsync()
{
IResult result;
try
{
var server = _clientConfig.Servers.First();
const string api = "{0}://{1}:{2}/pools/default/buckets/{3}/controller/doFlush";
var protocol = UseSsl() ? "https" : "http";
var port = UseSsl() ? _clientConfig.HttpsMgmtPort : _clientConfig.MgmtPort;
var uri = new Uri(string.Format(api, protocol, server.Host, port, BucketName));
var request = new HttpRequestMessage(HttpMethod.Post, uri)
{
Content = new FormUrlEncodedContent(new Dictionary<string, string>
{
{"user", _username},
{"password", _password}
})
};
SetHeaders(request, uri, MediaType.Form);
var response = await _httpClient.SendAsync(request).ContinueOnAnyContext();
result = await GetResult(response).ContinueOnAnyContext();
}
catch (AggregateException e)
{
Log.Error(e);
result = new DefaultResult(false, e.Message, e);
}
return result;
}