private void SharedLoadWorkflow(InstancePersistenceContext context,
Guid instanceId)
{
if(instanceId != Guid.Empty)
{
IDictionary<XName, InstanceValue> instanceData;
IDictionary<XName, InstanceValue> instanceMetadata;
_dataStore.LoadInstance(instanceId,
out instanceData, out instanceMetadata);
if(context.InstanceView.InstanceId == Guid.Empty)
{
context.BindInstance(instanceId);
}
context.LoadedInstance(InstanceState.Initialized,
instanceData, instanceMetadata, null, null);
}
else
{
throw new InstanceNotReadyException(
String.Format("Unable to load instance: {0}", instanceId));
}
}