Exemplo n.º 1
0
        public void StartPlugin()
        {
            if (PluginHandler.GetTotalPlugins() <= 0)
            {
                var pluginError = new
                {
                    noPluginsLoaded = true
                };
                _serializator.Serialize(_client, _packet.Endpoint, _packet.SyncKey, pluginError);
                return;
            }
            //GUID should always be the first argument
            var guid = _packet.Args?.First().ToString();

            if (guid == null)
            {
                var pluginError = new
                {
                    missingGuid = true
                };
                _serializator.Serialize(_client, _packet.Endpoint, _packet.SyncKey, pluginError);
                return;
            }

            /*   if (!PluginHandler.ApprovedPlugins.ContainsValue(guid))
             * {
             *     var pluginError = new
             *     {
             *         notApproved = true,
             *         guid
             *     };
             *     _serializator.Serialize(_client, _packet.Endpoint, _packet.SyncKey, pluginError);
             *     return;
             * }*/
            object returnData    = null;
            var    pluginStarted = false;

            //lets check if we have any other arguments to clean the list
            if (_packet.Args.Count > 1)
            {
                var cleanedArgs = _packet.Args;
                //remove guid from the arguments.
                cleanedArgs.RemoveAt(0);
                returnData    = PluginHandler.StartPlugin(guid, cleanedArgs);
                pluginStarted = true;
            }
            else
            {
                returnData    = PluginHandler.StartPlugin(guid);
                pluginStarted = true;
            }
            var pluginResponse = new
            {
                guid,
                pluginData = returnData,
                pluginStarted
            };

            _serializator.Serialize(_client, _packet.Endpoint, _packet.SyncKey, pluginResponse);
        }
Exemplo n.º 2
0
        public void StartPlugin()
        {
            if (PluginHandler.GetTotalPlugins() <= 0)
            {
                var pluginError = new
                {
                    noPluginsLoaded = true
                };
                _builder.WriteMessage(pluginError);
                return;
            }
            //GUID should always be the first argument
            var guid = _packet.Args?.First().ToString();

            if (guid == null)
            {
                var pluginError = new
                {
                    missingGuid = true
                };
                _builder.WriteMessage(pluginError);
                return;
            }
            object returnData    = null;
            var    pluginStarted = false;

            //lets check if we have any other arguments to clean the list
            if (_packet.Args.Count > 1)
            {
                var cleanedArgs = _packet.Args;
                //remove guid from the arguments.
                cleanedArgs.RemoveAt(0);
                returnData    = PluginHandler.StartPlugin(_client.Client, guid, cleanedArgs);
                pluginStarted = true;
            }
            else
            {
                returnData    = PluginHandler.StartPlugin(_client.Client, guid);
                pluginStarted = true;
            }
            var pluginResponse = new
            {
                guid,
                pluginData = returnData,
                pluginStarted
            };

            _builder.WriteMessage(pluginResponse);
        }