public void LookupVolume() { var values = new LookupVolumeParams("1"); var result = MasterWrapper.LookupVolume(values).GetAwaiter().GetResult(); Assert.AreEqual(values.VolumeId, result.VolumeId); }
/// <summary> /// Fetch lookup volume result. /// </summary> /// <param name="value"></param> /// <returns></returns> private async Task <LookupVolumeResult> FetchLookupVolumeResult(LookupVolumeParams value) { CheckConnection(); var url = _connection.LeaderUrl + RequestPathStrategy.LookupVolume + value.ToUrlParams(); var request = new HttpRequestMessage( HttpMethod.Get, new Uri(url) ); var jsonResponse = await _connection.FetchJsonResultByRequest(request); var obj = JsonConvert.DeserializeObject <LookupVolumeResult>(jsonResponse.Json, Settings.JsonSerializerSettings); return(obj); }
/// <summary> /// Lookup volume. /// </summary> /// <param name="value"></param> /// <returns></returns> public async Task <LookupVolumeResult> LookupVolume(LookupVolumeParams value) { CheckConnection(); if (!_connection.IsLookupVolumeCacheEnabled) { return(await FetchLookupVolumeResult(value)); } var result = _connection.VolumeLookupCache.GetCachedData( value.VolumeId.ToString(), Connection.LockObject4LookupVolumeCache, _connection.CreateCacheItemPolicy(), async() => { var volume = await FetchLookupVolumeResult(value); return(volume); }); return(result); }