当前位置: 首页>>代码示例>>C#>>正文


C# ICruiseRequest.RetrieveSessionToken方法代码示例

本文整理汇总了C#中ICruiseRequest.RetrieveSessionToken方法的典型用法代码示例。如果您正苦于以下问题:C# ICruiseRequest.RetrieveSessionToken方法的具体用法?C# ICruiseRequest.RetrieveSessionToken怎么用?C# ICruiseRequest.RetrieveSessionToken使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ICruiseRequest的用法示例。


在下文中一共展示了ICruiseRequest.RetrieveSessionToken方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: GenerateAuditHistory

        private IResponse GenerateAuditHistory(ICruiseRequest request)
        {
            var velocityContext = new Hashtable();
            var links = new List<IAbsoluteLink>();
            links.Add(new ServerLink(request.UrlBuilder, request.ServerSpecifier, "Server", ActionName));

            ProjectStatusListAndExceptions projects = farmService.GetProjectStatusListAndCaptureExceptions(request.ServerSpecifier, request.RetrieveSessionToken());
            foreach (ProjectStatusOnServer projectStatusOnServer in projects.StatusAndServerList)
            {
                DefaultProjectSpecifier projectSpecifier = new DefaultProjectSpecifier(projectStatusOnServer.ServerSpecifier, projectStatusOnServer.ProjectStatus.Name);
                links.Add(new ProjectLink(request.UrlBuilder, projectSpecifier, projectSpecifier.ProjectName, ServerAuditHistoryServerPlugin.ActionName));
            }
            velocityContext["projectLinks"] = links;
            string sessionToken = request.RetrieveSessionToken(sessionRetriever);
            if (!string.IsNullOrEmpty(request.ProjectName))
            {
                velocityContext["currentProject"] = request.ProjectName;
                AuditFilterBase filter = AuditFilters.ByProject(request.ProjectName);
                velocityContext["auditHistory"] = farmService.ReadAuditRecords(request.ServerSpecifier, sessionToken, 0, 100, filter);
            }
            else
            {
                velocityContext["auditHistory"] = new ServerLink(request.UrlBuilder, request.ServerSpecifier, string.Empty, DiagnosticsActionName);
                velocityContext["auditHistory"] = farmService.ReadAuditRecords(request.ServerSpecifier, sessionToken, 0, 100);
            }

            return viewGenerator.GenerateView(@"AuditHistory.vm", velocityContext);
        }
开发者ID:kascomp,项目名称:CruiseControl.NET,代码行数:28,代码来源:ServerAuditHistoryServerPlugin.cs

示例2: Execute

        public IResponse Execute(ICruiseRequest request)
        {
            Hashtable velocityContext = new Hashtable();
            var links = new List<IAbsoluteLink>();
            links.Add(new ServerLink(request.UrlBuilder, request.ServerSpecifier, "Server Security Configuration", ActionName));

            ProjectStatusListAndExceptions projects = farmService.GetProjectStatusListAndCaptureExceptions(request.ServerSpecifier, request.RetrieveSessionToken());
            foreach (ProjectStatusOnServer projectStatusOnServer in projects.StatusAndServerList)
            {
                DefaultProjectSpecifier projectSpecifier = new DefaultProjectSpecifier(projectStatusOnServer.ServerSpecifier, projectStatusOnServer.ProjectStatus.Name);
                links.Add(new ProjectLink(request.UrlBuilder, projectSpecifier, projectSpecifier.ProjectName, ServerSecurityConfigurationServerPlugin.ActionName));
            }
            velocityContext["projectLinks"] = links;
            string sessionToken = request.RetrieveSessionToken(sessionRetriever);
            string securityConfig = farmService.GetServerSecurity(request.ServerSpecifier, sessionToken);
            XmlDocument document = new XmlDocument();
            document.LoadXml(securityConfig);
            if (string.IsNullOrEmpty(request.ProjectName))
            {
                securityConfig = document.SelectSingleNode("/security/manager").OuterXml;
            }
            else
            {
                velocityContext["currentProject"] = request.ProjectSpecifier.ProjectName;
                string xpath = string.Format(System.Globalization.CultureInfo.CurrentCulture,"/security/projects/projectSecurity[name='{0}']/authorisation", request.ProjectSpecifier.ProjectName);
                securityConfig = document.SelectSingleNode(xpath).OuterXml;
            }
            string xmlData = FormatXml(securityConfig);
            velocityContext["log"] = xmlData;

            return viewGenerator.GenerateView(@"SecurityConfiguration.vm", velocityContext);
        }
