/// <summary> /// Registers a template to be used with the compiler /// </summary> /// <param name="name">The template name</param> /// <param name="templateContent">The template content</param> public void RegisterTemplate ( string name, string templateContent ) { Validate.IsNotEmpty(name); var parsedTemplate = ParseTemplate ( templateContent ); var compiledTemplate = Compile ( parsedTemplate ); var registeredTemplate = new RegisteredTemplate ( name, parsedTemplate, compiledTemplate ); _templateRepository.Add ( registeredTemplate ); }
/// <summary> /// Adds a registered template to the repository /// </summary> /// <param name="template">The registered template</param> public void Add ( RegisteredTemplate template ) { Validate.IsNotNull(template); var name = template.Name; var found = _templates.ContainsKey(name); if (found) { throw new InvalidOperationException ( "A template with the name '{0}' has already been registered.".With ( name ) ); } _templates.Add(name, template); }