Пример #1
0
        internal static void SetCustomOption(
            CimOperationOptions operationOptions,
            string optionName,
            object optionValue,
            CimSensitiveValueConverter cimSensitiveValueConverter)
        {
            Dbg.Assert(!string.IsNullOrWhiteSpace(optionName), "Caller should verify optionName != null");

            if (optionValue is null)
            {
                return;
            }

            object  cimValue = cimSensitiveValueConverter.ConvertFromDotNetToCim(optionValue);
            CimType cimType  = CimConverter.GetCimType(CimSensitiveValueConverter.GetCimType(optionValue.GetType()));

            operationOptions.SetCustomOption(optionName, cimValue, cimType, mustComply: false);
        }
        private IEnumerable <MethodParameter> GetMethodInputParametersCore(Func <MethodParameter, bool> filter)
        {
            IEnumerable <MethodParameter> inputParameters = _methodInvocationInfo.Parameters.Where(filter);

            var result = new List <MethodParameter>();

            foreach (MethodParameter inputParameter in inputParameters)
            {
                object cimValue = CimSensitiveValueConverter.ConvertFromDotNetToCim(inputParameter.Value);
                Type   cimType  = CimSensitiveValueConverter.GetCimType(inputParameter.ParameterType);
                CimValueConverter.AssertIntrinsicCimType(cimType);
                result.Add(new MethodParameter
                {
                    Name           = inputParameter.Name,
                    ParameterType  = cimType,
                    Bindings       = inputParameter.Bindings,
                    Value          = cimValue,
                    IsValuePresent = inputParameter.IsValuePresent
                });
            }
            return(result);
        }