/// <exception cref="Exception">Root schema does not include a BIE schema.</exception> public ImporterContext(ICctsRepository cctsRepository, string rootSchemaPath) { RootSchemaPath = rootSchemaPath; RootSchemaFileName = Path.GetFileName(rootSchemaPath); string inputDirectory = Path.GetDirectoryName(rootSchemaPath) + @"\"; foreach (string schemaLocation in GetIncludedSchemaLocations(rootSchemaPath)) { if (schemaLocation.StartsWith("BusinessInformationEntity")) { BIESchemaPath = inputDirectory + schemaLocation; } else if (schemaLocation.StartsWith("BusinessDataType")) { BDTSchemaPath = inputDirectory + schemaLocation; } } if (BDTSchemaPath == null) { throw new Exception("Root schema does not include a BDT schema."); } if (BIESchemaPath == null) { throw new Exception("Root schema does not include a BIE schema."); } CDTLibrary = cctsRepository.GetCdtLibraries().ElementAt(0); CCLibrary = cctsRepository.GetCcLibraries().ElementAt(0); BDTLibrary = cctsRepository.GetBdtLibraries().ElementAt(0); BIELibrary = cctsRepository.GetBieLibraries().ElementAt(0); PRIMLibrary = cctsRepository.GetPrimLibraries().ElementAt(0); BLibrary = cctsRepository.GetBLibraries().ElementAt(0); }
public void LoadCDTLs(ICctsRepository repository) { foreach (ICdtLibrary cdtl in repository.GetCdtLibraries()) { if (CDTLs.ContainsKey(cdtl.Name)) { CDTLs.Clear(); throw new CacheException("The wizard encountered two CDT libraries having identical names. Please make sure that all CDT libraries within the model have unique names before proceeding with the wizard."); } CDTLs.Add(cdtl.Name, new cCDTLibrary(cdtl.Name, cdtl.Id)); } if (CDTLs.Count == 0) { throw new CacheException("The repository did not contain any CDT libraries. Please make sure at least one CDT library is present before proceeding with the wizard."); } }