public IContentIdentifier GetContentIdentifier(IContainer container, IDocumentIdentifier documentIdentifier)
 {
     return
         (_contentIdentifiersProvider.GetContentIdentifiers(container, true, documentIdentifier.Hash)
          .Where(x => string.Equals(x.Extension, documentIdentifier.Extension, StringComparison.InvariantCultureIgnoreCase))
          .FirstOrDefault());
 }
        public string Serialize(IDocumentIdentifier documentIdentifier)
        {
            T x = documentIdentifier as T;

            if (x == null)
            {
                throw new UserException("Invalid serialized document identifer type");
            }

            return(_serializer.Serialize(x));
        }
Exemplo n.º 3
0
        private IDownloadInfo GetContainerDocumentDownloadInfo(IDocumentIdentifier documentIdentifier, string containerName)
        {
            var container = GetContainer(containerName);

            var contentIdentifier = _documentIdentifierProvider.GetContentIdentifier(container, documentIdentifier);

            if (container.ContentExists(contentIdentifier))
            {
                var content = container.GetContent(contentIdentifier) as IURLContent;
                return(content.GetDownloadInfo(URLExpirySeconds));
            }

            return(null);
        }
Exemplo n.º 4
0
        public string Serialize(IDocumentIdentifier documentIdentifier)
        {
            if (documentIdentifier == null)
            {
                return(null);
            }

            var documentIdentifierVersionSerializer = _documentIdentifierVersionSerializerProvider.GetSerializer(documentIdentifier);

            var serializedDocumentIdentifier = documentIdentifierVersionSerializer.Serialize(documentIdentifier);

            var serializedObject = _serializedObjectFactory(documentIdentifierVersionSerializer.DocumentIdentifierTypeName, serializedDocumentIdentifier);

            return(_serializer.Serialize(serializedObject));
        }
Exemplo n.º 5
0
        public IDownloadInfo GetDocumentDownloadInfo(IDocumentIdentifier documentIdentifier)
        {
            _authorizationChecker.CheckUserIsInRole(Security.Roles.Operator);

            var result = GetContainerDocumentDownloadInfo(documentIdentifier, _containerName);

            if (result == null)
            {
                var readOnlySubcontainerNames = InternalGetReadOnlySubcontainerNames();
                result =
                    readOnlySubcontainerNames
                    .Select(x => GetContainerDocumentDownloadInfo(documentIdentifier, x))
                    .Where(x => x != null)
                    .FirstOrDefault();
            }

            if (result == null)
            {
                throw new ApplicationException("Document does not exist");
            }

            return(result);
        }
Exemplo n.º 6
0
 public string GetDocumentDownloadURL(IDocumentIdentifier documentIdentifier)
 {
     return(GetDocumentDownloadInfo(documentIdentifier).Url);
 }
Exemplo n.º 7
0
 public DocumentUploadInfo(IUploadInfo uploadInfo, IDocumentIdentifier documentIdentifier)
 {
     UploadInfo         = uploadInfo;
     DocumentIdentifier = documentIdentifier;
 }
Exemplo n.º 8
0
 public IDocumentIdentifierVersionSerializer GetSerializer(IDocumentIdentifier documentIdentifier)
 {
     return(GetSerializer(documentIdentifier.GetType().Name));
 }
Exemplo n.º 9
0
 public DocumentMultiPartUploadInfo(IMultiPartUploadInfo multiPartUploadInfo, IDocumentIdentifier documentIdentifier)
 {
     MultiPartUploadInfo = multiPartUploadInfo;
     DocumentIdentifier  = documentIdentifier;
 }