public ConnectionEntryDialog(DialogViewModel parentDialog, SavedXrmRecordConfiguration objectToEnter, IVisualStudioService visualStudioService, bool addtoSolution, Action doPostEntry = null)
            : base(parentDialog)
        {
            VisualStudioService = visualStudioService;
            AddToSolution       = addtoSolution;
            ObjectToEnter       = objectToEnter;
            var configEntryDialog = new ObjectEntryDialog(ObjectToEnter, this, ApplicationController, saveButtonLabel: "Next");

            SubDialogs  = new DialogViewModel[] { configEntryDialog };
            DoPostEntry = doPostEntry;
        }
        public void VsixRefreshConnectionDialogTest()
        {
            var xrmConfiguration       = new InterfaceMapperFor <IXrmConfiguration, XrmConfiguration>().Map(XrmConfiguration);
            var xrmRecordConfiguration = SavedXrmRecordConfiguration.CreateNew(new XrmConfigurationMapper().Map(xrmConfiguration));
            var dialog = new ConnectionEntryDialog(CreateDialogController(), xrmRecordConfiguration, VisualStudioService, true);

            dialog.Controller.BeginDialog();

            var entryViewModel = (ObjectEntryViewModel)dialog.Controller.UiItems.First();

            Assert.IsTrue(entryViewModel.Validate());
            entryViewModel.OnSave();
        }
Exemple #3
0
        private SavedXrmRecordConfiguration GetActiveConnectionToSave()
        {
            SavedXrmRecordConfiguration connection = null;

            if (XrmPackageSettings.Connections.Count() == 1)
            {
                connection = XrmPackageSettings.Connections.First();
            }
            else if (XrmPackageSettings.Connections.Count(c => c.Active) == 1)
            {
                connection = XrmPackageSettings.Connections.First(c => c.Active);
            }
            return(connection);
        }
        public SavedXrmRecordConfiguration GetSavedXrmRecordConfiguration()
        {
            var xrmConfig   = GetSavedTestEncryptedXrmConfiguration();
            var enumMapper  = new EnumMapper <XrmRecordAuthenticationProviderType, AuthenticationProviderType>();
            var savedConfig = new SavedXrmRecordConfiguration()
            {
                Active = true,
                AuthenticationProviderType = enumMapper.Map(xrmConfig.AuthenticationProviderType),
                DiscoveryServiceAddress    = xrmConfig.DiscoveryServiceAddress,
                Domain = xrmConfig.Domain,
                OrganizationUniqueName = OverrideOrganisation ?? xrmConfig.OrganizationUniqueName,
                Password = xrmConfig.Password,
                Username = xrmConfig.Username
            };

            return(savedConfig);
        }
        public XrmPackageSettings GetTestPackageSettings()
        {
            if (_testPackageSettings == null)
            {
                var xrmConfiguration       = new InterfaceMapperFor <IXrmConfiguration, XrmConfiguration>().Map(XrmConfiguration);
                var xrmRecordConfiguration = new XrmConfigurationMapper().Map(xrmConfiguration);
                var savedConnection        = SavedXrmRecordConfiguration.CreateNew(xrmRecordConfiguration);

                var testSolution    = ReCreateTestSolution();
                var packageSettings = new XrmPackageSettings();
                PopulateObject(packageSettings);
                packageSettings.AddToSolution = true;
                packageSettings.Solution      = testSolution.ToLookup();
                packageSettings.Connections   = new SavedXrmRecordConfiguration[] { savedConnection };
                _testPackageSettings          = packageSettings;
            }
            return(_testPackageSettings);
        }
Exemple #6
0
        public SavedXrmRecordConfiguration GetSavedXrmRecordConfiguration()
        {
            var xrmConfig   = XrmConfiguration;
            var enumMapper  = new EnumMapper <XrmRecordAuthenticationProviderType, AuthenticationProviderType>();
            var savedConfig = new SavedXrmRecordConfiguration()
            {
                Active = true,
                AuthenticationProviderType = enumMapper.Map(xrmConfig.AuthenticationProviderType),
                DiscoveryServiceAddress    = xrmConfig.DiscoveryServiceAddress,
                Domain = xrmConfig.Domain,
                OrganizationUniqueName = OverrideOrganisation ?? xrmConfig.OrganizationUniqueName,
                Password = new Password(xrmConfig.Password, false, true),
                Username = xrmConfig.Username,
                Name     = "TESTSCRIPTCONNECTION"
            };

            return(savedConfig);
        }
 protected override void LoadDialogExtention()
 {
     //if we do not yet have connections added to the package settings
     //then lets add the active connection to the settings as the active connection
     if (SettingsObject.Connections == null ||
         !SettingsObject.Connections.Any())
     {
         try
         {
             var savedConnection = SavedXrmRecordConfiguration.CreateNew(XrmRecordService.XrmRecordConfiguration);
             savedConnection.Active     = true;
             SettingsObject.Connections = new[] { savedConnection };
         }
         catch (Exception)
         {
             //No matter if this happens user may just add it in anyway
         }
     }
     StartNextAction();
 }
 private void AddRedirectToConnectionEntryIfNotConnected(IVisualStudioService visualStudioService)
 {
     if (string.IsNullOrWhiteSpace(XrmRecordService.XrmRecordConfiguration.OrganizationUniqueName))
     {
         //if there was no connection then lets redirect to the connection entry first
         var    newConnection = new SavedXrmRecordConfiguration();
         Action refreshChildDialogConnection = () =>
         {
             newConnection.Active = true;
             XrmRecordService.XrmRecordConfiguration = newConnection;
             SettingsObject.Connections = new[] { newConnection };
         };
         RefreshActiveServiceConnection = true;
         var connectionEntryDialog = new ConnectionEntryDialog(this, newConnection, visualStudioService, true, doPostEntry: refreshChildDialogConnection);
         var subDialogList         = new List <DialogViewModel>();
         subDialogList.Add(connectionEntryDialog);
         XrmRecordService.XrmRecordConfiguration = newConnection;
         subDialogList.AddRange(SubDialogs);
         SubDialogs = subDialogList;
     }
 }
        public XrmPackageSettingsDialog(IDialogController dialogController, XrmPackageSettings objectToEnter, IVisualStudioService visualStudioService, XrmRecordService xrmRecordService)
            : base(dialogController, xrmRecordService, objectToEnter)
        {
            XrmRecordService    = xrmRecordService;
            VisualStudioService = visualStudioService;

            if (string.IsNullOrWhiteSpace(XrmRecordService.XrmRecordConfiguration.OrganizationUniqueName))
            {
                //if there was no connection then lets redirect to the connection entry first
                var    newConnection = new SavedXrmRecordConfiguration();
                Action refreshChildDialogConnection = () => {
                    newConnection.Active = true;
                    XrmRecordService.XrmRecordConfiguration = newConnection;
                    SettingsObject.Connections = new[] { newConnection };
                };
                var connectionEntryDialog = new ConnectionEntryDialog(this, newConnection, visualStudioService, true, doPostEntry: refreshChildDialogConnection);
                var subDialogList         = new List <DialogViewModel>();
                subDialogList.Add(connectionEntryDialog);
                XrmRecordService.XrmRecordConfiguration = newConnection;
                subDialogList.AddRange(SubDialogs);
                SubDialogs = subDialogList;
            }
        }