예제 #1
0
        public override void UpdateTo(ICoreChildProvider other)
        {
            lock (WriteLock)
            {
                base.UpdateTo(other);

                if (!(other is DataExportChildProvider dxOther))
                {
                    throw new NotSupportedException("Did not know how to UpdateTo ICoreChildProvider of type " + other.GetType().Name);
                }

                //That's one way to avoid memory leaks... anyone holding onto a stale one of these is going to have a bad day
                RootCohortsNode                                  = dxOther.RootCohortsNode;
                CohortSources                                    = dxOther.CohortSources;
                ExtractableDataSets                              = dxOther.ExtractableDataSets;
                SelectedDataSets                                 = dxOther.SelectedDataSets;
                AllPackages                                      = dxOther.AllPackages;
                Projects                                         = dxOther.Projects;
                _cohortsByOriginId                               = dxOther._cohortsByOriginId;
                Cohorts                                          = dxOther.Cohorts;
                ExtractionConfigurations                         = dxOther.ExtractionConfigurations;
                ExtractionConfigurationsByProject                = dxOther.ExtractionConfigurationsByProject;
                _configurationToDatasetMapping                   = dxOther._configurationToDatasetMapping;
                _dataExportFilterManager                         = dxOther._dataExportFilterManager;
                ForbidListedSources                              = dxOther.ForbidListedSources;
                DuplicatesByProject                              = dxOther.DuplicatesByProject;
                DuplicatesByCohortSourceUsedByProjectNode        = dxOther.DuplicatesByCohortSourceUsedByProjectNode;
                ProjectNumberToCohortsDictionary                 = dxOther.ProjectNumberToCohortsDictionary;
                AllProjectAssociatedCics                         = dxOther.AllProjectAssociatedCics;
                AllGlobalExtractionFilterParameters              = dxOther.AllGlobalExtractionFilterParameters;
                _cicAssociations                                 = dxOther._cicAssociations;
                AllFreeCohortIdentificationConfigurationsNode    = dxOther.AllFreeCohortIdentificationConfigurationsNode;
                AllProjectCohortIdentificationConfigurationsNode = dxOther.AllProjectCohortIdentificationConfigurationsNode;
                _selectedDataSetsWithNoIsExtractionIdentifier    = dxOther._selectedDataSetsWithNoIsExtractionIdentifier;
                AllContainers                                    = dxOther.AllContainers;
                AllDeployedExtractionFilters                     = dxOther.AllDeployedExtractionFilters;
                _allParameters                                   = dxOther._allParameters;
                dataExportRepository                             = dxOther.dataExportRepository;
                _extractionInformationsByCatalogueItem           = dxOther._extractionInformationsByCatalogueItem;
                _extractionProgressesBySelectedDataSetID         = dxOther._extractionProgressesBySelectedDataSetID;
            }
        }
 public AllFreeCohortIdentificationConfigurationsNodeMenu(RDMPContextMenuStripArgs args, AllFreeCohortIdentificationConfigurationsNode node)
     : base(args, node)
 {
     Add(new ExecuteCommandCreateNewCohortIdentificationConfiguration(_activator));
 }