/// <summary>Executes this instance.</summary> /// <returns>FrostPromptResponse</returns> public FrostPromptResponse Execute() { int rowCount = 0; string resultString = string.Empty; FrostPromptResponse response = new FrostPromptResponse(); resultString += " ------------ " + Environment.NewLine; if (!_hasWhereClause) { resultString += ExecuteWithoutWhereClause(out rowCount); } else { resultString += ExecuteWithWhereClause(_whereClause); } resultString += " ------------ " + Environment.NewLine; response.NumberOfRowsAffected = rowCount; response.JsonData = resultString; response.Message = "Succeeded"; response.IsSuccessful = true; return(response); }
public FrostPromptResponse ExecuteCommand(string command) { var result = new FrostPromptResponse(); var data = SendMessage(BuildMessage(command, MessageConsoleAction.Prompt.Execute_Command, MessageActionType.Prompt)); return(data.GetContentAs <FrostPromptResponse>()); }
public FrostPromptResponse Execute() { int rowCount = 0; string resultString = string.Empty; FrostPromptResponse response = new FrostPromptResponse(); resultString += " ------------ " + Environment.NewLine; if (!_hasWhereClause) { var values = new List <RowValue>(); _parameters.ForEach(p => values.Add(p.Convert())); foreach (var row in _table.Rows) { _table.UpdateRow(row, values); rowCount++; } } resultString += " ------------ " + Environment.NewLine; response.NumberOfRowsAffected = rowCount; response.JsonData = resultString; response.Message = "Succeeded"; response.IsSuccessful = true; return(response); }
public async Task <FrostPromptResponse> ExecuteAsync() { FrostPromptResponse result = new FrostPromptResponse(); if (_isLocalQuery) { InsertRowLocally(); result = CreateSuccessResponse(); } else { bool remoteInsert = await InsertRowRemote(); if (remoteInsert) { result = CreateSuccessResponse(); } else { result = new FrostPromptResponse(); result.IsSuccessful = false; result.Message = "Remote Insert Failed"; result.NumberOfRowsAffected = 0; result.JsonData = string.Empty; } } return(result); }
private static string HandleInvalidPlan(FrostPromptResponse result, string resultString) { resultString += " ------------ " + Environment.NewLine; resultString += " Unable to parse statement" + Environment.NewLine; resultString += " ------------ " + Environment.NewLine; result.IsSuccessful = false; result.Message = resultString; return(resultString); }
private static FrostPromptResponse CreateSuccessResponse() { FrostPromptResponse result = new FrostPromptResponse(); result.IsSuccessful = true; result.Message = "Insert succeeded"; result.NumberOfRowsAffected = 1; result.JsonData = string.Empty; return(result); }
private IMessage HandleExecuteCommand(Message message) { string messageContent = string.Empty; FrostPromptResponse response = new FrostPromptResponse(); response = _process.ExecuteCommand(message.Content); Type type = response.GetType(); messageContent = JsonConvert.SerializeObject(response); return(_messageBuilder.BuildMessage(message.Origin, messageContent, MessageConsoleAction.Prompt.Execute_Command_Response, type, message.Id, MessageActionType.Prompt)); }
private int HandleFailedDMLPlan(QueryPlan plan, FrostPromptResponse result, ref string resultString, List <Row> rowList, int totalRows) { int buildRows; resultString += BuildResponse(GetFinalColumns(rowList, plan.Columns, out buildRows)); resultString += " ------------ " + Environment.NewLine; result.Message = "Succeeded"; result.IsSuccessful = true; result.JsonData = resultString; if (buildRows > 0) { result.NumberOfRowsAffected = buildRows; } else { result.NumberOfRowsAffected = totalRows; } return(buildRows); }
public FrostPromptResponse Execute() { FrostPromptResponse response = new FrostPromptResponse(); string resultString = string.Empty; int totalRows = 0; if (!_hasWhereClause) { totalRows = _table.RemoveAllRows(); } resultString += " ------------ " + Environment.NewLine; response.NumberOfRowsAffected = totalRows; response.JsonData = resultString; response.Message = "Delete Succeeded"; response.IsSuccessful = true; return(response); }
public FrostPromptResponse Execute(QueryPlan plan) { var result = new FrostPromptResponse(); var resultString = string.Empty; bool planFailed = false; var rowList = new List <Row>(); int rows = 0; int buildRows = 0; int totalRows = 0; if (!plan.IsValid) { resultString = HandleInvalidPlan(result, resultString); } else { if (IsDDLPlan(plan)) { HandleDDLPlan(plan, ref resultString, ref planFailed); } else { HandleDMLPlan(plan, ref resultString, ref planFailed, rowList, ref rows, ref totalRows); } if (!planFailed) { buildRows = HandleFailedDMLPlan(plan, result, ref resultString, rowList, totalRows); } else { result.IsSuccessful = false; result.Message = resultString; result.NumberOfRowsAffected = 0; } } return(result); }