Beispiel #1
0
        /// <summary>
        /// Check for form errors.
        /// </summary>
        /// <returns>Whether or not configuration has been serialized already.</returns>
        public bool Validate()
        {
            foreach (ProviderElement provider in Providers)
            {
                Guid            providerId      = new Guid(provider.ReferenceName);
                ProviderHandler providerHandler = AllProviders.FirstOrDefault(x => x.ProviderId.Equals(providerId));
                if (providerHandler != null)
                {
                    RegisterFilterStringExtension(providerHandler.ProviderDescriptionAttribute.ShellAdapterIdentifier, providerId);
                }
            }

            bool xmlHasBeenSerialized = false;

            m_formErrors.Clear();

            var invalidProviders = from p in Providers
                                   where !Guid.Empty.Equals(new Guid(p.ReferenceName)) &&
                                   !AllProviders.Select(x => x.ProviderId).Contains(new Guid(p.ReferenceName))
                                   select p;

            foreach (var provider in invalidProviders)
            {
                m_formErrors.Add(string.Format("Provider '{0}' not found", provider.FriendlyName));
            }

            if (Sessions.Count == 0)
            {
                m_formErrors.Add("Need to add at least 1 session.");
            }
            else
            {
                foreach (SerializableSession session in SerializableSessions)
                {
                    if (!session.LeftMigrationSource.IsConfigured)
                    {
                        m_formErrors.Add("Need to configure left migration source for " + session.Model.FriendlyName);
                    }
                    if (!session.RightMigrationSource.IsConfigured)
                    {
                        m_formErrors.Add("Need to configure right migration source for " + session.Model.FriendlyName);
                    }
                    if (session.Model.Filters.FilterPair.Count == 0 && session.LeftMigrationSource.IsConfigured && session.RightMigrationSource.IsConfigured)
                    {
                        m_formErrors.Add("Need to add filter pair");
                    }
                }
                if (m_formErrors.Count == 0)
                {
                    // no form errors, check xml errors
                    SerializedContent    = Serialize();
                    xmlHasBeenSerialized = true;
                }
            }

            return(xmlHasBeenSerialized);
        }
Beispiel #2
0
 public EditProviderForm(Provider provider, AllProviders allProviders) : this()
 {
     this._provider        = provider;
     this._allAllProviders = allProviders;
     if (this._provider.providerID <= 0)
     {
         this._mode = Mode.Add;
     }
     else
     {
         this._mode = Mode.Edit;
     }
 }
Beispiel #3
0
 public EditProviderForm(Provider provider, AllProviders allProviders)
     : this()
 {
     this._provider = provider;
     this._allAllProviders = allProviders;
     if (this._provider.providerID <= 0)
     {
         this._mode = Mode.Add;
     }
     else
     {
         this._mode = Mode.Edit;
     }
 }
Beispiel #4
0
 /**************************************************************************************************/
 public MetaData()
 {
     Diseases = new DiseaseList();
     GeneticTests = new GeneticTestList();
     Users = new UserList();
     UserGroups = new UserGroupList();
     OrderTypes = new OrderTypesList();
     Mutations = new MutationList();
     SystemWideDefaultPedigreePrefs = new GUIPreference();
     CurrentUserDefaultPedigreePrefs = new GUIPreference();
     ApptProviders = new ApptProviderList();
     AllProviders = new AllProviders();
     KbVariants = new VariantsFromKB();
     BrOvCdsRecs = new AllBrOvCdsRecs();
     Globals = new GlobalSettings();
     Assessments = new AssessmentList();
 }
Beispiel #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Dependencies"/> class.
 /// </summary>
 /// <param name="hostInteraction">The host interactions.</param>
 /// <param name="factories">The provider factories.</param>
 public Dependencies(IHostInteraction hostInteraction, params IProviderFactory[] factories)
 {
     _hostInteractions = hostInteraction;
     AllProviders.AddRange(factories.Select(f => f.CreateProvider(hostInteraction)));
 }