public async Task <List <NodeVm> > GetNodesAsync(long?nodeId, string searchQuery, List <long> nodesIds) { if (!await TryConnectAsync().ConfigureAwait(false)) { return(new List <NodeVm>()); } GetNodesRequest request = nodesIds != null ? new GetNodesRequest(nodesIds) : new GetNodesRequest(nodeId, searchQuery); await SendRequestAsync(request).ConfigureAwait(false); var response = await GetResponseAsync(request).ConfigureAwait(false); if (response is NodesResponse nodesResponse) { return(nodesResponse.Nodes); } else if (response is ResultResponse resultResponse) { throw new ResponseException($"Failed to get nodes list. Response error message: {resultResponse.ErrorMessage}"); } else { throw new ResponseException($"Invalid response. {response.ResponseType}"); } }
/// <summary> /// Gets the nodes. /// </summary> /// <param name="request">The request.</param> /// <returns> /// Returns the list with sitemap nodes. /// </returns> /// <exception cref="CmsApiException"></exception> public DataListResponse <SitemapNode> GetNodes(GetNodesRequest request = null) { try { return(Repository.ToDataListResponse(request)); } catch (Exception inner) { var message = string.Format("Failed to get sitemap nodes."); Logger.Error(message, inner); throw new CmsApiException(message, inner); } }
/// <summary> /// Gets the nodes. /// </summary> /// <param name="request">The request.</param> /// <returns> /// Returns the list with sitemap nodes. /// </returns> /// <exception cref="CmsApiException"></exception> public DataListResponse<SitemapNode> GetNodes(GetNodesRequest request = null) { try { return Repository.ToDataListResponse(request); } catch (Exception inner) { var message = string.Format("Failed to get sitemap nodes."); Logger.Error(message, inner); throw new CmsApiException(message, inner); } }
public async Task <NodeVm> GetNodeAsync(byte[] nodePublicKey, long nodeId) { if (!await TryConnectAsync().ConfigureAwait(false)) { return(new NodeVm()); } GetNodesRequest request = new GetNodesRequest(nodePublicKey, nodeId); await SendRequestAsync(request).ConfigureAwait(false); var response = await GetResponseAsync(request).ConfigureAwait(false); if (response is NodesResponse nodesResponse) { return(nodesResponse.Nodes.FirstOrDefault()); } else { var resultResponse = response as ResultResponse; throw new ResponseException($"Failed to get node. Response error message: {resultResponse.ErrorMessage}"); } }
public Task <GetNodesResponse> GetNodesAsync(GetNodesRequest request) { throw new NotImplementedException(); }
public GetNodesResponse GetNodes(GetNodesRequest request) { throw new NotImplementedException(); }