Skip to content

Commit

Permalink
Update blob and cosmos to use IOptionsMonitor (#1809)
Browse files Browse the repository at this point in the history
* Update blob and cosmos to use IOptionsMonitor

* Update release_notes.md
  • Loading branch information
liliankasem committed Aug 9, 2023
1 parent 887f5a9 commit b862aae
Show file tree
Hide file tree
Showing 15 changed files with 38 additions and 37 deletions.
4 changes: 2 additions & 2 deletions extensions/Worker.Extensions.CosmosDB/release_notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@
- My change description (#PR/#issue)
-->

### Microsoft.Azure.Functions.Worker.Extensions.CosmosDB <version>
### Microsoft.Azure.Functions.Worker.Extensions.CosmosDB 4.4.1

- <entry>
- [Bug] Update CosmosOptions from using IOptionsSnapshot to IOptionsMonitor to avoid DI scoping issues
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ namespace Microsoft.Azure.Functions.Worker
[SupportsDeferredBinding]
internal class CosmosDBConverter : IInputConverter
{
private readonly IOptionsSnapshot<CosmosDBBindingOptions> _cosmosOptions;
private readonly IOptionsMonitor<CosmosDBBindingOptions> _cosmosOptions;
private readonly ILogger<CosmosDBConverter> _logger;

public CosmosDBConverter(IOptionsSnapshot<CosmosDBBindingOptions> cosmosOptions, ILogger<CosmosDBConverter> logger)
public CosmosDBConverter(IOptionsMonitor<CosmosDBBindingOptions> cosmosOptions, ILogger<CosmosDBConverter> logger)
{
_cosmosOptions = cosmosOptions ?? throw new ArgumentNullException(nameof(cosmosOptions));
_logger = logger ?? throw new ArgumentNullException(nameof(logger));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<Description>Azure Cosmos DB extensions for .NET isolated functions</Description>

<!--Version information-->
<VersionPrefix>4.4.0</VersionPrefix>
<VersionPrefix>4.4.1</VersionPrefix>

<!--Temporarily opting out of documentation. Pending documentation-->
<GenerateDocumentationFile>false</GenerateDocumentationFile>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ namespace Microsoft.Azure.Functions.Worker
internal class BlobStorageConverter : IInputConverter
{
private readonly IOptions<WorkerOptions> _workerOptions;
private readonly IOptionsSnapshot<BlobStorageBindingOptions> _blobOptions;
private readonly IOptionsMonitor<BlobStorageBindingOptions> _blobOptions;
private readonly ILogger<BlobStorageConverter> _logger;
private readonly Regex BlobIsFileRegex = new Regex(@"\.[^.\/]+$");

public BlobStorageConverter(IOptions<WorkerOptions> workerOptions, IOptionsSnapshot<BlobStorageBindingOptions> blobOptions, ILogger<BlobStorageConverter> logger)
public BlobStorageConverter(IOptions<WorkerOptions> workerOptions, IOptionsMonitor<BlobStorageBindingOptions> blobOptions, ILogger<BlobStorageConverter> logger)
{
_workerOptions = workerOptions ?? throw new ArgumentNullException(nameof(workerOptions));
_blobOptions = blobOptions ?? throw new ArgumentNullException(nameof(blobOptions));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<Description>Azure Blob Storage extensions for .NET isolated functions</Description>

<!--Version information-->
<VersionPrefix>6.0.0</VersionPrefix>
<VersionPrefix>6.0.1</VersionPrefix>

<!--Temporarily opting out of documentation. Pending documentation-->
<GenerateDocumentationFile>false</GenerateDocumentationFile>
Expand Down
9 changes: 5 additions & 4 deletions extensions/Worker.Extensions.Storage/release_notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,15 @@
- My change description (#PR/#issue)
-->

### Microsoft.Azure.Functions.Worker.Extensions.Storage <version>
### Microsoft.Azure.Functions.Worker.Extensions.Storage 6.0.1

- <entry>
- Updated Microsoft.Azure.Functions.Worker.Extensions.Storage.Blobs dependency to 6.0.1

### Microsoft.Azure.Functions.Worker.Extensions.Storage.Blobs <version>
### Microsoft.Azure.Functions.Worker.Extensions.Storage.Blobs 6.0.1

- <entry>
- [Bug] Update BlobOptions from using IOptionsSnapshot to IOptionsMonitor to avoid DI scoping issues

### Microsoft.Azure.Functions.Worker.Extensions.Storage.Queues <version>

- <entry>

Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<Description>Azure Storage extensions for .NET isolated functions</Description>

<!--Version information-->
<VersionPrefix>6.0.0</VersionPrefix>
<VersionPrefix>6.0.1</VersionPrefix>

<!--Temporarily opting out of documentation. Pending documentation-->
<GenerateDocumentationFile>false</GenerateDocumentationFile>
Expand Down
6 changes: 3 additions & 3 deletions test/Worker.Extensions.Tests/Blob/BlobClientTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,12 @@ public BlobClientTests()
var mockBlobOptions = new Mock<BlobStorageBindingOptions>();
mockBlobOptions.Object.Client = _mockBlobServiceClient.Object;

var mockBlobOptionsSnapshot = new Mock<IOptionsSnapshot<BlobStorageBindingOptions>>();
mockBlobOptionsSnapshot
var mockBlobOptionsMonitor = new Mock<IOptionsMonitor<BlobStorageBindingOptions>>();
mockBlobOptionsMonitor
.Setup(m => m.Get(It.IsAny<string>()))
.Returns(mockBlobOptions.Object);

_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsSnapshot.Object, logger);
_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsMonitor.Object, logger);
}

[Fact]
Expand Down
6 changes: 3 additions & 3 deletions test/Worker.Extensions.Tests/Blob/BlobContainerClientTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,12 @@ public BlobContainerClientTests()
var mockBlobOptions = new Mock<BlobStorageBindingOptions>();
mockBlobOptions.Object.Client = _mockBlobServiceClient.Object;

var mockBlobOptionsSnapshot = new Mock<IOptionsSnapshot<BlobStorageBindingOptions>>();
mockBlobOptionsSnapshot
var mockBlobOptionsMonitor = new Mock<IOptionsMonitor<BlobStorageBindingOptions>>();
mockBlobOptionsMonitor
.Setup(m => m.Get(It.IsAny<string>()))
.Returns(mockBlobOptions.Object);

_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsSnapshot.Object, logger);
_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsMonitor.Object, logger);
}

[Fact]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,12 @@ public BlobStorageConverterCoreTests()
var mockBlobOptions = new Mock<BlobStorageBindingOptions>();
mockBlobOptions.Object.Client = _mockBlobServiceClient.Object;

var mockBlobOptionsSnapshot = new Mock<IOptionsSnapshot<BlobStorageBindingOptions>>();
mockBlobOptionsSnapshot
var mockBlobOptionsMonitor = new Mock<IOptionsMonitor<BlobStorageBindingOptions>>();
mockBlobOptionsMonitor
.Setup(m => m.Get(It.IsAny<string>()))
.Returns(mockBlobOptions.Object);

_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsSnapshot.Object, logger);
_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsMonitor.Object, logger);
}

