private IMessage HandleExecuteQuery(Message message) { string messageContent = string.Empty; FrostPromptResponse response = new FrostPromptResponse(); response = _process.ExecuteQuery(message.Content); Type type = response.GetType(); messageContent = JsonConvert.SerializeObject(response); return(_messageBuilder.BuildMessage(message.Origin, messageContent, MessageConsoleAction.Prompt.Execute_Query_Response, type, message.Id, MessageActionType.Prompt)); }
private IMessage HandleGetAcceptedContracts(Message message) { var info = new AcceptedContractInfo(); string dbName = message.Content; var db = _process.GetDatabase(dbName); Type type = null; if (db != null) { db.AcceptedParticipants.ForEach(p => { info.AcceptedContracts.Add(p.Location.IpAddress + ":" + p.Location.PortNumber.ToString()); }); info.DatabaseId = db.Id; info.DatabaseName = db.Name; } type = info.GetType(); string messageContent = string.Empty; messageContent = JsonConvert.SerializeObject(info); return(_messageBuilder.BuildMessage(message.Origin, messageContent, MessageConsoleAction.Database.Get_Accepted_Contracts_Response, type, message.Id, MessageActionType.Database)); }
private IMessage HandleProcessGetPartialDatabases(Message message) { string messageContent = string.Empty; List <string> databases = new List <string>(); _process.PartialDatabases.ForEach(d => databases.Add(d.Name)); Type type = databases.GetType(); messageContent = JsonConvert.SerializeObject(databases); return(_messageBuilder.BuildMessage(message.Origin, messageContent, MessageConsoleAction.Process.Get_Partial_Databases_Response, type, message.Id, MessageActionType.Process)); }
private IMessage HandleGetTableInfo(Message message) { Database db = null; Table table = null; TableInfo info = new TableInfo(); if (message.TwoGuidTuple.Item1.HasValue) { var databaseTable = message.TwoGuidTuple; db = (Database)_process.GetDatabase(databaseTable.Item1); table = _process.GetTable(databaseTable.Item1, databaseTable.Item2); } else { var databaseTable = message.TwoStringTuple; db = (Database)_process.GetDatabase(databaseTable.Item1); if (db != null) { table = _process.GetTable(databaseTable.Item1, databaseTable.Item2); info.TableName = table.Name; info.DatabaseName = db.Name; table.Columns.ForEach(c => info.Columns.Add((c.Name, c.DataType.ToString()))); } else { var item = _process.GetDatabase2(databaseTable.Item1).GetTable(databaseTable.Item2); info.TableName = item.Name; info.DatabaseName = item.DatabaseName; item.Columns.ForEach(column => info.Columns.Add((column.Name, column.DataType))); } } Type type = info.GetType(); string messageContent = string.Empty; messageContent = JsonConvert.SerializeObject(info); return(_messageBuilder.BuildMessage(message.Origin, messageContent, MessageConsoleAction.Table.Get_Table_Info_Response, type, message.Id, MessageActionType.Table)); }