public object GetDynamicParameters()
        {
            if (!Api.CacheMode)
            {
                return(null);
            }

            PhoneticIdParam = new PowershellDynamicParameter(this, "PhoneticId", (from d in Api.Detections select d.PhoneticId).ToArray());
            //PhoneticIdParam.ParameterSetName = "ByPhoneticId";
            PhoneticIdParam.AllowMultiple = true;

            DeviceNameParam = new PowershellDynamicParameter(this, "Device", (from d in Api.Devices select d.device_name).ToArray());
            //DeviceNameParam.ParameterSetName = "ByDevice";
            DeviceNameParam.AllowMultiple = true;

            RuleNameParam = new PowershellDynamicParameter(this, "Rule", (from d in Api.Detections select d.DetectionRuleName).Distinct().OrderBy(d => d).ToArray());
            //RuleNameParam.ParameterSetName = "ByRule";
            RuleNameParam.AllowMultiple = true;

            var dynamicParams = PhoneticIdParam.GetParamDictionary();

            DeviceNameParam.AddToParamDictionary(dynamicParams);
            RuleNameParam.AddToParamDictionary(dynamicParams);
            return(dynamicParams);
        }
        public object GetDynamicParameters()
        {
            if (!Api.CacheMode)
            {
                return(null);
            }

            DeviceNameParam = new PowershellDynamicParameter(this, "Device", (from d in Api.Devices select d.device_name).ToArray());
            DeviceNameParam.AllowMultiple = true;
            DeviceNameParam.Position      = 1;

            var classes = (from c in Api.Threats select c.GetClassificationString());

            string[] classifications = new string[] { };
            if (classes.Any())
            {
                classifications = classes.Distinct().OrderBy(d => d).ToArray();
            }
            ClassificationParam = new PowershellDynamicParameter(this, "Classification", classifications);
            ClassificationParam.AllowMultiple = true;
            ClassificationParam.Position      = 1;

            var dynamicParams = DeviceNameParam.GetParamDictionary();

            ClassificationParam.AddToParamDictionary(dynamicParams);
            return(dynamicParams);
        }
        public object GetDynamicParameters()
        {
            if (!Api.CacheMode)
            {
                return(null);
            }

            DeviceNameParam = new PowershellDynamicParameter(this, "Name", (from p in Api.Devices select p.device_name).ToArray());
            DeviceNameParam.ParameterSetName = "ByDeviceName";
            DeviceNameParam.AllowMultiple    = true;
            DeviceNameParam.Position         = 1;
            var d = DeviceNameParam.GetParamDictionary();

            PolicyNameParam          = new PowershellDynamicParameter(this, "PolicyName", (from p in Api.Policies select p.name).ToArray());
            PolicyNameParam.Position = 2;
            PolicyNameParam.AddToParamDictionary(d);
            return(d);
        }
Example #4
0
        public object GetDynamicParameters()
        {
            if (!Api.CacheMode)
            {
                return(null);
            }

            DeviceNameParam = new PowershellDynamicParameter(this, "Device", (from d in Api.Devices select d.device_name).ToArray());
            DeviceNameParam.AllowMultiple = true;

            RuleNameParam = new PowershellDynamicParameter(this, "Rule", (from d in Api.DetectionRules select d.Name).ToArray());
            RuleNameParam.AllowMultiple = true;

            var dynamicParams = DeviceNameParam.GetParamDictionary();

            RuleNameParam.AddToParamDictionary(dynamicParams);
            return(dynamicParams);
        }