[Fact]
Expand Down
6 changes: 3 additions & 3 deletions test/Worker.Extensions.Tests/Blob/ByteArrayTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,12 @@ public ByteArrayTests()
var mockBlobOptions = new Mock<BlobStorageBindingOptions>();
mockBlobOptions.Object.Client = _mockBlobServiceClient.Object;

var mockBlobOptionsSnapshot = new Mock<IOptionsSnapshot<BlobStorageBindingOptions>>();
mockBlobOptionsSnapshot
var mockBlobOptionsMonitor = new Mock<IOptionsMonitor<BlobStorageBindingOptions>>();
mockBlobOptionsMonitor
.Setup(m => m.Get(It.IsAny<string>()))
.Returns(mockBlobOptions.Object);

_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsSnapshot.Object, logger);
_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsMonitor.Object, logger);
}

[Fact]
Expand Down
6 changes: 3 additions & 3 deletions test/Worker.Extensions.Tests/Blob/POCOTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,12 @@ public POCOTests()
var mockBlobOptions = new Mock<BlobStorageBindingOptions>();
mockBlobOptions.Object.Client = _mockBlobServiceClient.Object;

var mockBlobOptionsSnapshot = new Mock<IOptionsSnapshot<BlobStorageBindingOptions>>();
mockBlobOptionsSnapshot
var mockBlobOptionsMonitor = new Mock<IOptionsMonitor<BlobStorageBindingOptions>>();
mockBlobOptionsMonitor
.Setup(m => m.Get(It.IsAny<string>()))
.Returns(mockBlobOptions.Object);

