public LargeDocumentStore(IDocumentDbAccessProvider dbAccessProvider) : base(dbAccessProvider, false) { var config = new DocumentStoreConfigBuilder("LargeStore"); var largeDocumentType = config.AddDocument("LargeDocument"); var attachmentDocumentType = config.AddDocument("AttachmentDocument"); var attachmentType = attachmentDocumentType.AddAttachment("Attachment"); _largeMapping = config.AddDocumentMapping <LargeDocument>(largeDocumentType.Name) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _smallMapping = config.AddDocumentMapping <SmallDocumentWithLargeAttachment>(attachmentDocumentType.Name) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _attachmentMapping = _smallMapping.AddAttachmentMapping <LargeDocument>(attachmentType.Name) .Finish(); _config = config.Finish(); _client = CreateStoreLogic(DbAccess, _config); DbAccess.ConfigRegistry.RegisterStoreConfigSource(this); }
protected static IVersionedDocumentStoreClient CreateStoreLogic( IDocumentDbAccess dbAccess, DocumentStoreConfig config, IDocumentMetadataSource metadataSource) { return(new VersionedDocumentStoreClient(GetDbAccessImplementation(dbAccess), config, metadataSource)); }
/// <summary> /// Initialises a new instance of the <see cref="VersionedDocumentStoreClient"/> class. /// </summary> /// <param name="dbAccess">The db access interface.</param> /// <param name="config">The store config.</param> /// <param name="metadataSource">The document metadata source.</param> public VersionedDocumentStoreClient( DocumentDbAccess dbAccess, DocumentStoreConfig config, IDocumentMetadataSource metadataSource) : base(dbAccess, config, new[] { typeof(CreateDocumentStoredProcedure) }) { MetadataSource = metadataSource ?? new NullDocumentMetadataSource(); }
protected static IVersionedDocumentStorePurgeClient CreatePurgeLogic( IDocumentDbAccess dbAccess, DocumentStoreConfig config) { var dbAccessImpl = GetDbAccessImplementation(dbAccess); var queryClient = new VersionedDocumentQueryClient(dbAccessImpl, config); return(new VersionedDocumentStorePurgeClient(dbAccessImpl, config, queryClient)); }
/// <summary> /// Initialises a new instance of the <see cref="VersionedDocumentStorePurgeClient"/> class. /// </summary> /// <param name="dbAccess">The db access interface.</param> /// <param name="config">The store config.</param> /// <param name="queryClient">The query client.</param> public VersionedDocumentStorePurgeClient( DocumentDbAccess dbAccess, DocumentStoreConfig config, VersionedDocumentQueryClient queryClient) : base(dbAccess, config, new [] { typeof(PurgeDocumentStoredProcedure) }) { if (queryClient == null) { throw new ArgumentNullException(nameof(queryClient)); } _queryClient = queryClient; }
protected static IVersionedDocumentStoreClient CreateStoreLogic( IDocumentDbAccess dbAccess, DocumentStoreConfig config, IDocumentMetadataSource metadataSource) { var documentDbAccess = dbAccess as DocumentDbAccess; if (documentDbAccess == null) { throw new InvalidOperationException("Document db access interface is not a supported type"); } return(new VersionedDocumentStoreClient(documentDbAccess, config, metadataSource)); }
public OrderStore( IDocumentDbAccessProvider dbAccessProvider, IDocumentMetadataSource metadataSource) : base(dbAccessProvider) { var config = new DocumentStoreConfigBuilder("Orders"); var orderDocumentType = config.AddDocument("Order").Finish(); _orderMapping = config.AddDocumentMapping <Order>(orderDocumentType.DocumentName) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _config = config.Finish(); _client = CreateStoreLogic(DbAccess, _config, metadataSource); }
public FlowerStore(IDocumentDbAccessProvider dbAccessProvider) : base(dbAccessProvider, false) { var config = new DocumentStoreConfigBuilder("Flowers"); var documentType = config.AddDocument("Daisy").Finish(); _mapping = config.AddDocumentMapping <Daisy>(documentType.DocumentName) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _config = config.Finish(); _client = CreateStoreLogic(DbAccess, _config); DbAccess.ConfigRegistry.RegisterStoreConfigSource(this); }
public DocumentStore(IDocumentDbAccessProvider dbAccessProvider) : base(dbAccessProvider) { var config = new DocumentStoreConfigBuilder("Documents"); var documentType = config.AddDocument("Document1"); var document2Type = config.AddDocument("Document2"); _documentMapping = config.AddDocumentMapping <Document1>(documentType.Name) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _document2Mapping = config.AddDocumentMapping <Document2>(document2Type.Name) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _config = config.Finish(); _client = CreateStoreLogic(DbAccess, _config); }
public EmailStore(IDocumentDbAccessProvider dbAccessProvider) : base(dbAccessProvider, false) { var config = new DocumentStoreConfigBuilder("EmailClient"); var documentType = config.AddDocument("Email"); var attachmentType = documentType.AddAttachment("EmailAttachment"); _mapping = config.AddDocumentMapping <Email>(documentType.Name) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _attachmentMapping = _mapping.AddAttachmentMapping <EmailAttachment>(attachmentType.Name) .Finish(); _config = config.Finish(); _client = CreateStoreLogic(DbAccess, _config); DbAccess.ConfigRegistry.RegisterStoreConfigSource(this); }
protected DocumentStoreClient(DocumentDbAccess dbAccess, DocumentStoreConfig config, IEnumerable <Type> storedProcedures) { if (dbAccess == null) { throw new ArgumentNullException(nameof(dbAccess)); } if (config == null) { throw new ArgumentNullException(nameof(config)); } _dbAccess = dbAccess; _config = config; _collectionUri = UriFactory.CreateDocumentCollectionUri(dbAccess.DbConfig.DatabaseId, dbAccess.DbConfig.CollectionName); if (storedProcedures != null) { _storedProcedures = storedProcedures.ToDictionary(x => x, GetStoredProcedureName); } }
public FlowerStore( IDocumentDbAccessProvider dbAccessProvider, IDocumentMetadataSource metadataSource) : base(dbAccessProvider, false) { var config = new DocumentStoreConfigBuilder("Flowers"); var daisyDocumentType = config.AddDocument("Daisy").Finish(); var roseDocumentType = config.AddDocument("Rose").Finish(); _daisyMapping = config.AddDocumentMapping <Daisy>(daisyDocumentType.DocumentName) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _gardenMapping = config.AddDocumentMapping <Garden>(roseDocumentType.DocumentName) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _config = config.Finish(); _client = CreateStoreLogic(DbAccess, _config, metadataSource); }
public FruitStore(IDocumentDbAccessProvider dbAccessProvider, IDocumentMetadataSource metadataSource) : base(dbAccessProvider, false) { var config = new DocumentStoreConfigBuilder("Fruit"); var appleDocumentType = config.AddDocument("Apple").Finish(); var pearDocumentType = config.AddDocument("Pear").Finish(); _appleMapping = config.AddDocumentMapping <Apple>(appleDocumentType.DocumentName) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _pearMapping = config.AddDocumentMapping <Pear>(pearDocumentType.DocumentName) .SetIdMapper(x => x.Id.ToString()) .SetPartitionMapper(x => x.Id.ToString()) .Finish(); _config = config.Finish(); _client = CreateStoreLogic(DbAccess, _config, metadataSource); DbAccess.ConfigRegistry.RegisterStoreConfigSource(this); }
protected DocumentQueryClient( DocumentDbAccess dbAccess, DocumentStoreConfig config, IEnumerable <Type> storedProcedures) : base(dbAccess, config, storedProcedures) { }
protected static IUnversionedDocumentStoreClient CreateStoreLogic( IDocumentDbAccess dbAccess, DocumentStoreConfig config) { return(new UnversionedDocumentStoreClient(GetDbAccessImplementation(dbAccess), config)); }
/// <summary> /// Initialises a new instance of the <see cref="VersionedDocumentStoreClient"/> class. /// </summary> /// <param name="dbAccess">The db access interface.</param> /// <param name="config">The store config.</param> public VersionedDocumentStoreClient(DocumentDbAccess dbAccess, DocumentStoreConfig config) : this(dbAccess, config, null) { }
/// <summary> /// Initialises a new instance of the <see cref="VersionedDocumentQueryClient"/> class. /// </summary> /// <param name="dbAccess">The db access interface.</param> /// <param name="config">The store config.</param> public VersionedDocumentQueryClient(DocumentDbAccess dbAccess, DocumentStoreConfig config) : base(dbAccess, config, null) { }