public static void Commit(string path, int versionId, int propertyTypeId)
{
PsUploadSession session;
lock (_sync)
{
var key = GetSessionId(path, versionId, propertyTypeId);
session = Get(key);
if (session == null)
throw new ApplicationException(string.Concat("Connection lost during attachment upload. Path: {0}, Property: {1}", path, ActiveSchema.PropertyTypes.GetItemById(propertyTypeId).Name));
_sessions.Remove(key);
}
session.HashAlgorithm.TransformFinalBlock(session.LastBuffer, 0, session.LastBuffer.Length);
var checksum = Convert.ToBase64String(session.HashAlgorithm.Hash);
DataProvider.Current.CopyStagingToBinaryData(versionId, propertyTypeId, session.BinaryDataId, checksum);
DataProvider.Current.DeleteStagingBinaryData(session.BinaryDataId);
}
public static void Rollback(string path, int versionId, int propertyTypeId)