private MetadataPackageModel CreatePackageModel(int stepId, bool validateIt)
{
StepInfo stepInfo = TaskManager.Get(stepId);
StepModelHelper stepModelHelper = GetStepModelhelper(stepId);
long metadataPackageId = stepModelHelper.Usage.Id;
long metadataStructureId = Convert.ToInt64(TaskManager.Bus[CreateTaskmanager.METADATASTRUCTURE_ID]);
MetadataStructureManager mdsManager = new MetadataStructureManager();
MetadataPackageManager mdpManager = new MetadataPackageManager();
MetadataPackageUsage mpu = (MetadataPackageUsage)LoadUsage(stepModelHelper.Usage);
MetadataPackageModel model = new MetadataPackageModel();
model = MetadataPackageModel.Convert(mpu, stepModelHelper.Number);
model.ConvertMetadataAttributeModels(mpu, metadataStructureId, stepId);
if (stepInfo.IsInstanze == false)
{
//get Instance
if (TaskManager.Bus.ContainsKey(CreateTaskmanager.METADATA_XML))
{
XDocument xMetadata = (XDocument)TaskManager.Bus[CreateTaskmanager.METADATA_XML];
model.ConvertInstance(xMetadata, stepModelHelper.XPath);
}
}
else
{
if (stepModelHelper.Model != null)
{
model = (MetadataPackageModel)stepModelHelper.Model;
}
else
{
stepModelHelper.Model = model;
}
}
//if (validateIt)
//{
// //validate packages
// List<Error> errors = validateStep(stepModelHelper.Model);
// if (errors != null)
// model.ErrorList = errors;
// else
// model.ErrorList = new List<Error>();
//}
model.StepInfo = stepInfo;
return model;
}