开发者ID:robrich,项目名称:CruiseControl.NET,代码行数:32,代码来源:ServerSecurityConfigurationServerPlugin.cs

示例3: Execute

		public IResponse Execute(ICruiseRequest request)
		{
			Hashtable velocityContext = new Hashtable();
			var links = new List<IAbsoluteLink>();
			links.Add(new ServerLink(urlBuilder, request.ServerSpecifier, "Server Log", ActionName));

			ProjectStatusListAndExceptions projects = farmService.GetProjectStatusListAndCaptureExceptions(request.ServerSpecifier,
                request.RetrieveSessionToken());
			foreach (ProjectStatusOnServer projectStatusOnServer in projects.StatusAndServerList)
			{
				DefaultProjectSpecifier projectSpecifier = new DefaultProjectSpecifier(projectStatusOnServer.ServerSpecifier, projectStatusOnServer.ProjectStatus.Name);
				links.Add(new ProjectLink(urlBuilder, projectSpecifier, projectSpecifier.ProjectName, ServerLogProjectPlugin.ActionName));
			}
			velocityContext["projectLinks"] = links;
            if (string.IsNullOrEmpty(request.ProjectName))
			{
				velocityContext["log"] = HttpUtility.HtmlEncode(farmService.GetServerLog(request.ServerSpecifier, request.RetrieveSessionToken()));
			}
			else
			{
				velocityContext["currentProject"] = request.ProjectSpecifier.ProjectName;
				velocityContext["log"] = HttpUtility.HtmlEncode(farmService.GetServerLog(request.ProjectSpecifier, request.RetrieveSessionToken()));
			}

			return viewGenerator.GenerateView(@"ServerLog.vm", velocityContext);
		}
开发者ID:kascomp,项目名称:CruiseControl.NET,代码行数:26,代码来源:ServerLogServerPlugin.cs

示例4: Execute

	    public IResponse Execute(ICruiseRequest cruiseRequest)
		{
			if (xslFileName == null)
			{
				throw new ApplicationException("XSL File Name has not been set for XSL Report Action");
			}
			Hashtable xsltArgs = new Hashtable();
            if (cruiseRequest.Request.ApplicationPath == "/")
            {
                xsltArgs["applicationPath"] = string.Empty;
            }
            else
            {
                xsltArgs["applicationPath"] = cruiseRequest.Request.ApplicationPath;
            }

            // Add the input parameters
            if (Parameters != null)
            {
                foreach (var parameter in Parameters)
                {
                    xsltArgs.Add(parameter.Name, parameter.Value);
                }
            }

			return new HtmlFragmentResponse(buildLogTransformer.Transform(cruiseRequest.BuildSpecifier, new string[] {xslFileName}, xsltArgs, cruiseRequest.RetrieveSessionToken()));
		}
开发者ID:kascomp,项目名称:CruiseControl.NET,代码行数:27,代码来源:XslReportBuildAction.cs

