public IResponse Execute(IRequest request) { ICruiseRequest actualRequest = new RequestWrappingCruiseRequest(request, urlBuilder, retriever); List<ParameterBase> parameters = farmService.ListBuildParameters(actualRequest.ProjectSpecifier, null); XmlDocument document = new XmlDocument(); XmlElement rootNode = document.CreateElement("parameters"); document.AppendChild(rootNode); foreach (ParameterBase parameter in parameters) { XmlElement paramNode = document.CreateElement("parameter"); paramNode.SetAttribute("name", parameter.Name); paramNode.SetAttribute("displayName", parameter.DisplayName); paramNode.SetAttribute("description", parameter.Description); paramNode.SetAttribute("defaultValue", parameter.ClientDefaultValue); rootNode.AppendChild(paramNode); if (parameter.AllowedValues != null) { foreach (string value in parameter.AllowedValues) { XmlElement valueNode = document.CreateElement("value"); paramNode.AppendChild(valueNode); valueNode.InnerText = value; } } } return new XmlFragmentResponse(rootNode.OuterXml); }
private void CreateCruiseRequest(string relativePath) { DynamicMock urlBuilderMock = new DynamicMock(typeof(ICruiseUrlBuilder)); underlyingRequest = new NameValueCollectionRequest(queryString, null, applicationPath + relativePath, null, applicationPath); cruiseRequest = new RequestWrappingCruiseRequest(underlyingRequest, (ICruiseUrlBuilder)urlBuilderMock.MockInstance, null); }