Ejemplo n.º 1
0
 internal static TfsTeamProjectCollection GetTeamProjectCollection(TfsConfigurer configurer)
 {
     if (configurer.UseSystemCredentials)
     {
         var projectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(configurer.BaseUri);
         projectCollection.EnsureAuthenticated();
         return projectCollection;
     }
     else
     {
         var projectCollection = new TfsTeamProjectCollection(configurer.BaseUri, new TfsClientCredentials(new WindowsCredential(new NetworkCredential(configurer.UserName, configurer.Password, configurer.Domain))));
         projectCollection.EnsureAuthenticated();
         return projectCollection;
     }
 }
Ejemplo n.º 2
0
 internal static TfsTeamProjectCollection GetTeamProjectCollection(TfsConfigurer configurer)
 {
     if (configurer.UseSystemCredentials)
     {
         var projectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(configurer.BaseUri);
         projectCollection.EnsureAuthenticated();
         return(projectCollection);
     }
     else
     {
         var projectCollection = new TfsTeamProjectCollection(configurer.BaseUri, new TfsClientCredentials(new WindowsCredential(new NetworkCredential(configurer.UserName, configurer.Password, configurer.Domain))));
         projectCollection.EnsureAuthenticated();
         return(projectCollection);
     }
 }
        private void CreateTfsConnectionControls()
        {
            var defaultCfg = (TfsConfigurer)this.GetExtensionConfigurer();
            var ctlError = new InfoBox { BoxType = InfoBox.InfoBoxTypes.Error, Visible = false };

            var txtBaseUrl = new ValidatingTextBox
            {
                Required = true,
                Text = defaultCfg.BaseUrl,
                Width = 350
            };

            var txtUserName = new ValidatingTextBox
            {
                DefaultText = "System credentials",
                Text = defaultCfg.UserName,
                Width = 350
            };
            var txtPassword = new PasswordTextBox
            {
                Text = defaultCfg.Password,
                Width = 350
            };
            var txtDomain = new ValidatingTextBox
            {
                Text = defaultCfg.Domain,
                Width = 350
            };

            txtBaseUrl.ServerValidate +=
                (s, e) =>
                {
                    var configurer = new TfsConfigurer
                    {
                        BaseUrl = txtBaseUrl.Text,
                        UserName = txtUserName.Text,
                        Password = txtPassword.Text,
                        UseSystemCredentials = string.IsNullOrWhiteSpace(txtUserName.Text)
                    };

                    var errorMessage = configurer.TestConnection();
                    if (!string.IsNullOrEmpty(errorMessage))
                    {
                        e.IsValid = false;
                        ctlError.Visible = true;
                        ctlError.Controls.Add(new P("An error occurred while attempting to connect: " + errorMessage));
                    }
                };

            this.wizardSteps.TfsConnection.Controls.Add(
                ctlError,
                new FormFieldGroup("TFS Server Name",
                    "The name of the Team Foundation Server to connect to, e.g. http://tfsserver:8080/tfs",
                    false,
                    new StandardFormField("Server Name:", txtBaseUrl)
                ),
                new FormFieldGroup("Credentials",
                    "Specify the credentials of the account you would like to use to connect to Team Foundation Server",
                    false,
                    new StandardFormField("Username:"******"Password:"******"Domain:", txtDomain)
                )
            );

            this.WizardStepChange += (s, e) =>
            {
                if (e.CurrentStep != this.wizardSteps.TfsConnection)
                    return;

                defaultCfg.BaseUrl = txtBaseUrl.Text;
                defaultCfg.UserName = txtUserName.Text;
                defaultCfg.Password = txtPassword.Text;
                var defaultProfile = StoredProcs
                        .ExtensionConfiguration_GetConfigurations(TfsConfigurer.TypeQualifiedName)
                        .Execute()
                        .Where(p => p.Default_Indicator == Domains.YN.Yes)
                        .FirstOrDefault() ?? new Tables.ExtensionConfigurations();

                StoredProcs
                    .ExtensionConfiguration_SaveConfiguration(
                        Util.NullIf(defaultProfile.ExtensionConfiguration_Id, 0),
                        TfsConfigurer.TypeQualifiedName,
                        defaultProfile.Profile_Name ?? "Default",
                        Util.Persistence.SerializeToPersistedObjectXml(defaultCfg),
                        Domains.YN.Yes)
                    .Execute();
            };
        }
Ejemplo n.º 4
0
 public TeamProjectPicker(TfsConfigurer config)
 {
     this.config = config;
     this.AutoPostBack = true;
 }
Ejemplo n.º 5
0
 public TeamProjectPicker(TfsConfigurer config)
 {
     this.config       = config;
     this.AutoPostBack = true;
 }
Ejemplo n.º 6
0
 public BuildDefinitionPicker(TfsConfigurer config)
 {
     this.config = config;
 }