示例5: LoadHtmlFile

 /// <summary>
 /// Loads the HTML file.
 /// </summary>
 /// <returns></returns>
 private string LoadHtmlFile(ICruiseRequest cruiseRequest, string fileName)
 {
     try
     {
         // Retrieve the file transfer object
         var fileTransfer = farmService.RetrieveFileTransfer(cruiseRequest.BuildSpecifier, fileName, cruiseRequest.RetrieveSessionToken());
         if (fileTransfer != null)
         {
             // Transfer the file across and load it into a string
             var stream = new MemoryStream();
             fileTransfer.Download(stream);
             stream.Seek(0, SeekOrigin.Begin);
             var reader = new StreamReader(stream);
             string htmlData = reader.ReadToEnd();
             return htmlData;
         }
         else
         {
             return "<div>Unable to find file</div>";
         }
     }
     catch (Exception error)
     {
         return "<div>An error occurred while retrieving the file: " + error.Message + "</div>";
     }
 }
开发者ID:derrills1,项目名称:ccnet_gitmode,代码行数:30,代码来源:BuildFileDownload.cs

示例6: Execute

 public IResponse Execute(ICruiseRequest cruiseRequest)
 {
     string fileName = cruiseRequest.Request.GetText("file").Replace("/", "\\");
     if (fileName.EndsWith(".html", StringComparison.InvariantCultureIgnoreCase) ||
         fileName.EndsWith(".htm", StringComparison.InvariantCultureIgnoreCase))
     {
         var htmlData = LoadHtmlFile(cruiseRequest, fileName);
         var prefixPos = fileName.LastIndexOf("\\");
         var prefix = prefixPos >= 0 ? fileName.Substring(0, prefixPos + 1) : string.Empty;
         MatchEvaluator evaluator = (match) =>
         {
             var splitPos = match.Value.IndexOf("=\"");
             var newValue = match.Value.Substring(0, splitPos + 2) +
                 "RetrieveBuildFile.aspx?file=" +
                 prefix +
                 match.Value.Substring(splitPos + 2);
             return newValue;
         };
         htmlData = linkFinder.Replace(htmlData, evaluator);
         return new HtmlFragmentResponse(htmlData);
     }
     else
     {
         // Retrieve the file transfer object
         var fileTransfer = farmService.RetrieveFileTransfer(cruiseRequest.BuildSpecifier, fileName, cruiseRequest.RetrieveSessionToken());
         if (fileTransfer != null)
         {
             return new FileTransferResponse(fileTransfer, fileName);
         }
         else
         {
             return new HtmlFragmentResponse("<div>Unable to find file</div>");
         }
     }
 }
开发者ID:derrills1,项目名称:ccnet_gitmode,代码行数:35,代码来源:BuildFileDownload.cs

示例7: Execute

        public IResponse Execute(ICruiseRequest cruiseRequest)
        {
            Hashtable velocityContext = new Hashtable();
            velocityContext["message"] = string.Empty;
            velocityContext["error"] = string.Empty;
            string oldPassword = cruiseRequest.Request.GetText("oldPassword");
            string newPassword1 = cruiseRequest.Request.GetText("newPassword1");
            string newPassword2 = cruiseRequest.Request.GetText("newPassword2");
            if (!string.IsNullOrEmpty(oldPassword) &&
                !string.IsNullOrEmpty(newPassword1))
            {
                try
                {
                    if (newPassword1 != newPassword2) throw new CruiseControlException("New passwords do not match");
					string sessionToken = cruiseRequest.RetrieveSessionToken();
                    farmService.ChangePassword(cruiseRequest.ServerName, sessionToken, oldPassword, newPassword1);
                    velocityContext["message"] = "Password has been changed";
                }
                catch (Exception error)
                {
                    velocityContext["error"] = error.Message;
                }
            }
            return viewGenerator.GenerateView("ChangePasswordAction.vm", velocityContext);
        }
开发者ID:kascomp,项目名称:CruiseControl.NET,代码行数:25,代码来源:ChangePasswordSecurityAction.cs

