public ClientPartitionHelper(Models.ImageProfile imageProfile)
{
string schema = null;
if (imageProfile != null)
{
_imageProfile = imageProfile;
if ((imageProfile.PartitionMethod == "Dynamic" || imageProfile.PartitionMethod == "Standard" || imageProfile.PartitionMethod == "Standard Core Storage") && !string.IsNullOrEmpty(imageProfile.CustomSchema))
{
schema = imageProfile.CustomSchema;
}
else
{
var path = Settings.PrimaryStoragePath + "images" + Path.DirectorySeparatorChar + imageProfile.Image.Name + Path.DirectorySeparatorChar +
"schema";
if (File.Exists(path))
{
using (var reader = new StreamReader(path))
{
schema = reader.ReadLine() ?? "";
}
}
}
}
if (!string.IsNullOrEmpty(schema))
{
_imageSchema = JsonConvert.DeserializeObject<Models.ImageSchema.ImageSchema>(schema);
}
}