private PreProcessorManifest GetProcessorManfiest(string manifestFile)
{
var manifest = new SerialisationManager(this.fileSystem).DeserializeXmlFile<PreProcessorManifest>(manifestFile);
if (manifest.Default == null)
{
throw new XmlDidNotPassValidationException("Default element missing from manifest.");
}
foreach (var group in manifest.Default.Groups)
{
ValidateGroup(group);
}
if (manifest.Environments != null)
{
foreach (var environment in manifest.Environments)
{
if (environment.Configuration != null)
{
ValidateConfiguration(environment.Configuration);
}
if (environment.Groups != null)
{
foreach (var group in environment.Groups)
{
ValidateGroup(group);
}
}
}
}
return manifest;
}