diff --git a/sdk/eventgrid/Azure.Messaging.EventGrid/api/Azure.Messaging.EventGrid.netstandard2.0.cs b/sdk/eventgrid/Azure.Messaging.EventGrid/api/Azure.Messaging.EventGrid.netstandard2.0.cs
index c02481909937..a13543ba284e 100644
--- a/sdk/eventgrid/Azure.Messaging.EventGrid/api/Azure.Messaging.EventGrid.netstandard2.0.cs
+++ b/sdk/eventgrid/Azure.Messaging.EventGrid/api/Azure.Messaging.EventGrid.netstandard2.0.cs
@@ -120,6 +120,8 @@ public static partial class EventGridModelFactory
public static Azure.Messaging.EventGrid.SystemEvents.DeviceTwinMetadata DeviceTwinMetadata(string lastUpdated = null) { throw null; }
public static Azure.Messaging.EventGrid.SystemEvents.DeviceTwinProperties DeviceTwinProperties(Azure.Messaging.EventGrid.SystemEvents.DeviceTwinMetadata metadata = null, float? version = default(float?)) { throw null; }
public static Azure.Messaging.EventGrid.SystemEvents.EventHubCaptureFileCreatedEventData EventHubCaptureFileCreatedEventData(string fileurl = null, string fileType = null, string partitionId = null, int? sizeInBytes = default(int?), int? eventCount = default(int?), int? firstSequenceNumber = default(int?), int? lastSequenceNumber = default(int?), System.DateTimeOffset? firstEnqueueTime = default(System.DateTimeOffset?), System.DateTimeOffset? lastEnqueueTime = default(System.DateTimeOffset?)) { throw null; }
+ public static Azure.Messaging.EventGrid.SystemEvents.HealthcareDicomImageCreatedEventData HealthcareDicomImageCreatedEventData(string imageStudyInstanceUid = null, string imageSeriesInstanceUid = null, string imageSopInstanceUid = null, string serviceHostName = null, long? sequenceNumber = default(long?)) { throw null; }
+ public static Azure.Messaging.EventGrid.SystemEvents.HealthcareDicomImageDeletedEventData HealthcareDicomImageDeletedEventData(string imageStudyInstanceUid = null, string imageSeriesInstanceUid = null, string imageSopInstanceUid = null, string serviceHostName = null, long? sequenceNumber = default(long?)) { throw null; }
public static Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceCreatedEventData HealthcareFhirResourceCreatedEventData(Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceType? fhirResourceType = default(Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceType?), string fhirServiceHostName = null, string fhirResourceId = null, long? fhirResourceVersionId = default(long?)) { throw null; }
public static Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceDeletedEventData HealthcareFhirResourceDeletedEventData(Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceType? fhirResourceType = default(Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceType?), string fhirServiceHostName = null, string fhirResourceId = null, long? fhirResourceVersionId = default(long?)) { throw null; }
public static Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceUpdatedEventData HealthcareFhirResourceUpdatedEventData(Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceType? fhirResourceType = default(Azure.Messaging.EventGrid.SystemEvents.HealthcareFhirResourceType?), string fhirServiceHostName = null, string fhirResourceId = null, long? fhirResourceVersionId = default(long?)) { throw null; }
@@ -319,6 +321,8 @@ public static partial class SystemEventNames
public const string EventGridSubscriptionDeleted = "Microsoft.EventGrid.SubscriptionDeletedEvent";
public const string EventGridSubscriptionValidation = "Microsoft.EventGrid.SubscriptionValidationEvent";
public const string EventHubCaptureFileCreated = "Microsoft.EventHub.CaptureFileCreated";
+ public const string HealthcareDicomImageCreated = "Microsoft.HealthcareApis.DicomImageCreated";
+ public const string HealthcareDicomImageDeleted = "Microsoft.HealthcareApis.DicomImageDeleted";
public const string HealthcareFhirResourceCreated = "Microsoft.HealthcareApis.FhirResourceCreated";
public const string HealthcareFhirResourceDeleted = "Microsoft.HealthcareApis.FhirResourceDeleted";
public const string HealthcareFhirResourceUpdated = "Microsoft.HealthcareApis.FhirResourceUpdated";
@@ -1123,6 +1127,24 @@ internal EventHubCaptureFileCreatedEventData() { }
public string PartitionId { get { throw null; } }
public int? SizeInBytes { get { throw null; } }
}
+ public partial class HealthcareDicomImageCreatedEventData
+ {
+ internal HealthcareDicomImageCreatedEventData() { }
+ public string ImageSeriesInstanceUid { get { throw null; } }
+ public string ImageSopInstanceUid { get { throw null; } }
+ public string ImageStudyInstanceUid { get { throw null; } }
+ public long? SequenceNumber { get { throw null; } }
+ public string ServiceHostName { get { throw null; } }
+ }
+ public partial class HealthcareDicomImageDeletedEventData
+ {
+ internal HealthcareDicomImageDeletedEventData() { }
+ public string ImageSeriesInstanceUid { get { throw null; } }
+ public string ImageSopInstanceUid { get { throw null; } }
+ public string ImageStudyInstanceUid { get { throw null; } }
+ public long? SequenceNumber { get { throw null; } }
+ public string ServiceHostName { get { throw null; } }
+ }
public partial class HealthcareFhirResourceCreatedEventData
{
internal HealthcareFhirResourceCreatedEventData() { }
diff --git a/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/EventGridModelFactory.cs b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/EventGridModelFactory.cs
index 16ae07d1c844..98ea9ac2cda5 100644
--- a/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/EventGridModelFactory.cs
+++ b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/EventGridModelFactory.cs
@@ -1904,5 +1904,29 @@ public static HealthcareFhirResourceDeletedEventData HealthcareFhirResourceDelet
{
return new HealthcareFhirResourceDeletedEventData(fhirResourceType, fhirServiceHostName, fhirResourceId, fhirResourceVersionId);
}
+
+ /// Initializes a new instance of HealthcareDicomImageCreatedEventData.
+ /// Unique identifier for the Study.
+ /// Unique identifier for the Series.
+ /// Unique identifier for the DICOM Image.
+ /// Domain name of the DICOM account for this image.
+ /// Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service.
+ /// A new instance for mocking.
+ public static HealthcareDicomImageCreatedEventData HealthcareDicomImageCreatedEventData(string imageStudyInstanceUid = null, string imageSeriesInstanceUid = null, string imageSopInstanceUid = null, string serviceHostName = null, long? sequenceNumber = null)
+ {
+ return new HealthcareDicomImageCreatedEventData(imageStudyInstanceUid, imageSeriesInstanceUid, imageSopInstanceUid, serviceHostName, sequenceNumber);
+ }
+
+ /// Initializes a new instance of HealthcareDicomImageDeletedEventData.
+ /// Unique identifier for the Study.
+ /// Unique identifier for the Series.
+ /// Unique identifier for the DICOM Image.
+ /// Host name of the DICOM account for this image.
+ /// Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service.
+ /// A new instance for mocking.
+ public static HealthcareDicomImageDeletedEventData HealthcareDicomImageDeletedEventData(string imageStudyInstanceUid = null, string imageSeriesInstanceUid = null, string imageSopInstanceUid = null, string serviceHostName = null, long? sequenceNumber = null)
+ {
+ return new HealthcareDicomImageDeletedEventData(imageStudyInstanceUid, imageSeriesInstanceUid, imageSopInstanceUid, serviceHostName, sequenceNumber);
+ }
}
}
diff --git a/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/EventGridRestClient.cs b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/EventGridRestClient.cs
index 1d0527215cb2..4f4c87154945 100644
--- a/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/EventGridRestClient.cs
+++ b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/EventGridRestClient.cs
@@ -36,7 +36,7 @@ public EventGridRestClient(ClientDiagnostics clientDiagnostics, HttpPipeline pip
_apiVersion = apiVersion ?? throw new ArgumentNullException(nameof(apiVersion));
}
- internal HttpMessage CreatePublishEventsRequest(string topicHostname, IEnumerable events)
+ internal HttpMessage CreatePublishEventGridEventsRequest(string topicHostname, IEnumerable events)
{
var message = _pipeline.CreateMessage();
var request = message.Request;
@@ -44,7 +44,6 @@ internal HttpMessage CreatePublishEventsRequest(string topicHostname, IEnumerabl
var uri = new RawRequestUriBuilder();
uri.AppendRaw("https://", false);
uri.AppendRaw(topicHostname, false);
- uri.AppendPath("/api/events", false);
uri.AppendQuery("api-version", _apiVersion, true);
request.Uri = uri;
request.Headers.Add("Content-Type", "application/json");
@@ -64,7 +63,7 @@ internal HttpMessage CreatePublishEventsRequest(string topicHostname, IEnumerabl
/// An array of events to be published to Event Grid.
/// The cancellation token to use.
/// or is null.
- public async Task PublishEventsAsync(string topicHostname, IEnumerable events, CancellationToken cancellationToken = default)
+ public async Task PublishEventGridEventsAsync(string topicHostname, IEnumerable events, CancellationToken cancellationToken = default)
{
if (topicHostname == null)
{
@@ -75,7 +74,7 @@ public async Task PublishEventsAsync(string topicHostname, IEnumerable
throw new ArgumentNullException(nameof(events));
}
- using var message = CreatePublishEventsRequest(topicHostname, events);
+ using var message = CreatePublishEventGridEventsRequest(topicHostname, events);
await _pipeline.SendAsync(message, cancellationToken).ConfigureAwait(false);
switch (message.Response.Status)
{
@@ -91,7 +90,7 @@ public async Task PublishEventsAsync(string topicHostname, IEnumerable
/// An array of events to be published to Event Grid.
/// The cancellation token to use.
/// or is null.
- public Response PublishEvents(string topicHostname, IEnumerable events, CancellationToken cancellationToken = default)
+ public Response PublishEventGridEvents(string topicHostname, IEnumerable events, CancellationToken cancellationToken = default)
{
if (topicHostname == null)
{
@@ -102,7 +101,7 @@ public Response PublishEvents(string topicHostname, IEnumerable
+
+#nullable disable
+
+using System;
+using System.Text.Json;
+using System.Text.Json.Serialization;
+using Azure.Core;
+
+namespace Azure.Messaging.EventGrid.SystemEvents
+{
+ [JsonConverter(typeof(HealthcareDicomImageCreatedEventDataConverter))]
+ public partial class HealthcareDicomImageCreatedEventData
+ {
+ internal static HealthcareDicomImageCreatedEventData DeserializeHealthcareDicomImageCreatedEventData(JsonElement element)
+ {
+ Optional imageStudyInstanceUid = default;
+ Optional imageSeriesInstanceUid = default;
+ Optional imageSopInstanceUid = default;
+ Optional serviceHostName = default;
+ Optional sequenceNumber = default;
+ foreach (var property in element.EnumerateObject())
+ {
+ if (property.NameEquals("imageStudyInstanceUid"))
+ {
+ imageStudyInstanceUid = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("imageSeriesInstanceUid"))
+ {
+ imageSeriesInstanceUid = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("imageSopInstanceUid"))
+ {
+ imageSopInstanceUid = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("serviceHostName"))
+ {
+ serviceHostName = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("sequenceNumber"))
+ {
+ if (property.Value.ValueKind == JsonValueKind.Null)
+ {
+ property.ThrowNonNullablePropertyIsNull();
+ continue;
+ }
+ sequenceNumber = property.Value.GetInt64();
+ continue;
+ }
+ }
+ return new HealthcareDicomImageCreatedEventData(imageStudyInstanceUid.Value, imageSeriesInstanceUid.Value, imageSopInstanceUid.Value, serviceHostName.Value, Optional.ToNullable(sequenceNumber));
+ }
+
+ internal partial class HealthcareDicomImageCreatedEventDataConverter : JsonConverter
+ {
+ public override void Write(Utf8JsonWriter writer, HealthcareDicomImageCreatedEventData model, JsonSerializerOptions options)
+ {
+ throw new NotImplementedException();
+ }
+ public override HealthcareDicomImageCreatedEventData Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
+ {
+ using var document = JsonDocument.ParseValue(ref reader);
+ return DeserializeHealthcareDicomImageCreatedEventData(document.RootElement);
+ }
+ }
+ }
+}
diff --git a/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageCreatedEventData.cs b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageCreatedEventData.cs
new file mode 100644
index 000000000000..da4517b668ce
--- /dev/null
+++ b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageCreatedEventData.cs
@@ -0,0 +1,44 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+namespace Azure.Messaging.EventGrid.SystemEvents
+{
+ /// Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.DicomImageCreated event.
+ public partial class HealthcareDicomImageCreatedEventData
+ {
+ /// Initializes a new instance of HealthcareDicomImageCreatedEventData.
+ internal HealthcareDicomImageCreatedEventData()
+ {
+ }
+
+ /// Initializes a new instance of HealthcareDicomImageCreatedEventData.
+ /// Unique identifier for the Study.
+ /// Unique identifier for the Series.
+ /// Unique identifier for the DICOM Image.
+ /// Domain name of the DICOM account for this image.
+ /// Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service.
+ internal HealthcareDicomImageCreatedEventData(string imageStudyInstanceUid, string imageSeriesInstanceUid, string imageSopInstanceUid, string serviceHostName, long? sequenceNumber)
+ {
+ ImageStudyInstanceUid = imageStudyInstanceUid;
+ ImageSeriesInstanceUid = imageSeriesInstanceUid;
+ ImageSopInstanceUid = imageSopInstanceUid;
+ ServiceHostName = serviceHostName;
+ SequenceNumber = sequenceNumber;
+ }
+
+ /// Unique identifier for the Study.
+ public string ImageStudyInstanceUid { get; }
+ /// Unique identifier for the Series.
+ public string ImageSeriesInstanceUid { get; }
+ /// Unique identifier for the DICOM Image.
+ public string ImageSopInstanceUid { get; }
+ /// Domain name of the DICOM account for this image.
+ public string ServiceHostName { get; }
+ /// Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service.
+ public long? SequenceNumber { get; }
+ }
+}
diff --git a/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageDeletedEventData.Serialization.cs b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageDeletedEventData.Serialization.cs
new file mode 100644
index 000000000000..6422f78ea67e
--- /dev/null
+++ b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageDeletedEventData.Serialization.cs
@@ -0,0 +1,74 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Text.Json;
+using System.Text.Json.Serialization;
+using Azure.Core;
+
+namespace Azure.Messaging.EventGrid.SystemEvents
+{
+ [JsonConverter(typeof(HealthcareDicomImageDeletedEventDataConverter))]
+ public partial class HealthcareDicomImageDeletedEventData
+ {
+ internal static HealthcareDicomImageDeletedEventData DeserializeHealthcareDicomImageDeletedEventData(JsonElement element)
+ {
+ Optional imageStudyInstanceUid = default;
+ Optional imageSeriesInstanceUid = default;
+ Optional imageSopInstanceUid = default;
+ Optional serviceHostName = default;
+ Optional sequenceNumber = default;
+ foreach (var property in element.EnumerateObject())
+ {
+ if (property.NameEquals("imageStudyInstanceUid"))
+ {
+ imageStudyInstanceUid = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("imageSeriesInstanceUid"))
+ {
+ imageSeriesInstanceUid = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("imageSopInstanceUid"))
+ {
+ imageSopInstanceUid = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("serviceHostName"))
+ {
+ serviceHostName = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("sequenceNumber"))
+ {
+ if (property.Value.ValueKind == JsonValueKind.Null)
+ {
+ property.ThrowNonNullablePropertyIsNull();
+ continue;
+ }
+ sequenceNumber = property.Value.GetInt64();
+ continue;
+ }
+ }
+ return new HealthcareDicomImageDeletedEventData(imageStudyInstanceUid.Value, imageSeriesInstanceUid.Value, imageSopInstanceUid.Value, serviceHostName.Value, Optional.ToNullable(sequenceNumber));
+ }
+
+ internal partial class HealthcareDicomImageDeletedEventDataConverter : JsonConverter
+ {
+ public override void Write(Utf8JsonWriter writer, HealthcareDicomImageDeletedEventData model, JsonSerializerOptions options)
+ {
+ throw new NotImplementedException();
+ }
+ public override HealthcareDicomImageDeletedEventData Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
+ {
+ using var document = JsonDocument.ParseValue(ref reader);
+ return DeserializeHealthcareDicomImageDeletedEventData(document.RootElement);
+ }
+ }
+ }
+}
diff --git a/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageDeletedEventData.cs b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageDeletedEventData.cs
new file mode 100644
index 000000000000..52ec933f4fec
--- /dev/null
+++ b/sdk/eventgrid/Azure.Messaging.EventGrid/src/Generated/Models/HealthcareDicomImageDeletedEventData.cs
@@ -0,0 +1,44 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+namespace Azure.Messaging.EventGrid.SystemEvents
+{
+ /// Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.DicomImageDeleted event.
+ public partial class HealthcareDicomImageDeletedEventData
+ {
+ /// Initializes a new instance of HealthcareDicomImageDeletedEventData.
+ internal HealthcareDicomImageDeletedEventData()
+ {
+ }
+
+ /// Initializes a new instance of HealthcareDicomImageDeletedEventData.
+ /// Unique identifier for the Study.
+ /// Unique identifier for the Series.
+ /// Unique identifier for the DICOM Image.
+ /// Host name of the DICOM account for this image.
+ /// Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service.
+ internal HealthcareDicomImageDeletedEventData(string imageStudyInstanceUid, string imageSeriesInstanceUid, string imageSopInstanceUid, string serviceHostName, long? sequenceNumber)
+ {
+ ImageStudyInstanceUid = imageStudyInstanceUid;
+ ImageSeriesInstanceUid = imageSeriesInstanceUid;
+ ImageSopInstanceUid = imageSopInstanceUid;
+ ServiceHostName = serviceHostName;
+ SequenceNumber = sequenceNumber;
+ }
+
+ /// Unique identifier for the Study.
+ public string ImageStudyInstanceUid { get; }
+ /// Unique identifier for the Series.
+ public string ImageSeriesInstanceUid { get; }
+ /// Unique identifier for the DICOM Image.
+ public string ImageSopInstanceUid { get; }
+ /// Host name of the DICOM account for this image.
+ public string ServiceHostName { get; }
+ /// Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service.
+ public long? SequenceNumber { get; }
+ }
+}
diff --git a/sdk/eventgrid/Azure.Messaging.EventGrid/src/autorest.md b/sdk/eventgrid/Azure.Messaging.EventGrid/src/autorest.md
index 4f1c60a79fe9..e75f59568e44 100644
--- a/sdk/eventgrid/Azure.Messaging.EventGrid/src/autorest.md
+++ b/sdk/eventgrid/Azure.Messaging.EventGrid/src/autorest.md
@@ -4,7 +4,9 @@ Run `dotnet build /t:GenerateCode` to generate code.
``` yaml
title: EventGridClient
-require: https://github.com/Azure/azure-rest-api-specs/blob/f8811b7dd784712c3fb0941e04d9042f59a4d367/specification/eventgrid/data-plane/readme.md
+require:
+- /mnt/vss/_work/1/s/azure-rest-api-specs/specification/eventgrid/data-plane/readme.md
+
generation1-convenience-client: true
```
@@ -149,3 +151,4 @@ directive:
$.MediaLiveEventIngestHeartbeatEventData["properties"]["ingestDriftValue"]["x-ms-client-name"] = "IngestDriftValueInternal";
$.MediaLiveEventIngestHeartbeatEventData["properties"]["lastFragmentArrivalTime"]["format"] = "date-time";
```
+