public override StepInput[] GetInputs(IOrchestrationComponent component)
        {
            //if (((EqualsRule)component).DataType
            StepInput input1 = new StepInput()
            {
                Name = "value1",
                SelectValuePathName = ((EqualsRule)component).VariableName
            };
            VariableOrValueDataType var = ((EqualsRule)component).CompareTo;
            StepInput input2            = VVDTUtility.ConvertVariableOrValueDataTypeToInputMapping(var, "value2");


            return(new StepInput[] {
                input1, input2
            });
        }
        public static StepInput ConvertVariableOrValueDataTypeToInputMapping(VariableOrValueDataType var, string newVariableName)
        {
            StepInput result = new StepInput();

            if (var != null)
            {
                if (var.IsFilledIn())
                {
                    if (var.IsConstant())
                    {
                        result.MappingType   = InputMappingType.Constant;
                        result.Name          = newVariableName;
                        result.ConstantValue = var.DefaultValue.ToString();

                        return(result);
                    }
                    else
                    {
                        // It's probably a variable or a merge
                        if (var.HasMergeData)
                        {
                            result.MappingType   = InputMappingType.MergeText;
                            result.ConstantValue = var.StringMerge.PreMergedData;
                            result.Name          = newVariableName;
                            return(result);
                        }
                        else
                        {
                            // It's just a variable
                            result.MappingType         = InputMappingType.SelectValue;
                            result.Name                = newVariableName;
                            result.SelectValuePathName = var.Variables[0].ToString();

                            return(result);
                        }
                    }
                }
            }
            return(null);
        }