public virtual ISigningResult SignDocument(ISigningRequest signRequest, bool removeCache) { var async = false; return(SignDocumentsInternal(async, new ISigningRequest[] { signRequest }, removeCache) .FirstOrDefault()); }
protected virtual KeyValuePair <IPdfSigningSession, ISigningResult> SignDocumentInternal(ISigningRequest signRequest) { var result = new SigningResult(); var sessionData = Cache.Get(signRequest.FileId) as IPdfSigningSession; if (sessionData == default(IPdfSigningSession)) { result = new SigningResult { FileId = signRequest.FileId, Exception = new TimeoutException() }; } else { try { PdfSignerService .SignData(sessionData, signRequest.SignedHashBase64); result = new SigningResult { FileId = signRequest.FileId, Exception = default(Exception) }; OnDocumentSigned(sessionData); } catch (Exception ex) { result = new SigningResult { FileId = signRequest.FileId, Exception = ex }; OnDocumentError(sessionData, signRequest.Parameters, ex); } } sessionData = Cache.Get(signRequest.FileId) as IPdfSigningSession; return(new KeyValuePair <IPdfSigningSession, ISigningResult>(sessionData, result)); }