public void Publish(GlossaryInputModel inputModel) { if (string.IsNullOrWhiteSpace(inputModel.DomainAssemblyFile)) { throw new ArgumentException("The input Domain Assembly must be provided"); } if (string.IsNullOrWhiteSpace(inputModel.GlossaryOutputFile)) { throw new ArgumentException("A valid output file must be provided"); } var glossary = _compositionService.CreateGlossary(inputModel.DomainAssemblyFile); var serializedGlossary = JsonConvert.SerializeObject(glossary); _glossaryFileWriter.WriteGlossaryToFile(serializedGlossary, inputModel.GlossaryOutputFile); }