Ejemplo n.º 1
0
        protected void WriteDocumentWithAttachment(IDocumentActions documentActions, DocumentsOperationContext context, Stream dataStream, string key, BlittableJsonReaderObject metadata)
        {
            using (dataStream)
            {
                var attachment = new DocumentItem.AttachmentStream
                {
                    Stream = documentActions.GetTempStream()
                };

                var attachmentDetails = StreamSource.GenerateLegacyAttachmentDetails(context, dataStream, key, metadata, ref attachment);

                var dummyDoc = new DocumentItem
                {
                    Document = new Document
                    {
                        Data               = StreamSource.WriteDummyDocumentForAttachment(context, attachmentDetails),
                        Id                 = attachmentDetails.Id,
                        ChangeVector       = string.Empty,
                        Flags              = DocumentFlags.HasAttachments,
                        NonPersistentFlags = NonPersistentDocumentFlags.FromSmuggler,
                        LastModified       = _database.Time.GetUtcNow(),
                    },
                    Attachments = new List <DocumentItem.AttachmentStream>
                    {
                        attachment
                    }
                };

                documentActions.WriteDocument(dummyDoc, Result.Documents);
            }
        }
 public void Initialize()
 {
     _configuration   = Substitute.For <IConfiguration>();
     _documentActions = new BlobActions("_Enter_AzureStorageName_", "_Enter_AzureStorageKey_", "_containerName_", 3, _logger);
 }
Ejemplo n.º 3
0
        public IDocumentActions Instance(string documentManager)
        {
            IDocumentActions instance = _componentContext.ResolveNamed <IDocumentActions>(documentManager.ToLower(CultureInfo.InvariantCulture));

            return(instance);
        }