public IDocumentMultiPartUploadInfo GetMultiPartUploadInfoOrDocumentIdentifier(string hash, string extention, long size) { _authorizationChecker.CheckUserIsInRole(Security.Roles.Operator); var container = GetContainer(); var existingContentIdentifier = GetExistingContentIdentifier(container, hash, extention); if (existingContentIdentifier != null) { var existingDocumentIdentifier = _documentIdentifierProvider.GetDocumentIdentifier(existingContentIdentifier); var existingContentName = _contentNameProvider.GetContentName(existingContentIdentifier); _committedContentNamesRepository.EnsureContent(_containerName, existingContentName, existingContentIdentifier.ModifiedMoment, CancellationToken.None); return(_documentMultiPartUploadInfoFactory(null, existingDocumentIdentifier)); } CheckContainerState(true); var newContentIdentifier = GenerateUniqueContentIdentifier(container, hash, extention); var content = container.CreateContent(newContentIdentifier) as IURLContent; var multiPartUploadInfo = content.GetMultiPartUploadInfo(URLExpirySeconds, size); return(_documentMultiPartUploadInfoFactory(multiPartUploadInfo, null)); }
public bool ContentExists(IContentIdentifier contentIdentifier) { var contentName = _contentNameProvider.GetContentName(contentIdentifier); return(ContentExists(contentName)); }