public bool registerCommand(string command, string description) { RegistryRequestMessage newMessage = new RegistryRequestMessage(); RegistryRequestMessage.Types.Request.Types.Registration newRegistration = new RegistryRequestMessage.Types.Request.Types.Registration(); newRegistration.Name = command; newRegistration.PluginId = plugin_id; newRegistration.Type = PB.Registry.ItemType.Query; newRegistration.Info = new PB.Registry.Information(); newRegistration.Info.Description = description; RegistryRequestMessage.Types.Request request = new RegistryRequestMessage.Types.Request(); request.Registration = newRegistration; newMessage.Payload.Add(request); NSCP.Core.Result response = core.registry(newMessage.ToByteArray()); if (!response.result) { log.error("Failed to register: " + command); return(false); } RegistryResponseMessage response_message = RegistryResponseMessage.Parser.ParseFrom(response.data); if (response_message.Payload[0].Result.Code != PB.Common.Result.Types.StatusCodeType.StatusOk) { log.error("Failed to register: " + command); return(false); } return(true); }
public bool registerCommand(string command, string description) { RegistryRequestMessage.Builder newMessage = RegistryRequestMessage.CreateBuilder(); RegistryRequestMessage.Types.Request.Types.Registration.Builder newRegistration = RegistryRequestMessage.Types.Request.Types.Registration.CreateBuilder(); newRegistration.SetName(command); newRegistration.SetPluginId(plugin_id); newRegistration.SetType(Registry.Types.ItemType.QUERY); newRegistration.SetInfo(Registry.Types.Information.CreateBuilder().SetDescription(description).Build()); newMessage.AddPayload(RegistryRequestMessage.Types.Request.CreateBuilder().SetRegistration(newRegistration.Build()).Build()); NSCP.Core.Result response; using (MemoryStream stream = new MemoryStream()) { newMessage.Build().WriteTo(stream); response = core.registry(stream.ToArray()); } if (!response.result) { log.error("Failed to register: " + command); return(false); } RegistryResponseMessage response_message = RegistryResponseMessage.ParseFrom(response.data); if (response_message.GetPayload(0).Result.Code != Common.Types.Result.Types.StatusCodeType.STATUS_OK) { log.error("Failed to register: " + command); return(false); } return(true); }
public List <string> getKeys(string path) { List <string> ret = new List <string>(); SettingsRequestMessage newMessage = new SettingsRequestMessage(); SettingsRequestMessage.Types.Request.Types.Query newQuery = new SettingsRequestMessage.Types.Request.Types.Query(); newQuery.Node = new Node(); newQuery.Node.Path = path; newQuery.Recursive = false; SettingsRequestMessage.Types.Request request = new SettingsRequestMessage.Types.Request(); request.PluginId = plugin_id; request.Query = newQuery; newMessage.Payload.Add(request); NSCP.Core.Result res = core.settings(newMessage.ToByteArray()); if (!res.result) { log.error("Failed to get value: " + path); return(ret); } SettingsResponseMessage response_message = SettingsResponseMessage.Parser.ParseFrom(res.data); if (response_message.Payload == null || response_message.Payload.Count == 0 || response_message.Payload[0].Result == null) { log.error("Failed to get value: " + path); return(ret); } if (response_message.Payload[0].Result.Code != PB.Common.Result.Types.StatusCodeType.StatusOk) { log.error("Failed to get value: " + path); return(ret); } foreach (Node node in response_message.Payload[0].Query.Nodes) { ret.Add(node.Value); } return(ret); }
public List <string> getKeys(string path) { List <string> ret = new List <string>(); SettingsRequestMessage.Builder newMessage = SettingsRequestMessage.CreateBuilder(); SettingsRequestMessage.Types.Request.Types.Query.Builder newQuery = SettingsRequestMessage.Types.Request.Types.Query.CreateBuilder(); newQuery.SetNode(Settings.Types.Node.CreateBuilder().SetPath(path).Build()); newQuery.SetRecursive(false); newQuery.SetType(Common.Types.DataType.STRING); newMessage.AddPayload(SettingsRequestMessage.Types.Request.CreateBuilder().SetPluginId(plugin_id).SetQuery(newQuery.Build()).Build()); System.IO.MemoryStream stream = new System.IO.MemoryStream(); newMessage.Build().WriteTo(stream); NSCP.Core.Result res = core.settings(stream.ToArray()); if (!res.result) { log.error("Failed to get value: " + path); return(ret); } SettingsResponseMessage response_message = SettingsResponseMessage.ParseFrom(res.data); if (response_message.GetPayload(0).Result.Code != Common.Types.Result.Types.StatusCodeType.STATUS_OK) { log.error("Failed to get value: " + path); return(ret); } foreach (string value in response_message.GetPayload(0).Query.Value.ListDataList) { ret.Add(value); } return(ret); }