예제 #1
0
        public bool registerKey(string path, string key, int type, string title, string description, string defaultValue, bool advanced)
        {
            SettingsRequestMessage newMessage = new SettingsRequestMessage();

            SettingsRequestMessage.Types.Request.Types.Registration registration_builder = new SettingsRequestMessage.Types.Request.Types.Registration();
            registration_builder.Node             = new Node();
            registration_builder.Node.Path        = path;
            registration_builder.Node.Key         = key;
            registration_builder.Info             = new PB.Settings.Information();
            registration_builder.Info.Title       = title;
            registration_builder.Info.Description = description;
            NSCP.Core.Result res = core.settings(newMessage.ToByteArray());
            if (!res.result)
            {
                log.error("Failed to describe path: " + path);
                return(false);
            }
            SettingsResponseMessage response_message = SettingsResponseMessage.Parser.ParseFrom(res.data);

            if (response_message.Payload[0].Result.Code != PB.Common.Result.Types.StatusCodeType.StatusOk)
            {
                log.error("Failed to describe path: " + path);
                return(false);
            }
            return(true);
        }
예제 #2
0
        public bool registerPath(string path, string title, string description, bool advanced)
        {
            SettingsRequestMessage newMessage = new SettingsRequestMessage();

            SettingsRequestMessage.Types.Request.Types.Registration registration_builder = new SettingsRequestMessage.Types.Request.Types.Registration();
            registration_builder.Node             = new Node();
            registration_builder.Node.Path        = path;
            registration_builder.Info             = new PB.Settings.Information();
            registration_builder.Info.Title       = title;
            registration_builder.Info.Description = description;

            SettingsRequestMessage.Types.Request request = new SettingsRequestMessage.Types.Request();
            request.PluginId     = plugin_id;
            request.Registration = registration_builder;
            newMessage.Payload.Add(request);

            NSCP.Core.Result res = core.settings(newMessage.ToByteArray());
            if (!res.result)
            {
                log.error("Failed to describe path: " + path);
                return(false);
            }
            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 describe path: " + path);
                return(false);
            }

            if (response_message.Payload[0].Result.Code != PB.Common.Result.Types.StatusCodeType.StatusOk)
            {
                return(false);
            }
            return(true);
        }