示例8: Execute

        public IResponse Execute(ICruiseRequest request)
        {
            var velocityContext = new Hashtable();
            this.translations = Translations.RetrieveCurrent();

            var projectStatus = farmService.GetProjectStatusListAndCaptureExceptions(request.RetrieveSessionToken());
            var urlBuilder = request.UrlBuilder;
            var category = request.Request.GetText("Category");

            var gridRows = this.projectGrid.GenerateProjectGridRows(projectStatus.StatusAndServerList, BaseActionName, 
                                                                    ProjectGridSortColumn.Category, true, 
                                                                    category, urlBuilder,this.translations);

            var categories = new SortedDictionary<string, CategoryInformation>();
           
            foreach (var row in gridRows)
            {
                var rowCategory = row.Category;
                CategoryInformation categoryRows;
                if (!categories.TryGetValue(rowCategory, out categoryRows))
                {
                    categoryRows = new CategoryInformation(rowCategory);
                    categories.Add(rowCategory, categoryRows);                    
                }

                categoryRows.AddRow(row);                
            }

            velocityContext["categories"] = categories.Values;          

            return viewGenerator.GenerateView("CategorizedFarmReport.vm", velocityContext);
        }
开发者ID:RubenWillems,项目名称:CruiseControl.NET,代码行数:32,代码来源:CategorizedFarmReportFarmPlugin.cs

示例9: Execute

 /// <summary>
 /// Executes the specified cruise request.
 /// </summary>
 /// <param name="cruiseRequest">The cruise request.</param>
 /// <returns></returns>
 public IResponse Execute(ICruiseRequest cruiseRequest)
 {
     ProjectStatusListAndExceptions projectStatuses = farmService.GetProjectStatusListAndCaptureExceptions(cruiseRequest.ServerSpecifier,
         cruiseRequest.RetrieveSessionToken(sessionRetriever));
     ProjectStatus projectStatus = projectStatuses.GetStatusForProject(cruiseRequest.ProjectName);
     string xml = new CruiseXmlWriter().Write(projectStatus);
     return new XmlFragmentResponse(xml);
 }
开发者ID:kyght,项目名称:CruiseControl.NET,代码行数:13,代码来源:ProjectXmlReport.cs

示例10: Execute

		public IResponse Execute(ICruiseRequest cruiseRequest)
		{
			Hashtable velocityContext = new Hashtable();
			string sessionToken = cruiseRequest.RetrieveSessionToken();
			if (!string.IsNullOrEmpty(sessionToken))
				farmService.Logout(cruiseRequest.ServerName, sessionToken);
			storer.StoreSessionToken(null);
			return viewGenerator.GenerateView("LoggedOut.vm", velocityContext);
		}
开发者ID:alexanderyaremchuk,项目名称:CruiseControl.NET,代码行数:9,代码来源:LogoutSecurityAction.cs

示例11: Execute

		public IResponse Execute(ICruiseRequest request)
		{
			IProjectSpecifier projectSpecifier = request.ProjectSpecifier;
			bool purgeWorkingDirectory = request.Request.GetChecked("PurgeWorkingDirectory");
			bool purgeArtifactDirectory = request.Request.GetChecked("PurgeArtifactDirectory");
			bool purgeSourceControlEnvironment = request.Request.GetChecked("PurgeSourceControlEnvironment");
			farmService.DeleteProject(projectSpecifier, purgeWorkingDirectory, purgeArtifactDirectory, purgeSourceControlEnvironment, request.RetrieveSessionToken());
			return viewBuilder.BuildView(BuildModel(projectSpecifier, purgeWorkingDirectory, purgeArtifactDirectory, purgeSourceControlEnvironment));
		}
开发者ID:kascomp,项目名称:CruiseControl.NET,代码行数:9,代码来源:DoDeleteProjectAction.cs

