public UploadResourceUsageRightsTemplate(IDatabase db, ResourceUsageRightsTemplate template, int sendTimeout, int receiveTimeout, int sendBufferSize, int receiveBufferSize) : base(sendTimeout, receiveTimeout, sendBufferSize, receiveBufferSize) { Value = template; _db = db; }
private void Complete(EngineRequest request, ICommandReply reply, object result) { DateTime stop = DateTime.Now; TimeSpan duration = stop - _start; ResourceUsageRightsTemplate template = (ResourceUsageRightsTemplate)result; WriteLine("ModifyResourceUsageRightsTemplate.Complete - results received in " + duration.TotalMilliseconds.ToString() + "ms."); }
public override void Process() { Remoting.SaveSingle rem; TriggerOnActionChanged(EngineActionType.GettingResourceUsageRightsTemplate, true); try { Transitions.ResourceUsageRights txRur = new Transitions.ResourceUsageRights(); rem = new Remoting.SaveSingle(_db, txRur.Transition(Value), _sendTimeout, _receiveTimeout, _sendBufferSize, _receiveBufferSize); } catch (Exception e) { Logger.Storage.Error("An exception occurred while instantiating the Transactions.Tasks.Remoting.SaveSingle object.", e); throw; } rem.OnComplete += delegate(Remoting.Base sender, ICommandReply reply) { if (!((Commands.PutDocumentReply)reply).Ok) { Value = null; } else { Value = new ResourceUsageRightsTemplate(((Commands.PutDocumentReply)reply).Rev, Value.UsageRights); } TriggerOnComplete(reply); }; rem.OnError += delegate(Remoting.Base sender, string message, Exception exception) { TriggerOnError(message, exception); }; rem.OnProgress += delegate(Remoting.Base sender, OpenDMS.Networking.Protocols.Tcp.DirectionType direction, int packetSize, decimal sendPercentComplete, decimal receivePercentComplete) { TriggerOnProgress(direction, packetSize, sendPercentComplete, receivePercentComplete); }; rem.OnTimeout += delegate(Remoting.Base sender) { TriggerOnTimeout(); }; rem.Process(); }
public override void Process() { Remoting.SaveSingle rem; TriggerOnActionChanged(EngineActionType.GettingResourceUsageRightsTemplate, true); try { Transitions.ResourceUsageRights txRur = new Transitions.ResourceUsageRights(); rem = new Remoting.SaveSingle(_db, txRur.Transition(Value), _sendTimeout, _receiveTimeout, _sendBufferSize, _receiveBufferSize); } catch (Exception e) { Logger.Storage.Error("An exception occurred while instantiating the Transactions.Tasks.Remoting.SaveSingle object.", e); throw; } rem.OnComplete += delegate(Remoting.Base sender, ICommandReply reply) { if (!((Commands.PutDocumentReply)reply).Ok) Value = null; else { Value = new ResourceUsageRightsTemplate(((Commands.PutDocumentReply)reply).Rev, Value.UsageRights); } TriggerOnComplete(reply); }; rem.OnError += delegate(Remoting.Base sender, string message, Exception exception) { TriggerOnError(message, exception); }; rem.OnProgress += delegate(Remoting.Base sender, OpenDMS.Networking.Protocols.Tcp.DirectionType direction, int packetSize, decimal sendPercentComplete, decimal receivePercentComplete) { TriggerOnProgress(direction, packetSize, sendPercentComplete, receivePercentComplete); }; rem.OnTimeout += delegate(Remoting.Base sender) { TriggerOnTimeout(); }; rem.Process(); }
public override void TaskComplete(Tasks.Base sender, ICommandReply reply) { Type t = sender.GetType(); if (t == typeof(Tasks.DownloadGlobalPermissions)) { Tasks.DownloadGlobalPermissions task = (Tasks.DownloadGlobalPermissions)sender; _gur = task.GlobalUsageRights; RunTaskProcess(new Tasks.CheckGlobalPermissions(_db, _gur, _requestingPartyType, _session, Security.Authorization.GlobalPermissionType.ModifyResourceUsageRightsTemplate, _sendTimeout, _receiveTimeout, _sendBufferSize, _receiveBufferSize)); } else if (t == typeof(Tasks.CheckGlobalPermissions)) { Tasks.CheckGlobalPermissions task = (Tasks.CheckGlobalPermissions)sender; if (!task.IsAuthorized) { TriggerOnAuthorizationDenied(task); return; } RunTaskProcess(new Tasks.DownloadResourceUsageRightsTemplate(_db, _sendTimeout, _receiveTimeout, _sendBufferSize, _receiveBufferSize)); } else if (t == typeof(Tasks.DownloadResourceUsageRightsTemplate)) { Tasks.DownloadResourceUsageRightsTemplate task = (Tasks.DownloadResourceUsageRightsTemplate)sender; _rurt = new CouchDB.ResourceUsageRightsTemplate(task.Value.Revision, _usageRights); RunTaskProcess(new Tasks.UploadResourceUsageRightsTemplate(_db, _rurt, _sendTimeout, _receiveTimeout, _sendBufferSize, _receiveBufferSize)); } else if (t == typeof(Tasks.UploadResourceUsageRightsTemplate)) { Tasks.UploadResourceUsageRightsTemplate task = (Tasks.UploadResourceUsageRightsTemplate)sender; _rurt = task.Value; ResourceUsageRightsTemplate = _rurt; TriggerOnComplete(reply, ResourceUsageRightsTemplate); } else { TriggerOnError(sender, reply.ToString(), null); } }