UIAutomation.UiaProvider.NewDriveDynamicParameters C# (CSharp) Method

NewDriveDynamicParameters() protected method

protected NewDriveDynamicParameters ( ) : object
return object
        protected override object NewDriveDynamicParameters()
        {
            try{
                WriteVerbose("UiaProvider::NewDriveDynamicParameters()");
                _dynamicParameters =
                    new RuntimeDefinedParameterDictionary();
                Collection<Attribute> atts1 = new Collection<Attribute>();
                ParameterAttribute parameterAttribute1 = new ParameterAttribute {Mandatory = true};
                /*
                ParameterAttribute parameterAttribute1 = new ParameterAttribute();
                parameterAttribute1.Mandatory = true;
                */
                //parameterAttribute1.ParameterSetName = "WindowNameParameterSet";
                atts1.Add(parameterAttribute1);
                AllowEmptyStringAttribute attr1 = new AllowEmptyStringAttribute();
                atts1.Add(attr1);
                _dynamicParameters.Add(
                    "WindowName", 
                    new RuntimeDefinedParameter(
                        "WindowName", 
                        typeof(string), 
                        atts1));
                
                Collection<Attribute> atts2 = new Collection<Attribute>();
                ParameterAttribute parameterAttribute2 = new ParameterAttribute {Mandatory = true};
                /*
                ParameterAttribute parameterAttribute2 = new ParameterAttribute();
                parameterAttribute2.Mandatory = true;
                */
                //parameterAttribute2.ParameterSetName = "ProcessNameParameterSet";
                atts2.Add(parameterAttribute2);
                AllowEmptyStringAttribute attr2 = new AllowEmptyStringAttribute();
                atts2.Add(attr2);
                _dynamicParameters.Add(
                    "ProcessName", 
                    new RuntimeDefinedParameter(
                        "ProcessName", 
                        typeof(string), 
                        atts2));
                
                Collection<Attribute> atts3 = new Collection<Attribute>();
                ParameterAttribute parameterAttribute3 = new ParameterAttribute {Mandatory = true};
                /*
                ParameterAttribute parameterAttribute3 = new ParameterAttribute();
                parameterAttribute3.Mandatory = true;
                */
                //parameterAttribute3.ParameterSetName = "ProcessIdParameterSet";
                atts3.Add(parameterAttribute3);
                AllowEmptyStringAttribute attr3 = new AllowEmptyStringAttribute();
                atts3.Add(attr3);
                _dynamicParameters.Add(
                    "ProcessId", 
                    new RuntimeDefinedParameter(
                        "ProcessId", 
                        typeof(int), 
                        atts3));
                
                return _dynamicParameters;
            }
            catch (Exception e) {
                WriteVerbose(e.Message);
                WriteVerbose("UiaProvider::NewDriveDynamicParameters()");
                return null;
            }
        }