Ejemplo n.º 7
0
        private void CreateTfsConnectionControls()
        {
            var defaultCfg = (TfsConfigurer)this.GetExtensionConfigurer();
            var ctlError   = new InfoBox {
                BoxType = InfoBox.InfoBoxTypes.Error, Visible = false
            };

            var txtBaseUrl = new ValidatingTextBox
            {
                Required    = true,
                Text        = defaultCfg.BaseUrl,
                DefaultText = "ex. http://tfsserver:8080/tfs"
            };

            var txtUserName = new ValidatingTextBox
            {
                DefaultText = "use system credentials",
                Text        = defaultCfg.UserName
            };
            var txtPassword = new PasswordTextBox
            {
                Text = defaultCfg.Password
            };
            var txtDomain = new ValidatingTextBox
            {
                Text = defaultCfg.Domain
            };

            txtBaseUrl.ServerValidate +=
                (s, e) =>
            {
                var configurer = new TfsConfigurer
                {
                    BaseUrl              = txtBaseUrl.Text,
                    UserName             = txtUserName.Text,
                    Password             = txtPassword.Text,
                    UseSystemCredentials = string.IsNullOrWhiteSpace(txtUserName.Text)
                };

                var errorMessage = configurer.TestConnection();
                if (!string.IsNullOrEmpty(errorMessage))
                {
                    e.IsValid        = false;
                    ctlError.Visible = true;
                    ctlError.Controls.Add(new P("An error occurred while attempting to connect: " + errorMessage));
                }
            };

            this.wizardSteps.TfsConnection.Controls.Add(
                ctlError,
                new SlimFormField("TFS collection URL:", txtBaseUrl
                                  )
            {
                HelpText = "To use a specific collection, use http://tfsserver:8080/tfs/CollectionName as an example URL. The collection name may be omitted if the TFS server is configured to use the DefaultCollection at /tfs."
            },
                new SlimFormField("Username:"******"Password:"******"Domain:", txtDomain)
                );

            this.WizardStepChange += (s, e) =>
            {
                if (e.CurrentStep != this.wizardSteps.TfsConnection)
                {
                    return;
                }

                defaultCfg.BaseUrl  = txtBaseUrl.Text;
                defaultCfg.UserName = txtUserName.Text;
                defaultCfg.Password = txtPassword.Text;
                var defaultProfile = StoredProcs
                                     .ExtensionConfiguration_GetConfigurations(TfsConfigurer.TypeQualifiedName)
                                     .Execute()
                                     .Where(p => p.Default_Indicator == Domains.YN.Yes)
                                     .FirstOrDefault() ?? new Tables.ExtensionConfigurations();

                StoredProcs
                .ExtensionConfiguration_SaveConfiguration(
                    Util.NullIf(defaultProfile.ExtensionConfiguration_Id, 0),
                    TfsConfigurer.TypeQualifiedName,
                    defaultProfile.Profile_Name ?? "Default",
                    Util.Persistence.SerializeToPersistedObjectXml(defaultCfg),
                    Domains.YN.Yes)
                .Execute();
            };
        }
Ejemplo n.º 8
0
        private void CreateTfsConnectionControls()
        {
            var defaultCfg = (TfsConfigurer)this.GetExtensionConfigurer();
            var ctlError = new InfoBox { BoxType = InfoBox.InfoBoxTypes.Error, Visible = false };

            var txtBaseUrl = new ValidatingTextBox
            {
                Required = true,
                Text = defaultCfg.BaseUrl,
                DefaultText = "ex. http://tfsserver:8080/tfs"
            };

            var txtUserName = new ValidatingTextBox
            {
                DefaultText = "use system credentials",
                Text = defaultCfg.UserName
            };
            var txtPassword = new PasswordTextBox
            {
                Text = defaultCfg.Password
            };
            var txtDomain = new ValidatingTextBox
            {
                Text = defaultCfg.Domain
            };

            txtBaseUrl.ServerValidate +=
                (s, e) =>
                {
                    var configurer = new TfsConfigurer
                    {
                        BaseUrl = txtBaseUrl.Text,
                        UserName = txtUserName.Text,
                        Password = txtPassword.Text,
                        UseSystemCredentials = string.IsNullOrWhiteSpace(txtUserName.Text)
                    };

                    var errorMessage = configurer.TestConnection();
                    if (!string.IsNullOrEmpty(errorMessage))
                    {
                        e.IsValid = false;
                        ctlError.Visible = true;
                        ctlError.Controls.Add(new P("An error occurred while attempting to connect: " + errorMessage));
                    }
                };

            this.wizardSteps.TfsConnection.Controls.Add(
                ctlError,
                new SlimFormField("TFS collection URL:", txtBaseUrl
                )
                {
                    HelpText = "To use a specific collection, use http://tfsserver:8080/tfs/CollectionName as an example URL. The collection name may be omitted if the TFS server is configured to use the DefaultCollection at /tfs."
                },
                new SlimFormField("Username:"******"Password:"******"Domain:", txtDomain)
            );

            this.WizardStepChange += (s, e) =>
            {
                if (e.CurrentStep != this.wizardSteps.TfsConnection)
                    return;

                defaultCfg.BaseUrl = txtBaseUrl.Text;
                defaultCfg.UserName = txtUserName.Text;
                defaultCfg.Password = txtPassword.Text;
                var defaultProfile = StoredProcs
                        .ExtensionConfiguration_GetConfigurations(TfsConfigurer.TypeQualifiedName)
                        .Execute()
                        .Where(p => p.Default_Indicator == Domains.YN.Yes)
                        .FirstOrDefault() ?? new Tables.ExtensionConfigurations();

                StoredProcs
                    .ExtensionConfiguration_SaveConfiguration(
                        Util.NullIf(defaultProfile.ExtensionConfiguration_Id, 0),
                        TfsConfigurer.TypeQualifiedName,
                        defaultProfile.Profile_Name ?? "Default",
                        Util.Persistence.SerializeToPersistedObjectXml(defaultCfg),
                        Domains.YN.Yes)
                    .Execute();
            };
        }
Ejemplo n.º 9
0
 public BuildDefinitionPicker(TfsConfigurer config)
 {
     this.config = config;
 }