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"; ``` +