public static async Task <ApiResponse> StopEngine() { ApiResponse response = new ApiResponse(); try { BlockChainEngine engine = new BlockChainEngine(); await engine.StopEngine(); } catch (ApiCustomException ex) { Logger.Singleton.Error(ex.Message); Logger.Singleton.Error("Api error code is:" + ex.ErrorCode.ToString()); Logger.Singleton.Error("Api error reason is:" + ex.InnerException.ToString()); response.Error = new ApiError(ex.ErrorCode, ex.Message); } catch (Exception ex) { Logger.Singleton.Error(ex.Message); Logger.Singleton.Error("Custom error code is:" + ex.HResult); Logger.Singleton.Error("Custom error reason is:" + ex.InnerException); response.Error = new ApiError(ex.HResult, ex.Message); } return(response); }
public static async Task <ApiResponse> GetBlockCount() { ApiResponse response = new ApiResponse(); try { BlockChainEngine engine = new BlockChainEngine(); long result = await engine.GetBlockCount(); response.Result = Newtonsoft.Json.Linq.JToken.FromObject(result); } catch (ApiCustomException ex) { Logger.Singleton.Error(ex.Message); Logger.Singleton.Error("Api error code is:" + ex.ErrorCode.ToString()); Logger.Singleton.Error("Api error reason is:" + ex.InnerException.ToString()); response.Error = new ApiError(ex.ErrorCode, ex.Message); } catch (Exception ex) { Logger.Singleton.Error(ex.Message); Logger.Singleton.Error("Custom error code is:" + ex.HResult); Logger.Singleton.Error("Custom error reason is:" + ex.InnerException); response.Error = new ApiError(ex.HResult, ex.Message); } return(response); }
public static async Task <ApiResponse> GetBlockHash(long height) { ApiResponse response = new ApiResponse(); try { BlockChainEngine engine = new BlockChainEngine(); string result = await engine.GetBlockHash(height); if (!string.IsNullOrEmpty(result)) { response.Result = Newtonsoft.Json.Linq.JToken.FromObject(result); } else { response.Result = null; } } catch (ApiCustomException ex) { Logger.Singleton.Error(ex.ToString()); Logger.Singleton.Error("Api error code is:" + ex.ErrorCode.ToString()); Logger.Singleton.Error("Api error reason is:" + ex.InnerException.ToString()); response.Error = new ApiError(ex.ErrorCode, ex.ToString()); } catch (Exception ex) { Logger.Singleton.Error(ex.ToString()); Logger.Singleton.Error("Custom error code is:" + ex.HResult); Logger.Singleton.Error("Custom error reason is:" + ex.InnerException); response.Error = new ApiError(ex.HResult, ex.ToString()); } return(response); }
public static async Task <ApiResponse> GenerateNewBlock(string minerName, string address, int format = 0) { ApiResponse response = new ApiResponse(); try { BlockChainEngine engine = new BlockChainEngine(); BlockInfoOM result = await engine.GenerateNewBlock(minerName, address, format); if (result != null) { response.Result = Newtonsoft.Json.Linq.JToken.FromObject(result); } else { response.Result = null; } } catch (ApiCustomException ex) { Logger.Singleton.Error(ex.Message); Logger.Singleton.Error("Api error code is:" + ex.ErrorCode.ToString()); Logger.Singleton.Error("Api error reason is:" + ex.InnerException.ToString()); response.Error = new ApiError(ex.ErrorCode, ex.Message); } catch (Exception ex) { Logger.Singleton.Error(ex.Message); Logger.Singleton.Error("Custom error code is:" + ex.HResult); Logger.Singleton.Error("Custom error reason is:" + ex.InnerException); response.Error = new ApiError(ex.HResult, ex.Message); } return(response); }
public async Task GenerateNewBlock() { BlockChainEngine engine = new BlockChainEngine(); BlockInfoOM result = await engine.GenerateNewBlock("Zhangsan", "", 1); Assert.IsNotNull(result); }
public async Task GetBlockHeader() { BlockChainEngine engine = new BlockChainEngine(); BlockHeaderOM result = await engine.GetBlockHeader("B6D9FD10775254A86E836F211205D8A21D0F3FF3821C9E6F1F99377BFB4DADFA", 1); Assert.IsNotNull(result); }
public async Task GetDifficulty() { BlockChainEngine engine = new BlockChainEngine(); BlockDifficultyOM result = await engine.GetDifficulty(); Assert.IsNotNull(result); }
public async Task GetBlockHash() { BlockChainEngine engine = new BlockChainEngine(); string result = await engine.GetBlockHash(29); Assert.IsNotNull(result); }
public async Task GetBlockCount() { BlockChainEngine engine = new BlockChainEngine(); long result = await engine.GetBlockCount(); Assert.IsNotNull(result); }
public async Task GetBlockChainStatus() { BlockChainEngine engine = new BlockChainEngine(); BlockChainStatusOM result = await engine.GetBlockChainStatus(); Assert.IsNotNull(result); }
public async Task GetChainTips() { BlockChainEngine engine = new BlockChainEngine(); ChainTipsOM[] result = await engine.GetChainTips(); Assert.IsNotNull(result); }
public static async Task <ApiResponse> GetBlockChainStatus() { ApiResponse response = new ApiResponse(); try { BlockChainEngine engine = new BlockChainEngine(); BlockChainStatus status = new BlockChainStatus(); BlockChainStatusOM result = await engine.GetBlockChainStatus(); if (result != null) { status.ChainService = result.ChainService; status.BlockService = result.BlockService; status.P2pService = result.P2pService; status.RpcService = result.RpcService; status.ChainNetwork = result.ChainNetwork; status.Height = result.Height; response.Result = Newtonsoft.Json.Linq.JToken.FromObject(status); } else { response.Result = null; } } catch (ApiCustomException ex) { Logger.Singleton.Error(ex.Message); Logger.Singleton.Error("Api error code is:" + ex.ErrorCode.ToString()); Logger.Singleton.Error("Api error reason is:" + ex.InnerException.ToString()); response.Error = new ApiError(ex.ErrorCode, ex.Message); } catch (Exception ex) { Logger.Singleton.Error(ex.Message); Logger.Singleton.Error("Custom error code is:" + ex.HResult); Logger.Singleton.Error("Custom error reason is:" + ex.InnerException); response.Error = new ApiError(ex.HResult, ex.Message); } return(response); }
public static async Task <ApiResponse> SignMessage(string address, string message) { ApiResponse response = new ApiResponse(); try { BlockChainEngine engine = new BlockChainEngine(); MessageOM result = await engine.SignMessage(address, message); Message entity = new Message(); entity.PublicKey = result.PublicKey; entity.Signature = result.Signature; if (result != null) { response.Result = Newtonsoft.Json.Linq.JToken.FromObject(entity); } else { response.Result = null; } return(response); } catch (ApiCustomException ex) { Logger.Singleton.Error(ex.ToString()); Logger.Singleton.Error("Api error code is:" + ex.ErrorCode.ToString()); Logger.Singleton.Error("Api error reason is:" + ex.InnerException.ToString()); response.Error = new ApiError(ex.ErrorCode, ex.ToString()); } catch (Exception ex) { Logger.Singleton.Error(ex.ToString()); Logger.Singleton.Error("Custom error code is:" + ex.HResult); Logger.Singleton.Error("Custom error reason is:" + ex.InnerException); response.Error = new ApiError(ex.HResult, ex.ToString()); } return(response); }
public async Task SubmitBlock() { BlockChainEngine engine = new BlockChainEngine(); await engine.SubmitBlock("1234567890ABCDEF"); }
public async Task StopEngine() { BlockChainEngine engine = new BlockChainEngine(); await engine.StopEngine(); }