_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsSnapshot.Object, logger);
_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsMonitor.Object, logger);
}

[Fact]
Expand Down
6 changes: 3 additions & 3 deletions test/Worker.Extensions.Tests/Blob/StreamTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,12 @@ public StreamTests()
var mockBlobOptions = new Mock<BlobStorageBindingOptions>();
mockBlobOptions.Object.Client = _mockBlobServiceClient.Object;

var mockBlobOptionsSnapshot = new Mock<IOptionsSnapshot<BlobStorageBindingOptions>>();
mockBlobOptionsSnapshot
var mockBlobOptionsMonitor = new Mock<IOptionsMonitor<BlobStorageBindingOptions>>();
mockBlobOptionsMonitor
.Setup(m => m.Get(It.IsAny<string>()))
.Returns(mockBlobOptions.Object);

_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsSnapshot.Object, logger);
_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsMonitor.Object, logger);
}

[Fact]
Expand Down
6 changes: 3 additions & 3 deletions test/Worker.Extensions.Tests/Blob/StringTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,12 @@ public StringTests()
var mockBlobOptions = new Mock<BlobStorageBindingOptions>();
mockBlobOptions.Object.Client = _mockBlobServiceClient.Object;

var mockBlobOptionsSnapshot = new Mock<IOptionsSnapshot<BlobStorageBindingOptions>>();
mockBlobOptionsSnapshot
var mockBlobOptionsMonitor = new Mock<IOptionsMonitor<BlobStorageBindingOptions>>();
mockBlobOptionsMonitor
.Setup(m => m.Get(It.IsAny<string>()))
.Returns(mockBlobOptions.Object);

_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsSnapshot.Object, logger);
_blobStorageConverter = new BlobStorageConverter(workerOptions, mockBlobOptionsMonitor.Object, logger);
}

[Fact]
Expand Down
6 changes: 3 additions & 3 deletions test/Worker.Extensions.Tests/Cosmos/CosmosDBConverterTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@ public CosmosDBConverterTests()
.Setup(m => m.GetClient(It.IsAny<string>()))
.Returns(_mockCosmosClient.Object);

var mockCosmosOptionsSnapshot = new Mock<IOptionsSnapshot<CosmosDBBindingOptions>>();
mockCosmosOptionsSnapshot
var mockCosmosOptionsMonitor = new Mock<IOptionsMonitor<CosmosDBBindingOptions>>();
mockCosmosOptionsMonitor
.Setup(m => m.Get(It.IsAny<string>()))
.Returns(mockCosmosOptions.Object);

_cosmosDBConverter = new CosmosDBConverter(mockCosmosOptionsSnapshot.Object, logger);
_cosmosDBConverter = new CosmosDBConverter(mockCosmosOptionsMonitor.Object, logger);
}

[Fact]
Expand Down

0 comments on commit b862aae

Please sign in to comment.