示例12: Execute

 public IResponse Execute(ICruiseRequest cruiseRequest)
 {
     IProjectSpecifier projectSpecifier = cruiseRequest.ProjectSpecifier;
     string projectXml = cruiseManager.GetProject(projectSpecifier, cruiseRequest.RetrieveSessionToken());
     //return new HtmlFragmentResponse("<pre><code>" + HttpUtility.HtmlEncode(FormatXml(projectXml)) + "</code></pre>");
     var xmlContext = new Hashtable();
     xmlContext["xml"] = HttpUtility.HtmlEncode(FormatXml(projectXml));
     return viewGenerator.GenerateView(@"ProjectConfiguration.vm", xmlContext);
 }
开发者ID:kascomp,项目名称:CruiseControl.NET,代码行数:9,代码来源:ViewConfigurationProjectPlugin.cs

示例13: Execute

        public IResponse Execute(ICruiseRequest request)
        {
            var velocityContext = new Hashtable();
            this.translations = Translations.RetrieveCurrent();

            var projectStatus = farmService.GetProjectStatusListAndCaptureExceptions(request.RetrieveSessionToken());
            var urlBuilder = request.UrlBuilder;
            var category = request.Request.GetText("Category");

            var sessionToken = request.RetrieveSessionToken();
            velocityContext["forceBuildMessage"] = ForceBuildIfNecessary(request.Request, sessionToken);

            var gridRows = this.projectGrid.GenerateProjectGridRows(projectStatus.StatusAndServerList, BaseActionName,
                                                                    ProjectGridSortColumn.Category, true,
                                                                    category, urlBuilder, this.translations);

            var categories = new SortedDictionary<string, CategoryInformation>();

            foreach (var row in gridRows)
            {
                var rowCategory = row.Category;
                CategoryInformation categoryRows;
                if (!categories.TryGetValue(rowCategory, out categoryRows))
                {
                    categoryRows = new CategoryInformation(rowCategory);
                    categories.Add(rowCategory, categoryRows);
                }

                categoryRows.AddRow(row);
            }

            // there is a category specified via a link, so expand that category by default
            // it's annoying to specify a category and still have to press the show link
            if (!string.IsNullOrEmpty(category))
            {
                    categories[category].Display = true;
            }



            velocityContext["categories"] = categories.Values;

            return viewGenerator.GenerateView("CategorizedFarmReport.vm", velocityContext);
        }
开发者ID:alexanderyaremchuk,项目名称:CruiseControl.NET,代码行数:44,代码来源:CategorizedFarmReportFarmPlugin.cs

示例14: Execute

 public IResponse Execute(ICruiseRequest cruiseRequest)
 {
     string fileName = cruiseRequest.Request.GetText("file");
     string label = cruiseRequest.Request.GetText("label");
     string path = fileName;
     if (!string.IsNullOrEmpty(label)) path = Path.Combine(label, fileName);
     RemotingFileTransfer fileTransfer = farmService.RetrieveFileTransfer(cruiseRequest.ProjectSpecifier, path, cruiseRequest.RetrieveSessionToken());
     FileTransferResponse response = new FileTransferResponse(fileTransfer, fileName);
     return response;
 }
开发者ID:derrills1,项目名称:ccnet_gitmode,代码行数:10,代码来源:ProjectFileDownload.cs

示例15: Execute

 public IResponse Execute(ICruiseRequest cruiseRequest)
 {
     if (this.XslFileNames == null)
     {
         throw new ApplicationException("XSL File Name has not been set for XSL Report Action");
     }
     Hashtable xsltArgs = new Hashtable();
     xsltArgs["applicationPath"] = cruiseRequest.Request.ApplicationPath;
     var fileNames = this.GenerateFilenameList(cruiseRequest);
     return new HtmlFragmentResponse(buildLogTransformer.Transform(cruiseRequest.BuildSpecifier, fileNames.ToArray(), xsltArgs, cruiseRequest.RetrieveSessionToken()));
 }
开发者ID:derrills1,项目名称:ccnet_gitmode,代码行数:11,代码来源:MultipleXslReportBuildAction.cs


注:本文中的ICruiseRequest.RetrieveSessionToken方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。