public TemplateData( string id, string timestamp, string snomedVersion, string snomedBranch, string defaultLanguage, MultiLanguageString title, string etl ) { if (string.IsNullOrEmpty(snomedVersion)) { throw new ArgumentException($"'{nameof(snomedVersion)}' cannot be null or empty", nameof(snomedVersion)); } if (string.IsNullOrEmpty(snomedBranch)) { throw new ArgumentException($"'{nameof(snomedBranch)}' cannot be null or empty", nameof(snomedBranch)); } if (string.IsNullOrEmpty(defaultLanguage)) { throw new ArgumentException($"'{nameof(defaultLanguage)}' cannot be null or empty", nameof(defaultLanguage)); } if (string.IsNullOrEmpty(etl)) { throw new ArgumentException($"'{nameof(etl)}' cannot be null or empty", nameof(etl)); } if (title == null) { throw new ArgumentNullException(nameof(title)); } if (!title.IsTranslatedFor(defaultLanguage)) { throw new ArgumentException($"'{nameof(title)}' should be translated for the default language."); } Id = id; DefaultLanguage = defaultLanguage; Title = title; TimeStamp = timestamp; SnomedVersion = snomedVersion.Trim(); SnomedBranch = snomedBranch.Trim(); Etl = etl.Trim(); }