Ejemplo n.º 1
0
        public static void OpenProject(TFSCmdletBase cmdlet, string[] projectNames)
        {
            string currentProjectName = string.Empty;

            try {

                if (null != projectNames && 0 < projectNames.Length) {

                    foreach (string projectName in projectNames) {

                        currentProjectName = projectName;

                        ITestManagementService testMgmtSvc =
                            (ITestManagementService)CurrentData.CurrentCollection.GetService(typeof(ITestManagementService));

                        WorkItemStore store =
                            (WorkItemStore)CurrentData.CurrentCollection.GetService(typeof(WorkItemStore));

                        ITestManagementTeamProject project =
                            testMgmtSvc.GetTeamProject(projectName);

                        cmdlet.WriteVerbose(
                            cmdlet,
                            "Connected to the project '" +
                            projectNames +
                            "'");

                        CurrentData.CurrentProject = project;

                        cmdlet.WriteObject(cmdlet, project);

                    }

                } else {

                    cmdlet.WriteError(
                        cmdlet,
                        "A wrong name or names were provided for project search",
                        "WrongProjectName",
                        ErrorCategory.InvalidArgument,
                        true);

                }
            }
            catch (Exception eOpenProject) {

                cmdlet.WriteError(
                    cmdlet,
                    "Failed to connect to project '" +
                    currentProjectName +
                    "'." +
                    eOpenProject.Message,
                    "FailedToConnect",
                    ErrorCategory.InvalidResult,
                    true);
            }
        }
Ejemplo n.º 2
0
        public static void OpenProjectCollection(TFSCmdletBase cmdlet, string[] collectionNames)
        {
            try
            {
                if (null != collectionNames && 0 < collectionNames.Length) {

                    foreach (string collectionName in collectionNames) {

                        var projectCollectionUri =
                            new Uri(
                                CurrentData.CurrentServer.Uri.OriginalString +
                                "/" +
                                collectionName);

                        cmdlet.WriteVerbose(
                            cmdlet,
                            "connecing to the collection: '" +
                            projectCollectionUri.ToString() +
                            "'");

                        var projectCollection =
                            TfsTeamProjectCollectionFactory.GetTeamProjectCollection(projectCollectionUri);

                        cmdlet.WriteVerbose(
                            cmdlet,
                            "Collection is connected, checking the connection");

                        try {
                            projectCollection.EnsureAuthenticated();
                        }
                        catch (Exception eTfsCollectionConnected) {

                            cmdlet.WriteError(
                                cmdlet,
                                "Failed to connect to collection '" +
                                projectCollectionUri.ToString() +
                                "'." +
                                eTfsCollectionConnected.Message,
                                "FailedToConnect",
                                ErrorCategory.InvalidResult,
                                true);
                        }

                        cmdlet.WriteVerbose(cmdlet, "connected to the collection");

                        CurrentData.CurrentCollection = projectCollection;

                        cmdlet.WriteObject(cmdlet, projectCollection);
                    }

                } else {

                    cmdlet.WriteError(
                        cmdlet,
                        "A wrong name or names were provided for collection search",
                        "WrongCollectionName",
                        ErrorCategory.InvalidArgument,
                        true);

                }
            }
            //            catch (TeamFoundationServerUnauthorizedException ex)
            //            {
            //                // handle access denied
            //            }
            //            catch (TeamFoundationServiceUnavailableException ex)
            //            {
            //                // handle service unavailable
            //            }
            catch (WebException ex)
            {
                // handle other web exception
            }
        }
Ejemplo n.º 3
0
        public static void ConnectTFServer(TFSCmdletBase cmdlet, string url, ICredentials credentials)
        {
            try
            {
                Uri uri =
                    new Uri(url);

                TfsConfigurationServer tfsServer =
                    new TfsConfigurationServer(
                        uri,
                        credentials);

                cmdlet.WriteVerbose(
                    cmdlet,
                    "Connected, checking the connection");

                try {
                    tfsServer.EnsureAuthenticated();
                }
                catch (Exception eTfsServerConnected) {

                    cmdlet.WriteError(
                        cmdlet,
                        "Failed to connect to server '" +
                        url +
                        "'." +
                        eTfsServerConnected.Message,
                        "FailedToConnect",
                        ErrorCategory.InvalidResult,
                        true);
                }

                CurrentData.CurrentServer = tfsServer;

                cmdlet.WriteVerbose(cmdlet,
                                    "Connected to: '" +
                                    url +
                                    "'");

                cmdlet.WriteObject(cmdlet, tfsServer);
            }
            //            catch (TeamFoundationServerUnauthorizedException ex)
            //            {
            //                // handle access denied
            //            }
            //            catch (TeamFoundationServiceUnavailableException ex)
            //            {
            //                // handle service unavailable
            //            }
            catch (WebException ex)
            {
                // handle other web exception
            }
        }