diff --git a/mediaservices/resource-manager/v2019_05_01_preview/pom.xml b/mediaservices/resource-manager/v2019_05_01_preview/pom.xml
new file mode 100644
index 000000000000..465d38027e07
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/pom.xml
@@ -0,0 +1,133 @@
+
+
+ 4.0.0
+ com.microsoft.azure.mediaservices.v2019_05_01_preview
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.3-beta
+ ../../../pom.xml
+
+ azure-mgmt-media
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for Media Management
+ This package contains Microsoft Media Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ */
+ ]]>
+
+
+
+
+
+
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AacAudio.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AacAudio.java
new file mode 100644
index 000000000000..d787ccec36d5
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AacAudio.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes Advanced Audio Codec (AAC) audio encoding settings.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.AacAudio")
+public class AacAudio extends Audio {
+ /**
+ * The encoding profile to be used when encoding audio with AAC. Possible
+ * values include: 'AacLc', 'HeAacV1', 'HeAacV2'.
+ */
+ @JsonProperty(value = "profile")
+ private AacAudioProfile profile;
+
+ /**
+ * Get the encoding profile to be used when encoding audio with AAC. Possible values include: 'AacLc', 'HeAacV1', 'HeAacV2'.
+ *
+ * @return the profile value
+ */
+ public AacAudioProfile profile() {
+ return this.profile;
+ }
+
+ /**
+ * Set the encoding profile to be used when encoding audio with AAC. Possible values include: 'AacLc', 'HeAacV1', 'HeAacV2'.
+ *
+ * @param profile the profile value to set
+ * @return the AacAudio object itself.
+ */
+ public AacAudio withProfile(AacAudioProfile profile) {
+ this.profile = profile;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AacAudioProfile.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AacAudioProfile.java
new file mode 100644
index 000000000000..79460ace4c6a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AacAudioProfile.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for AacAudioProfile.
+ */
+public final class AacAudioProfile extends ExpandableStringEnum {
+ /** Static value AacLc for AacAudioProfile. */
+ public static final AacAudioProfile AAC_LC = fromString("AacLc");
+
+ /** Static value HeAacV1 for AacAudioProfile. */
+ public static final AacAudioProfile HE_AAC_V1 = fromString("HeAacV1");
+
+ /** Static value HeAacV2 for AacAudioProfile. */
+ public static final AacAudioProfile HE_AAC_V2 = fromString("HeAacV2");
+
+ /**
+ * Creates or finds a AacAudioProfile from its string representation.
+ * @param name a name to look for
+ * @return the corresponding AacAudioProfile
+ */
+ @JsonCreator
+ public static AacAudioProfile fromString(String name) {
+ return fromString(name, AacAudioProfile.class);
+ }
+
+ /**
+ * @return known AacAudioProfile values
+ */
+ public static Collection values() {
+ return values(AacAudioProfile.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AbsoluteClipTime.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AbsoluteClipTime.java
new file mode 100644
index 000000000000..1eeaf1bab31a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AbsoluteClipTime.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import org.joda.time.Period;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies the clip time as an absolute time position in the media file. The
+ * absolute time can point to a different position depending on whether the
+ * media file starts from a timestamp of zero or not.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.AbsoluteClipTime")
+public class AbsoluteClipTime extends ClipTime {
+ /**
+ * The time position on the timeline of the input media. It is usually
+ * specified as an ISO8601 period. e.g PT30S for 30 seconds.
+ */
+ @JsonProperty(value = "time", required = true)
+ private Period time;
+
+ /**
+ * Get the time position on the timeline of the input media. It is usually specified as an ISO8601 period. e.g PT30S for 30 seconds.
+ *
+ * @return the time value
+ */
+ public Period time() {
+ return this.time;
+ }
+
+ /**
+ * Set the time position on the timeline of the input media. It is usually specified as an ISO8601 period. e.g PT30S for 30 seconds.
+ *
+ * @param time the time value to set
+ * @return the AbsoluteClipTime object itself.
+ */
+ public AbsoluteClipTime withTime(Period time) {
+ this.time = time;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AccountFilter.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AccountFilter.java
new file mode 100644
index 000000000000..495134bede4e
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AccountFilter.java
@@ -0,0 +1,176 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.AccountFilterInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import java.util.List;
+
+/**
+ * Type representing AccountFilter.
+ */
+public interface AccountFilter extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the firstQuality value.
+ */
+ FirstQuality firstQuality();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the presentationTimeRange value.
+ */
+ PresentationTimeRange presentationTimeRange();
+
+ /**
+ * @return the tracks value.
+ */
+ List tracks();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the AccountFilter definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithMediaservice, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of AccountFilter definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a AccountFilter definition.
+ */
+ interface Blank extends WithMediaservice {
+ }
+
+ /**
+ * The stage of the accountfilter definition allowing to specify Mediaservice.
+ */
+ interface WithMediaservice {
+ /**
+ * Specifies resourceGroupName, accountName.
+ * @param resourceGroupName The name of the resource group within the Azure subscription
+ * @param accountName The Media Services account name
+ * @return the next definition stage
+ */
+ WithCreate withExistingMediaservice(String resourceGroupName, String accountName);
+ }
+
+ /**
+ * The stage of the accountfilter definition allowing to specify FirstQuality.
+ */
+ interface WithFirstQuality {
+ /**
+ * Specifies firstQuality.
+ * @param firstQuality The first quality
+ * @return the next definition stage
+ */
+ WithCreate withFirstQuality(FirstQuality firstQuality);
+ }
+
+ /**
+ * The stage of the accountfilter definition allowing to specify PresentationTimeRange.
+ */
+ interface WithPresentationTimeRange {
+ /**
+ * Specifies presentationTimeRange.
+ * @param presentationTimeRange The presentation time range
+ * @return the next definition stage
+ */
+ WithCreate withPresentationTimeRange(PresentationTimeRange presentationTimeRange);
+ }
+
+ /**
+ * The stage of the accountfilter definition allowing to specify Tracks.
+ */
+ interface WithTracks {
+ /**
+ * Specifies tracks.
+ * @param tracks The tracks selection conditions
+ * @return the next definition stage
+ */
+ WithCreate withTracks(List tracks);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithFirstQuality, DefinitionStages.WithPresentationTimeRange, DefinitionStages.WithTracks {
+ }
+ }
+ /**
+ * The template for a AccountFilter update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithFirstQuality, UpdateStages.WithPresentationTimeRange, UpdateStages.WithTracks {
+ }
+
+ /**
+ * Grouping of AccountFilter update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the accountfilter update allowing to specify FirstQuality.
+ */
+ interface WithFirstQuality {
+ /**
+ * Specifies firstQuality.
+ * @param firstQuality The first quality
+ * @return the next update stage
+ */
+ Update withFirstQuality(FirstQuality firstQuality);
+ }
+
+ /**
+ * The stage of the accountfilter update allowing to specify PresentationTimeRange.
+ */
+ interface WithPresentationTimeRange {
+ /**
+ * Specifies presentationTimeRange.
+ * @param presentationTimeRange The presentation time range
+ * @return the next update stage
+ */
+ Update withPresentationTimeRange(PresentationTimeRange presentationTimeRange);
+ }
+
+ /**
+ * The stage of the accountfilter update allowing to specify Tracks.
+ */
+ interface WithTracks {
+ /**
+ * Specifies tracks.
+ * @param tracks The tracks selection conditions
+ * @return the next update stage
+ */
+ Update withTracks(List tracks);
+ }
+
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AccountFilters.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AccountFilters.java
new file mode 100644
index 000000000000..16e1f02fcd64
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AccountFilters.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.AccountFiltersInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing AccountFilters.
+ */
+public interface AccountFilters extends SupportsCreating, HasInner {
+ /**
+ * Get an Account Filter.
+ * Get the details of an Account Filter in the Media Services account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param filterName The Account Filter name
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String accountName, String filterName);
+
+ /**
+ * List Account Filters.
+ * List Account Filters in the Media Services account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String accountName);
+
+ /**
+ * Delete an Account Filter.
+ * Deletes an Account Filter in the Media Services account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param filterName The Account Filter name
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String accountName, String filterName);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AkamaiAccessControl.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AkamaiAccessControl.java
new file mode 100644
index 000000000000..ae2e10830415
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AkamaiAccessControl.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Akamai access control.
+ */
+public class AkamaiAccessControl {
+ /**
+ * authentication key list.
+ */
+ @JsonProperty(value = "akamaiSignatureHeaderAuthenticationKeyList")
+ private List akamaiSignatureHeaderAuthenticationKeyList;
+
+ /**
+ * Get authentication key list.
+ *
+ * @return the akamaiSignatureHeaderAuthenticationKeyList value
+ */
+ public List akamaiSignatureHeaderAuthenticationKeyList() {
+ return this.akamaiSignatureHeaderAuthenticationKeyList;
+ }
+
+ /**
+ * Set authentication key list.
+ *
+ * @param akamaiSignatureHeaderAuthenticationKeyList the akamaiSignatureHeaderAuthenticationKeyList value to set
+ * @return the AkamaiAccessControl object itself.
+ */
+ public AkamaiAccessControl withAkamaiSignatureHeaderAuthenticationKeyList(List akamaiSignatureHeaderAuthenticationKeyList) {
+ this.akamaiSignatureHeaderAuthenticationKeyList = akamaiSignatureHeaderAuthenticationKeyList;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AkamaiSignatureHeaderAuthenticationKey.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AkamaiSignatureHeaderAuthenticationKey.java
new file mode 100644
index 000000000000..84dad6308351
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AkamaiSignatureHeaderAuthenticationKey.java
@@ -0,0 +1,96 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Akamai Signature Header authentication key.
+ */
+public class AkamaiSignatureHeaderAuthenticationKey {
+ /**
+ * identifier of the key.
+ */
+ @JsonProperty(value = "identifier")
+ private String identifier;
+
+ /**
+ * authentication key.
+ */
+ @JsonProperty(value = "base64Key")
+ private String base64Key;
+
+ /**
+ * The expiration time of the authentication key.
+ */
+ @JsonProperty(value = "expiration")
+ private DateTime expiration;
+
+ /**
+ * Get identifier of the key.
+ *
+ * @return the identifier value
+ */
+ public String identifier() {
+ return this.identifier;
+ }
+
+ /**
+ * Set identifier of the key.
+ *
+ * @param identifier the identifier value to set
+ * @return the AkamaiSignatureHeaderAuthenticationKey object itself.
+ */
+ public AkamaiSignatureHeaderAuthenticationKey withIdentifier(String identifier) {
+ this.identifier = identifier;
+ return this;
+ }
+
+ /**
+ * Get authentication key.
+ *
+ * @return the base64Key value
+ */
+ public String base64Key() {
+ return this.base64Key;
+ }
+
+ /**
+ * Set authentication key.
+ *
+ * @param base64Key the base64Key value to set
+ * @return the AkamaiSignatureHeaderAuthenticationKey object itself.
+ */
+ public AkamaiSignatureHeaderAuthenticationKey withBase64Key(String base64Key) {
+ this.base64Key = base64Key;
+ return this;
+ }
+
+ /**
+ * Get the expiration time of the authentication key.
+ *
+ * @return the expiration value
+ */
+ public DateTime expiration() {
+ return this.expiration;
+ }
+
+ /**
+ * Set the expiration time of the authentication key.
+ *
+ * @param expiration the expiration value to set
+ * @return the AkamaiSignatureHeaderAuthenticationKey object itself.
+ */
+ public AkamaiSignatureHeaderAuthenticationKey withExpiration(DateTime expiration) {
+ this.expiration = expiration;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AnalysisResolution.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AnalysisResolution.java
new file mode 100644
index 000000000000..e3fc3391b179
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AnalysisResolution.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for AnalysisResolution.
+ */
+public final class AnalysisResolution extends ExpandableStringEnum {
+ /** Static value SourceResolution for AnalysisResolution. */
+ public static final AnalysisResolution SOURCE_RESOLUTION = fromString("SourceResolution");
+
+ /** Static value StandardDefinition for AnalysisResolution. */
+ public static final AnalysisResolution STANDARD_DEFINITION = fromString("StandardDefinition");
+
+ /**
+ * Creates or finds a AnalysisResolution from its string representation.
+ * @param name a name to look for
+ * @return the corresponding AnalysisResolution
+ */
+ @JsonCreator
+ public static AnalysisResolution fromString(String name) {
+ return fromString(name, AnalysisResolution.class);
+ }
+
+ /**
+ * @return known AnalysisResolution values
+ */
+ public static Collection values() {
+ return values(AnalysisResolution.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ApiError.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ApiError.java
new file mode 100644
index 000000000000..9aa2034054f4
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ApiError.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The API error.
+ */
+public class ApiError {
+ /**
+ * ApiError.
+ * The error properties.
+ */
+ @JsonProperty(value = "error")
+ private ODataError error;
+
+ /**
+ * Get the error properties.
+ *
+ * @return the error value
+ */
+ public ODataError error() {
+ return this.error;
+ }
+
+ /**
+ * Set the error properties.
+ *
+ * @param error the error value to set
+ * @return the ApiError object itself.
+ */
+ public ApiError withError(ODataError error) {
+ this.error = error;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ApiErrorException.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ApiErrorException.java
new file mode 100644
index 000000000000..8a3f426a8bec
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ApiErrorException.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with ApiError information.
+ */
+public class ApiErrorException extends RestException {
+ /**
+ * Initializes a new instance of the ApiErrorException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public ApiErrorException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the ApiErrorException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ * @param body the deserialized response body
+ */
+ public ApiErrorException(final String message, final Response response, final ApiError body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public ApiError body() {
+ return (ApiError) super.body();
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Asset.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Asset.java
new file mode 100644
index 000000000000..f09218b3efaa
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Asset.java
@@ -0,0 +1,226 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.AssetInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import java.util.UUID;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing Asset.
+ */
+public interface Asset extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the alternateId value.
+ */
+ String alternateId();
+
+ /**
+ * @return the assetId value.
+ */
+ UUID assetId();
+
+ /**
+ * @return the container value.
+ */
+ String container();
+
+ /**
+ * @return the created value.
+ */
+ DateTime created();
+
+ /**
+ * @return the description value.
+ */
+ String description();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the lastModified value.
+ */
+ DateTime lastModified();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the storageAccountName value.
+ */
+ String storageAccountName();
+
+ /**
+ * @return the storageEncryptionFormat value.
+ */
+ AssetStorageEncryptionFormat storageEncryptionFormat();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the Asset definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithMediaservice, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Asset definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Asset definition.
+ */
+ interface Blank extends WithMediaservice {
+ }
+
+ /**
+ * The stage of the asset definition allowing to specify Mediaservice.
+ */
+ interface WithMediaservice {
+ /**
+ * Specifies resourceGroupName, accountName.
+ * @param resourceGroupName The name of the resource group within the Azure subscription
+ * @param accountName The Media Services account name
+ * @return the next definition stage
+ */
+ WithCreate withExistingMediaservice(String resourceGroupName, String accountName);
+ }
+
+ /**
+ * The stage of the asset definition allowing to specify AlternateId.
+ */
+ interface WithAlternateId {
+ /**
+ * Specifies alternateId.
+ * @param alternateId The alternate ID of the Asset
+ * @return the next definition stage
+ */
+ WithCreate withAlternateId(String alternateId);
+ }
+
+ /**
+ * The stage of the asset definition allowing to specify Container.
+ */
+ interface WithContainer {
+ /**
+ * Specifies container.
+ * @param container The name of the asset blob container
+ * @return the next definition stage
+ */
+ WithCreate withContainer(String container);
+ }
+
+ /**
+ * The stage of the asset definition allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description The Asset description
+ * @return the next definition stage
+ */
+ WithCreate withDescription(String description);
+ }
+
+ /**
+ * The stage of the asset definition allowing to specify StorageAccountName.
+ */
+ interface WithStorageAccountName {
+ /**
+ * Specifies storageAccountName.
+ * @param storageAccountName The name of the storage account
+ * @return the next definition stage
+ */
+ WithCreate withStorageAccountName(String storageAccountName);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithAlternateId, DefinitionStages.WithContainer, DefinitionStages.WithDescription, DefinitionStages.WithStorageAccountName {
+ }
+ }
+ /**
+ * The template for a Asset update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithAlternateId, UpdateStages.WithContainer, UpdateStages.WithDescription, UpdateStages.WithStorageAccountName {
+ }
+
+ /**
+ * Grouping of Asset update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the asset update allowing to specify AlternateId.
+ */
+ interface WithAlternateId {
+ /**
+ * Specifies alternateId.
+ * @param alternateId The alternate ID of the Asset
+ * @return the next update stage
+ */
+ Update withAlternateId(String alternateId);
+ }
+
+ /**
+ * The stage of the asset update allowing to specify Container.
+ */
+ interface WithContainer {
+ /**
+ * Specifies container.
+ * @param container The name of the asset blob container
+ * @return the next update stage
+ */
+ Update withContainer(String container);
+ }
+
+ /**
+ * The stage of the asset update allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description The Asset description
+ * @return the next update stage
+ */
+ Update withDescription(String description);
+ }
+
+ /**
+ * The stage of the asset update allowing to specify StorageAccountName.
+ */
+ interface WithStorageAccountName {
+ /**
+ * Specifies storageAccountName.
+ * @param storageAccountName The name of the storage account
+ * @return the next update stage
+ */
+ Update withStorageAccountName(String storageAccountName);
+ }
+
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetContainerPermission.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetContainerPermission.java
new file mode 100644
index 000000000000..a0cfb7329d3e
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetContainerPermission.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for AssetContainerPermission.
+ */
+public final class AssetContainerPermission extends ExpandableStringEnum {
+ /** Static value Read for AssetContainerPermission. */
+ public static final AssetContainerPermission READ = fromString("Read");
+
+ /** Static value ReadWrite for AssetContainerPermission. */
+ public static final AssetContainerPermission READ_WRITE = fromString("ReadWrite");
+
+ /** Static value ReadWriteDelete for AssetContainerPermission. */
+ public static final AssetContainerPermission READ_WRITE_DELETE = fromString("ReadWriteDelete");
+
+ /**
+ * Creates or finds a AssetContainerPermission from its string representation.
+ * @param name a name to look for
+ * @return the corresponding AssetContainerPermission
+ */
+ @JsonCreator
+ public static AssetContainerPermission fromString(String name) {
+ return fromString(name, AssetContainerPermission.class);
+ }
+
+ /**
+ * @return known AssetContainerPermission values
+ */
+ public static Collection values() {
+ return values(AssetContainerPermission.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetContainerSas.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetContainerSas.java
new file mode 100644
index 000000000000..f184dc2ea68d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetContainerSas.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.AssetContainerSasInner;
+import java.util.List;
+
+/**
+ * Type representing AssetContainerSas.
+ */
+public interface AssetContainerSas extends HasInner, HasManager {
+ /**
+ * @return the assetContainerSasUrls value.
+ */
+ List assetContainerSasUrls();
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFileEncryptionMetadata.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFileEncryptionMetadata.java
new file mode 100644
index 000000000000..7036dabb6b73
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFileEncryptionMetadata.java
@@ -0,0 +1,96 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.UUID;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Asset File Storage encryption metadata.
+ */
+public class AssetFileEncryptionMetadata {
+ /**
+ * The Asset File initialization vector.
+ */
+ @JsonProperty(value = "initializationVector")
+ private String initializationVector;
+
+ /**
+ * The Asset File name.
+ */
+ @JsonProperty(value = "assetFileName")
+ private String assetFileName;
+
+ /**
+ * The Asset File Id.
+ */
+ @JsonProperty(value = "assetFileId", required = true)
+ private UUID assetFileId;
+
+ /**
+ * Get the Asset File initialization vector.
+ *
+ * @return the initializationVector value
+ */
+ public String initializationVector() {
+ return this.initializationVector;
+ }
+
+ /**
+ * Set the Asset File initialization vector.
+ *
+ * @param initializationVector the initializationVector value to set
+ * @return the AssetFileEncryptionMetadata object itself.
+ */
+ public AssetFileEncryptionMetadata withInitializationVector(String initializationVector) {
+ this.initializationVector = initializationVector;
+ return this;
+ }
+
+ /**
+ * Get the Asset File name.
+ *
+ * @return the assetFileName value
+ */
+ public String assetFileName() {
+ return this.assetFileName;
+ }
+
+ /**
+ * Set the Asset File name.
+ *
+ * @param assetFileName the assetFileName value to set
+ * @return the AssetFileEncryptionMetadata object itself.
+ */
+ public AssetFileEncryptionMetadata withAssetFileName(String assetFileName) {
+ this.assetFileName = assetFileName;
+ return this;
+ }
+
+ /**
+ * Get the Asset File Id.
+ *
+ * @return the assetFileId value
+ */
+ public UUID assetFileId() {
+ return this.assetFileId;
+ }
+
+ /**
+ * Set the Asset File Id.
+ *
+ * @param assetFileId the assetFileId value to set
+ * @return the AssetFileEncryptionMetadata object itself.
+ */
+ public AssetFileEncryptionMetadata withAssetFileId(UUID assetFileId) {
+ this.assetFileId = assetFileId;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFilter.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFilter.java
new file mode 100644
index 000000000000..f4ecba5925f3
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFilter.java
@@ -0,0 +1,177 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.AssetFilterInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import java.util.List;
+
+/**
+ * Type representing AssetFilter.
+ */
+public interface AssetFilter extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the firstQuality value.
+ */
+ FirstQuality firstQuality();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the presentationTimeRange value.
+ */
+ PresentationTimeRange presentationTimeRange();
+
+ /**
+ * @return the tracks value.
+ */
+ List tracks();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the AssetFilter definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithAsset, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of AssetFilter definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a AssetFilter definition.
+ */
+ interface Blank extends WithAsset {
+ }
+
+ /**
+ * The stage of the assetfilter definition allowing to specify Asset.
+ */
+ interface WithAsset {
+ /**
+ * Specifies resourceGroupName, accountName, assetName.
+ * @param resourceGroupName The name of the resource group within the Azure subscription
+ * @param accountName The Media Services account name
+ * @param assetName The Asset name
+ * @return the next definition stage
+ */
+ WithCreate withExistingAsset(String resourceGroupName, String accountName, String assetName);
+ }
+
+ /**
+ * The stage of the assetfilter definition allowing to specify FirstQuality.
+ */
+ interface WithFirstQuality {
+ /**
+ * Specifies firstQuality.
+ * @param firstQuality The first quality
+ * @return the next definition stage
+ */
+ WithCreate withFirstQuality(FirstQuality firstQuality);
+ }
+
+ /**
+ * The stage of the assetfilter definition allowing to specify PresentationTimeRange.
+ */
+ interface WithPresentationTimeRange {
+ /**
+ * Specifies presentationTimeRange.
+ * @param presentationTimeRange The presentation time range
+ * @return the next definition stage
+ */
+ WithCreate withPresentationTimeRange(PresentationTimeRange presentationTimeRange);
+ }
+
+ /**
+ * The stage of the assetfilter definition allowing to specify Tracks.
+ */
+ interface WithTracks {
+ /**
+ * Specifies tracks.
+ * @param tracks The tracks selection conditions
+ * @return the next definition stage
+ */
+ WithCreate withTracks(List tracks);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithFirstQuality, DefinitionStages.WithPresentationTimeRange, DefinitionStages.WithTracks {
+ }
+ }
+ /**
+ * The template for a AssetFilter update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithFirstQuality, UpdateStages.WithPresentationTimeRange, UpdateStages.WithTracks {
+ }
+
+ /**
+ * Grouping of AssetFilter update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the assetfilter update allowing to specify FirstQuality.
+ */
+ interface WithFirstQuality {
+ /**
+ * Specifies firstQuality.
+ * @param firstQuality The first quality
+ * @return the next update stage
+ */
+ Update withFirstQuality(FirstQuality firstQuality);
+ }
+
+ /**
+ * The stage of the assetfilter update allowing to specify PresentationTimeRange.
+ */
+ interface WithPresentationTimeRange {
+ /**
+ * Specifies presentationTimeRange.
+ * @param presentationTimeRange The presentation time range
+ * @return the next update stage
+ */
+ Update withPresentationTimeRange(PresentationTimeRange presentationTimeRange);
+ }
+
+ /**
+ * The stage of the assetfilter update allowing to specify Tracks.
+ */
+ interface WithTracks {
+ /**
+ * Specifies tracks.
+ * @param tracks The tracks selection conditions
+ * @return the next update stage
+ */
+ Update withTracks(List tracks);
+ }
+
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFilters.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFilters.java
new file mode 100644
index 000000000000..b32f64542ba6
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetFilters.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.AssetFiltersInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing AssetFilters.
+ */
+public interface AssetFilters extends SupportsCreating, HasInner {
+ /**
+ * Get an Asset Filter.
+ * Get the details of an Asset Filter associated with the specified Asset.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param assetName The Asset name.
+ * @param filterName The Asset Filter name
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String accountName, String assetName, String filterName);
+
+ /**
+ * List Asset Filters.
+ * List Asset Filters associated with the specified Asset.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param assetName The Asset name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String accountName, final String assetName);
+
+ /**
+ * Delete an Asset Filter.
+ * Deletes an Asset Filter associated with the specified Asset.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param assetName The Asset name.
+ * @param filterName The Asset Filter name
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String accountName, String assetName, String filterName);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetStorageEncryptionFormat.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetStorageEncryptionFormat.java
new file mode 100644
index 000000000000..762a8209f77b
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetStorageEncryptionFormat.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for AssetStorageEncryptionFormat.
+ */
+public final class AssetStorageEncryptionFormat extends ExpandableStringEnum {
+ /** Static value None for AssetStorageEncryptionFormat. */
+ public static final AssetStorageEncryptionFormat NONE = fromString("None");
+
+ /** Static value MediaStorageClientEncryption for AssetStorageEncryptionFormat. */
+ public static final AssetStorageEncryptionFormat MEDIA_STORAGE_CLIENT_ENCRYPTION = fromString("MediaStorageClientEncryption");
+
+ /**
+ * Creates or finds a AssetStorageEncryptionFormat from its string representation.
+ * @param name a name to look for
+ * @return the corresponding AssetStorageEncryptionFormat
+ */
+ @JsonCreator
+ public static AssetStorageEncryptionFormat fromString(String name) {
+ return fromString(name, AssetStorageEncryptionFormat.class);
+ }
+
+ /**
+ * @return known AssetStorageEncryptionFormat values
+ */
+ public static Collection values() {
+ return values(AssetStorageEncryptionFormat.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetStreamingLocator.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetStreamingLocator.java
new file mode 100644
index 000000000000..ba488d7ef58b
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AssetStreamingLocator.java
@@ -0,0 +1,139 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import org.joda.time.DateTime;
+import java.util.UUID;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Properties of the Streaming Locator.
+ */
+public class AssetStreamingLocator {
+ /**
+ * Streaming Locator name.
+ */
+ @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /**
+ * Asset Name.
+ */
+ @JsonProperty(value = "assetName", access = JsonProperty.Access.WRITE_ONLY)
+ private String assetName;
+
+ /**
+ * The creation time of the Streaming Locator.
+ */
+ @JsonProperty(value = "created", access = JsonProperty.Access.WRITE_ONLY)
+ private DateTime created;
+
+ /**
+ * The start time of the Streaming Locator.
+ */
+ @JsonProperty(value = "startTime", access = JsonProperty.Access.WRITE_ONLY)
+ private DateTime startTime;
+
+ /**
+ * The end time of the Streaming Locator.
+ */
+ @JsonProperty(value = "endTime", access = JsonProperty.Access.WRITE_ONLY)
+ private DateTime endTime;
+
+ /**
+ * StreamingLocatorId of the Streaming Locator.
+ */
+ @JsonProperty(value = "streamingLocatorId", access = JsonProperty.Access.WRITE_ONLY)
+ private UUID streamingLocatorId;
+
+ /**
+ * Name of the Streaming Policy used by this Streaming Locator.
+ */
+ @JsonProperty(value = "streamingPolicyName", access = JsonProperty.Access.WRITE_ONLY)
+ private String streamingPolicyName;
+
+ /**
+ * Name of the default ContentKeyPolicy used by this Streaming Locator.
+ */
+ @JsonProperty(value = "defaultContentKeyPolicyName", access = JsonProperty.Access.WRITE_ONLY)
+ private String defaultContentKeyPolicyName;
+
+ /**
+ * Get streaming Locator name.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get asset Name.
+ *
+ * @return the assetName value
+ */
+ public String assetName() {
+ return this.assetName;
+ }
+
+ /**
+ * Get the creation time of the Streaming Locator.
+ *
+ * @return the created value
+ */
+ public DateTime created() {
+ return this.created;
+ }
+
+ /**
+ * Get the start time of the Streaming Locator.
+ *
+ * @return the startTime value
+ */
+ public DateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Get the end time of the Streaming Locator.
+ *
+ * @return the endTime value
+ */
+ public DateTime endTime() {
+ return this.endTime;
+ }
+
+ /**
+ * Get streamingLocatorId of the Streaming Locator.
+ *
+ * @return the streamingLocatorId value
+ */
+ public UUID streamingLocatorId() {
+ return this.streamingLocatorId;
+ }
+
+ /**
+ * Get name of the Streaming Policy used by this Streaming Locator.
+ *
+ * @return the streamingPolicyName value
+ */
+ public String streamingPolicyName() {
+ return this.streamingPolicyName;
+ }
+
+ /**
+ * Get name of the default ContentKeyPolicy used by this Streaming Locator.
+ *
+ * @return the defaultContentKeyPolicyName value
+ */
+ public String defaultContentKeyPolicyName() {
+ return this.defaultContentKeyPolicyName;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Assets.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Assets.java
new file mode 100644
index 000000000000..30392e04dea0
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Assets.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.AssetsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Assets.
+ */
+public interface Assets extends SupportsCreating, HasInner {
+ /**
+ * List the Asset URLs.
+ * Lists storage container URLs with shared access signatures (SAS) for uploading and downloading Asset content. The signatures are derived from the storage account keys.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param assetName The Asset name.
+ * @param parameters The request parameters
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listContainerSasAsync(String resourceGroupName, String accountName, String assetName, ListContainerSasInput parameters);
+
+ /**
+ * Gets the Asset storage key.
+ * Gets the Asset storage encryption keys used to decrypt content created by version 2 of the Media Services API.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param assetName The Asset name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getEncryptionKeyAsync(String resourceGroupName, String accountName, String assetName);
+
+ /**
+ * List Streaming Locators.
+ * Lists Streaming Locators which are associated with this asset.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param assetName The Asset name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listStreamingLocatorsAsync(String resourceGroupName, String accountName, String assetName);
+
+ /**
+ * Get an Asset.
+ * Get the details of an Asset in the Media Services account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param assetName The Asset name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String accountName, String assetName);
+
+ /**
+ * List Assets.
+ * List Assets in the Media Services account with optional filtering and ordering.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String accountName);
+
+ /**
+ * Delete an Asset.
+ * Deletes an Asset in the Media Services account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param assetName The Asset name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String accountName, String assetName);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Audio.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Audio.java
new file mode 100644
index 000000000000..1557a0efc948
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Audio.java
@@ -0,0 +1,103 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Defines the common properties for all audio codecs.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.Audio")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.AacAudio", value = AacAudio.class)
+})
+public class Audio extends Codec {
+ /**
+ * The number of channels in the audio.
+ */
+ @JsonProperty(value = "channels")
+ private Integer channels;
+
+ /**
+ * The sampling rate to use for encoding in hertz.
+ */
+ @JsonProperty(value = "samplingRate")
+ private Integer samplingRate;
+
+ /**
+ * The bitrate, in bits per second, of the output encoded audio.
+ */
+ @JsonProperty(value = "bitrate")
+ private Integer bitrate;
+
+ /**
+ * Get the number of channels in the audio.
+ *
+ * @return the channels value
+ */
+ public Integer channels() {
+ return this.channels;
+ }
+
+ /**
+ * Set the number of channels in the audio.
+ *
+ * @param channels the channels value to set
+ * @return the Audio object itself.
+ */
+ public Audio withChannels(Integer channels) {
+ this.channels = channels;
+ return this;
+ }
+
+ /**
+ * Get the sampling rate to use for encoding in hertz.
+ *
+ * @return the samplingRate value
+ */
+ public Integer samplingRate() {
+ return this.samplingRate;
+ }
+
+ /**
+ * Set the sampling rate to use for encoding in hertz.
+ *
+ * @param samplingRate the samplingRate value to set
+ * @return the Audio object itself.
+ */
+ public Audio withSamplingRate(Integer samplingRate) {
+ this.samplingRate = samplingRate;
+ return this;
+ }
+
+ /**
+ * Get the bitrate, in bits per second, of the output encoded audio.
+ *
+ * @return the bitrate value
+ */
+ public Integer bitrate() {
+ return this.bitrate;
+ }
+
+ /**
+ * Set the bitrate, in bits per second, of the output encoded audio.
+ *
+ * @param bitrate the bitrate value to set
+ * @return the Audio object itself.
+ */
+ public Audio withBitrate(Integer bitrate) {
+ this.bitrate = bitrate;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AudioAnalyzerPreset.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AudioAnalyzerPreset.java
new file mode 100644
index 000000000000..26c31d0c1a31
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AudioAnalyzerPreset.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * The Audio Analyzer preset applies a pre-defined set of AI-based analysis
+ * operations, including speech transcription. Currently, the preset supports
+ * processing of content with a single audio track.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.AudioAnalyzerPreset")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.VideoAnalyzerPreset", value = VideoAnalyzerPreset.class)
+})
+public class AudioAnalyzerPreset extends Preset {
+ /**
+ * The language for the audio payload in the input using the BCP-47 format
+ * of 'language tag-region' (e.g: 'en-US'). The list of supported
+ * languages are English ('en-US' and 'en-GB'), Spanish ('es-ES' and
+ * 'es-MX'), French ('fr-FR'), Italian ('it-IT'), Japanese ('ja-JP'),
+ * Portuguese ('pt-BR'), Chinese ('zh-CN'), German ('de-DE'), Arabic
+ * ('ar-EG' and 'ar-SY'), Russian ('ru-RU'), Hindi ('hi-IN'), and Korean
+ * ('ko-KR'). If you know the language of your content, it is recommended
+ * that you specify it. If the language isn't specified or set to null,
+ * automatic language detection will choose the first language detected and
+ * process with the selected language for the duration of the file. This
+ * language detection feature currently supports English, Chinese, French,
+ * German, Italian, Japanese, Spanish, Russian, and Portuguese. It does not
+ * currently support dynamically switching between languages after the
+ * first language is detected. The automatic detection works best with
+ * audio recordings with clearly discernable speech. If automatic detection
+ * fails to find the language, transcription would fallback to 'en-US'.".
+ */
+ @JsonProperty(value = "audioLanguage")
+ private String audioLanguage;
+
+ /**
+ * Get the language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of supported languages are English ('en-US' and 'en-GB'), Spanish ('es-ES' and 'es-MX'), French ('fr-FR'), Italian ('it-IT'), Japanese ('ja-JP'), Portuguese ('pt-BR'), Chinese ('zh-CN'), German ('de-DE'), Arabic ('ar-EG' and 'ar-SY'), Russian ('ru-RU'), Hindi ('hi-IN'), and Korean ('ko-KR'). If you know the language of your content, it is recommended that you specify it. If the language isn't specified or set to null, automatic language detection will choose the first language detected and process with the selected language for the duration of the file. This language detection feature currently supports English, Chinese, French, German, Italian, Japanese, Spanish, Russian, and Portuguese. It does not currently support dynamically switching between languages after the first language is detected. The automatic detection works best with audio recordings with clearly discernable speech. If automatic detection fails to find the language, transcription would fallback to 'en-US'.".
+ *
+ * @return the audioLanguage value
+ */
+ public String audioLanguage() {
+ return this.audioLanguage;
+ }
+
+ /**
+ * Set the language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of supported languages are English ('en-US' and 'en-GB'), Spanish ('es-ES' and 'es-MX'), French ('fr-FR'), Italian ('it-IT'), Japanese ('ja-JP'), Portuguese ('pt-BR'), Chinese ('zh-CN'), German ('de-DE'), Arabic ('ar-EG' and 'ar-SY'), Russian ('ru-RU'), Hindi ('hi-IN'), and Korean ('ko-KR'). If you know the language of your content, it is recommended that you specify it. If the language isn't specified or set to null, automatic language detection will choose the first language detected and process with the selected language for the duration of the file. This language detection feature currently supports English, Chinese, French, German, Italian, Japanese, Spanish, Russian, and Portuguese. It does not currently support dynamically switching between languages after the first language is detected. The automatic detection works best with audio recordings with clearly discernable speech. If automatic detection fails to find the language, transcription would fallback to 'en-US'.".
+ *
+ * @param audioLanguage the audioLanguage value to set
+ * @return the AudioAnalyzerPreset object itself.
+ */
+ public AudioAnalyzerPreset withAudioLanguage(String audioLanguage) {
+ this.audioLanguage = audioLanguage;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AudioOverlay.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AudioOverlay.java
new file mode 100644
index 000000000000..81ca49783813
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/AudioOverlay.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes the properties of an audio overlay.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.AudioOverlay")
+public class AudioOverlay extends Overlay {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/BuiltInStandardEncoderPreset.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/BuiltInStandardEncoderPreset.java
new file mode 100644
index 000000000000..822d72d0be85
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/BuiltInStandardEncoderPreset.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes a built-in preset for encoding the input video with the Standard
+ * Encoder.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.BuiltInStandardEncoderPreset")
+public class BuiltInStandardEncoderPreset extends Preset {
+ /**
+ * The built-in preset to be used for encoding videos. Possible values
+ * include: 'H264SingleBitrateSD', 'H264SingleBitrate720p',
+ * 'H264SingleBitrate1080p', 'AdaptiveStreaming', 'AACGoodQualityAudio',
+ * 'ContentAwareEncodingExperimental', 'H264MultipleBitrate1080p',
+ * 'H264MultipleBitrate720p', 'H264MultipleBitrateSD'.
+ */
+ @JsonProperty(value = "presetName", required = true)
+ private EncoderNamedPreset presetName;
+
+ /**
+ * Get the built-in preset to be used for encoding videos. Possible values include: 'H264SingleBitrateSD', 'H264SingleBitrate720p', 'H264SingleBitrate1080p', 'AdaptiveStreaming', 'AACGoodQualityAudio', 'ContentAwareEncodingExperimental', 'H264MultipleBitrate1080p', 'H264MultipleBitrate720p', 'H264MultipleBitrateSD'.
+ *
+ * @return the presetName value
+ */
+ public EncoderNamedPreset presetName() {
+ return this.presetName;
+ }
+
+ /**
+ * Set the built-in preset to be used for encoding videos. Possible values include: 'H264SingleBitrateSD', 'H264SingleBitrate720p', 'H264SingleBitrate1080p', 'AdaptiveStreaming', 'AACGoodQualityAudio', 'ContentAwareEncodingExperimental', 'H264MultipleBitrate1080p', 'H264MultipleBitrate720p', 'H264MultipleBitrateSD'.
+ *
+ * @param presetName the presetName value to set
+ * @return the BuiltInStandardEncoderPreset object itself.
+ */
+ public BuiltInStandardEncoderPreset withPresetName(EncoderNamedPreset presetName) {
+ this.presetName = presetName;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CbcsDrmConfiguration.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CbcsDrmConfiguration.java
new file mode 100644
index 000000000000..9f52459a067b
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CbcsDrmConfiguration.java
@@ -0,0 +1,96 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Class to specify DRM configurations of CommonEncryptionCbcs scheme in
+ * Streaming Policy.
+ */
+public class CbcsDrmConfiguration {
+ /**
+ * FairPlay configurations.
+ */
+ @JsonProperty(value = "fairPlay")
+ private StreamingPolicyFairPlayConfiguration fairPlay;
+
+ /**
+ * PlayReady configurations.
+ */
+ @JsonProperty(value = "playReady")
+ private StreamingPolicyPlayReadyConfiguration playReady;
+
+ /**
+ * Widevine configurations.
+ */
+ @JsonProperty(value = "widevine")
+ private StreamingPolicyWidevineConfiguration widevine;
+
+ /**
+ * Get fairPlay configurations.
+ *
+ * @return the fairPlay value
+ */
+ public StreamingPolicyFairPlayConfiguration fairPlay() {
+ return this.fairPlay;
+ }
+
+ /**
+ * Set fairPlay configurations.
+ *
+ * @param fairPlay the fairPlay value to set
+ * @return the CbcsDrmConfiguration object itself.
+ */
+ public CbcsDrmConfiguration withFairPlay(StreamingPolicyFairPlayConfiguration fairPlay) {
+ this.fairPlay = fairPlay;
+ return this;
+ }
+
+ /**
+ * Get playReady configurations.
+ *
+ * @return the playReady value
+ */
+ public StreamingPolicyPlayReadyConfiguration playReady() {
+ return this.playReady;
+ }
+
+ /**
+ * Set playReady configurations.
+ *
+ * @param playReady the playReady value to set
+ * @return the CbcsDrmConfiguration object itself.
+ */
+ public CbcsDrmConfiguration withPlayReady(StreamingPolicyPlayReadyConfiguration playReady) {
+ this.playReady = playReady;
+ return this;
+ }
+
+ /**
+ * Get widevine configurations.
+ *
+ * @return the widevine value
+ */
+ public StreamingPolicyWidevineConfiguration widevine() {
+ return this.widevine;
+ }
+
+ /**
+ * Set widevine configurations.
+ *
+ * @param widevine the widevine value to set
+ * @return the CbcsDrmConfiguration object itself.
+ */
+ public CbcsDrmConfiguration withWidevine(StreamingPolicyWidevineConfiguration widevine) {
+ this.widevine = widevine;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CencDrmConfiguration.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CencDrmConfiguration.java
new file mode 100644
index 000000000000..f28841cbeaf6
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CencDrmConfiguration.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Class to specify DRM configurations of CommonEncryptionCenc scheme in
+ * Streaming Policy.
+ */
+public class CencDrmConfiguration {
+ /**
+ * PlayReady configurations.
+ */
+ @JsonProperty(value = "playReady")
+ private StreamingPolicyPlayReadyConfiguration playReady;
+
+ /**
+ * Widevine configurations.
+ */
+ @JsonProperty(value = "widevine")
+ private StreamingPolicyWidevineConfiguration widevine;
+
+ /**
+ * Get playReady configurations.
+ *
+ * @return the playReady value
+ */
+ public StreamingPolicyPlayReadyConfiguration playReady() {
+ return this.playReady;
+ }
+
+ /**
+ * Set playReady configurations.
+ *
+ * @param playReady the playReady value to set
+ * @return the CencDrmConfiguration object itself.
+ */
+ public CencDrmConfiguration withPlayReady(StreamingPolicyPlayReadyConfiguration playReady) {
+ this.playReady = playReady;
+ return this;
+ }
+
+ /**
+ * Get widevine configurations.
+ *
+ * @return the widevine value
+ */
+ public StreamingPolicyWidevineConfiguration widevine() {
+ return this.widevine;
+ }
+
+ /**
+ * Set widevine configurations.
+ *
+ * @param widevine the widevine value to set
+ * @return the CencDrmConfiguration object itself.
+ */
+ public CencDrmConfiguration withWidevine(StreamingPolicyWidevineConfiguration widevine) {
+ this.widevine = widevine;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CheckNameAvailabilityInput.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CheckNameAvailabilityInput.java
new file mode 100644
index 000000000000..7beec19cbda1
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CheckNameAvailabilityInput.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The input to the check name availability request.
+ */
+public class CheckNameAvailabilityInput {
+ /**
+ * The account name.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The account type. For a Media Services account, this should be
+ * 'MediaServices'.
+ */
+ @JsonProperty(value = "type")
+ private String type;
+
+ /**
+ * Get the account name.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the account name.
+ *
+ * @param name the name value to set
+ * @return the CheckNameAvailabilityInput object itself.
+ */
+ public CheckNameAvailabilityInput withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the account type. For a Media Services account, this should be 'MediaServices'.
+ *
+ * @return the type value
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Set the account type. For a Media Services account, this should be 'MediaServices'.
+ *
+ * @param type the type value to set
+ * @return the CheckNameAvailabilityInput object itself.
+ */
+ public CheckNameAvailabilityInput withType(String type) {
+ this.type = type;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ClipTime.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ClipTime.java
new file mode 100644
index 000000000000..e3fb28cd74dc
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ClipTime.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base class for specifying a clip time. Use sub classes of this class to
+ * specify the time position in the media.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("ClipTime")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.AbsoluteClipTime", value = AbsoluteClipTime.class)
+})
+public class ClipTime {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Codec.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Codec.java
new file mode 100644
index 000000000000..648f1c58e2e8
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Codec.java
@@ -0,0 +1,55 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Describes the basic properties of all codecs.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("Codec")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.Audio", value = Audio.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.CopyVideo", value = CopyVideo.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.Video", value = Video.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.CopyAudio", value = CopyAudio.class)
+})
+public class Codec {
+ /**
+ * An optional label for the codec. The label can be used to control muxing
+ * behavior.
+ */
+ @JsonProperty(value = "label")
+ private String label;
+
+ /**
+ * Get an optional label for the codec. The label can be used to control muxing behavior.
+ *
+ * @return the label value
+ */
+ public String label() {
+ return this.label;
+ }
+
+ /**
+ * Set an optional label for the codec. The label can be used to control muxing behavior.
+ *
+ * @param label the label value to set
+ * @return the Codec object itself.
+ */
+ public Codec withLabel(String label) {
+ this.label = label;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CommonEncryptionCbcs.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CommonEncryptionCbcs.java
new file mode 100644
index 000000000000..1a2d068fde6a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CommonEncryptionCbcs.java
@@ -0,0 +1,123 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Class for CommonEncryptionCbcs encryption scheme.
+ */
+public class CommonEncryptionCbcs {
+ /**
+ * Representing supported protocols.
+ */
+ @JsonProperty(value = "enabledProtocols")
+ private EnabledProtocols enabledProtocols;
+
+ /**
+ * Representing which tracks should not be encrypted.
+ */
+ @JsonProperty(value = "clearTracks")
+ private List clearTracks;
+
+ /**
+ * Representing default content key for each encryption scheme and separate
+ * content keys for specific tracks.
+ */
+ @JsonProperty(value = "contentKeys")
+ private StreamingPolicyContentKeys contentKeys;
+
+ /**
+ * Configuration of DRMs for current encryption scheme.
+ */
+ @JsonProperty(value = "drm")
+ private CbcsDrmConfiguration drm;
+
+ /**
+ * Get representing supported protocols.
+ *
+ * @return the enabledProtocols value
+ */
+ public EnabledProtocols enabledProtocols() {
+ return this.enabledProtocols;
+ }
+
+ /**
+ * Set representing supported protocols.
+ *
+ * @param enabledProtocols the enabledProtocols value to set
+ * @return the CommonEncryptionCbcs object itself.
+ */
+ public CommonEncryptionCbcs withEnabledProtocols(EnabledProtocols enabledProtocols) {
+ this.enabledProtocols = enabledProtocols;
+ return this;
+ }
+
+ /**
+ * Get representing which tracks should not be encrypted.
+ *
+ * @return the clearTracks value
+ */
+ public List clearTracks() {
+ return this.clearTracks;
+ }
+
+ /**
+ * Set representing which tracks should not be encrypted.
+ *
+ * @param clearTracks the clearTracks value to set
+ * @return the CommonEncryptionCbcs object itself.
+ */
+ public CommonEncryptionCbcs withClearTracks(List clearTracks) {
+ this.clearTracks = clearTracks;
+ return this;
+ }
+
+ /**
+ * Get representing default content key for each encryption scheme and separate content keys for specific tracks.
+ *
+ * @return the contentKeys value
+ */
+ public StreamingPolicyContentKeys contentKeys() {
+ return this.contentKeys;
+ }
+
+ /**
+ * Set representing default content key for each encryption scheme and separate content keys for specific tracks.
+ *
+ * @param contentKeys the contentKeys value to set
+ * @return the CommonEncryptionCbcs object itself.
+ */
+ public CommonEncryptionCbcs withContentKeys(StreamingPolicyContentKeys contentKeys) {
+ this.contentKeys = contentKeys;
+ return this;
+ }
+
+ /**
+ * Get configuration of DRMs for current encryption scheme.
+ *
+ * @return the drm value
+ */
+ public CbcsDrmConfiguration drm() {
+ return this.drm;
+ }
+
+ /**
+ * Set configuration of DRMs for current encryption scheme.
+ *
+ * @param drm the drm value to set
+ * @return the CommonEncryptionCbcs object itself.
+ */
+ public CommonEncryptionCbcs withDrm(CbcsDrmConfiguration drm) {
+ this.drm = drm;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CommonEncryptionCenc.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CommonEncryptionCenc.java
new file mode 100644
index 000000000000..fd319df0f0d8
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CommonEncryptionCenc.java
@@ -0,0 +1,123 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Class for envelope encryption scheme.
+ */
+public class CommonEncryptionCenc {
+ /**
+ * Representing supported protocols.
+ */
+ @JsonProperty(value = "enabledProtocols")
+ private EnabledProtocols enabledProtocols;
+
+ /**
+ * Representing which tracks should not be encrypted.
+ */
+ @JsonProperty(value = "clearTracks")
+ private List clearTracks;
+
+ /**
+ * Representing default content key for each encryption scheme and separate
+ * content keys for specific tracks.
+ */
+ @JsonProperty(value = "contentKeys")
+ private StreamingPolicyContentKeys contentKeys;
+
+ /**
+ * Configuration of DRMs for CommonEncryptionCenc encryption scheme.
+ */
+ @JsonProperty(value = "drm")
+ private CencDrmConfiguration drm;
+
+ /**
+ * Get representing supported protocols.
+ *
+ * @return the enabledProtocols value
+ */
+ public EnabledProtocols enabledProtocols() {
+ return this.enabledProtocols;
+ }
+
+ /**
+ * Set representing supported protocols.
+ *
+ * @param enabledProtocols the enabledProtocols value to set
+ * @return the CommonEncryptionCenc object itself.
+ */
+ public CommonEncryptionCenc withEnabledProtocols(EnabledProtocols enabledProtocols) {
+ this.enabledProtocols = enabledProtocols;
+ return this;
+ }
+
+ /**
+ * Get representing which tracks should not be encrypted.
+ *
+ * @return the clearTracks value
+ */
+ public List clearTracks() {
+ return this.clearTracks;
+ }
+
+ /**
+ * Set representing which tracks should not be encrypted.
+ *
+ * @param clearTracks the clearTracks value to set
+ * @return the CommonEncryptionCenc object itself.
+ */
+ public CommonEncryptionCenc withClearTracks(List clearTracks) {
+ this.clearTracks = clearTracks;
+ return this;
+ }
+
+ /**
+ * Get representing default content key for each encryption scheme and separate content keys for specific tracks.
+ *
+ * @return the contentKeys value
+ */
+ public StreamingPolicyContentKeys contentKeys() {
+ return this.contentKeys;
+ }
+
+ /**
+ * Set representing default content key for each encryption scheme and separate content keys for specific tracks.
+ *
+ * @param contentKeys the contentKeys value to set
+ * @return the CommonEncryptionCenc object itself.
+ */
+ public CommonEncryptionCenc withContentKeys(StreamingPolicyContentKeys contentKeys) {
+ this.contentKeys = contentKeys;
+ return this;
+ }
+
+ /**
+ * Get configuration of DRMs for CommonEncryptionCenc encryption scheme.
+ *
+ * @return the drm value
+ */
+ public CencDrmConfiguration drm() {
+ return this.drm;
+ }
+
+ /**
+ * Set configuration of DRMs for CommonEncryptionCenc encryption scheme.
+ *
+ * @param drm the drm value to set
+ * @return the CommonEncryptionCenc object itself.
+ */
+ public CommonEncryptionCenc withDrm(CencDrmConfiguration drm) {
+ this.drm = drm;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicies.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicies.java
new file mode 100644
index 000000000000..5fa9d256f2d2
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicies.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.ContentKeyPoliciesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing ContentKeyPolicies.
+ */
+public interface ContentKeyPolicies extends SupportsCreating, HasInner {
+ /**
+ * Get a Content Key Policy with secrets.
+ * Get a Content Key Policy including secret values.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param contentKeyPolicyName The Content Key Policy name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getPolicyPropertiesWithSecretsAsync(String resourceGroupName, String accountName, String contentKeyPolicyName);
+
+ /**
+ * Get a Content Key Policy.
+ * Get the details of a Content Key Policy in the Media Services account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param contentKeyPolicyName The Content Key Policy name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String accountName, String contentKeyPolicyName);
+
+ /**
+ * List Content Key Policies.
+ * Lists the Content Key Policies in the account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String accountName);
+
+ /**
+ * Delete a Content Key Policy.
+ * Deletes a Content Key Policy in the Media Services account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param contentKeyPolicyName The Content Key Policy name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String accountName, String contentKeyPolicyName);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicy.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicy.java
new file mode 100644
index 000000000000..89b700aa7eb8
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicy.java
@@ -0,0 +1,152 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.ContentKeyPolicyInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import java.util.UUID;
+import org.joda.time.DateTime;
+import java.util.List;
+
+/**
+ * Type representing ContentKeyPolicy.
+ */
+public interface ContentKeyPolicy extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the created value.
+ */
+ DateTime created();
+
+ /**
+ * @return the description value.
+ */
+ String description();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the lastModified value.
+ */
+ DateTime lastModified();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the options value.
+ */
+ List options();
+
+ /**
+ * @return the policyId value.
+ */
+ UUID policyId();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the ContentKeyPolicy definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithMediaservice, DefinitionStages.WithOptions, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of ContentKeyPolicy definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a ContentKeyPolicy definition.
+ */
+ interface Blank extends WithMediaservice {
+ }
+
+ /**
+ * The stage of the contentkeypolicy definition allowing to specify Mediaservice.
+ */
+ interface WithMediaservice {
+ /**
+ * Specifies resourceGroupName, accountName.
+ * @param resourceGroupName The name of the resource group within the Azure subscription
+ * @param accountName The Media Services account name
+ * @return the next definition stage
+ */
+ WithOptions withExistingMediaservice(String resourceGroupName, String accountName);
+ }
+
+ /**
+ * The stage of the contentkeypolicy definition allowing to specify Options.
+ */
+ interface WithOptions {
+ /**
+ * Specifies options.
+ * @param options The Key Policy options
+ * @return the next definition stage
+ */
+ WithCreate withOptions(List options);
+ }
+
+ /**
+ * The stage of the contentkeypolicy definition allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description A description for the Policy
+ * @return the next definition stage
+ */
+ WithCreate withDescription(String description);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithDescription {
+ }
+ }
+ /**
+ * The template for a ContentKeyPolicy update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithDescription {
+ }
+
+ /**
+ * Grouping of ContentKeyPolicy update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the contentkeypolicy update allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description A description for the Policy
+ * @return the next update stage
+ */
+ Update withDescription(String description);
+ }
+
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyClearKeyConfiguration.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyClearKeyConfiguration.java
new file mode 100644
index 000000000000..7bd1fabf0ea9
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyClearKeyConfiguration.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Represents a configuration for non-DRM keys.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyClearKeyConfiguration")
+public class ContentKeyPolicyClearKeyConfiguration extends ContentKeyPolicyConfiguration {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyConfiguration.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyConfiguration.java
new file mode 100644
index 000000000000..c20099a62760
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyConfiguration.java
@@ -0,0 +1,29 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base class for Content Key Policy configuration. A derived class must be
+ * used to create a configuration.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("ContentKeyPolicyConfiguration")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyClearKeyConfiguration", value = ContentKeyPolicyClearKeyConfiguration.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyUnknownConfiguration", value = ContentKeyPolicyUnknownConfiguration.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyWidevineConfiguration", value = ContentKeyPolicyWidevineConfiguration.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyPlayReadyConfiguration", value = ContentKeyPolicyPlayReadyConfiguration.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyFairPlayConfiguration", value = ContentKeyPolicyFairPlayConfiguration.class)
+})
+public class ContentKeyPolicyConfiguration {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyFairPlayConfiguration.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyFairPlayConfiguration.java
new file mode 100644
index 000000000000..b2742e35e432
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyFairPlayConfiguration.java
@@ -0,0 +1,153 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies a configuration for FairPlay licenses.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyFairPlayConfiguration")
+public class ContentKeyPolicyFairPlayConfiguration extends ContentKeyPolicyConfiguration {
+ /**
+ * The key that must be used as FairPlay Application Secret key.
+ */
+ @JsonProperty(value = "ask", required = true)
+ private byte[] ask;
+
+ /**
+ * The password encrypting FairPlay certificate in PKCS 12 (pfx) format.
+ */
+ @JsonProperty(value = "fairPlayPfxPassword", required = true)
+ private String fairPlayPfxPassword;
+
+ /**
+ * The Base64 representation of FairPlay certificate in PKCS 12 (pfx)
+ * format (including private key).
+ */
+ @JsonProperty(value = "fairPlayPfx", required = true)
+ private String fairPlayPfx;
+
+ /**
+ * The rental and lease key type. Possible values include: 'Unknown',
+ * 'Undefined', 'PersistentUnlimited', 'PersistentLimited'.
+ */
+ @JsonProperty(value = "rentalAndLeaseKeyType", required = true)
+ private ContentKeyPolicyFairPlayRentalAndLeaseKeyType rentalAndLeaseKeyType;
+
+ /**
+ * The rental duration. Must be greater than or equal to 0.
+ */
+ @JsonProperty(value = "rentalDuration", required = true)
+ private long rentalDuration;
+
+ /**
+ * Get the key that must be used as FairPlay Application Secret key.
+ *
+ * @return the ask value
+ */
+ public byte[] ask() {
+ return this.ask;
+ }
+
+ /**
+ * Set the key that must be used as FairPlay Application Secret key.
+ *
+ * @param ask the ask value to set
+ * @return the ContentKeyPolicyFairPlayConfiguration object itself.
+ */
+ public ContentKeyPolicyFairPlayConfiguration withAsk(byte[] ask) {
+ this.ask = ask;
+ return this;
+ }
+
+ /**
+ * Get the password encrypting FairPlay certificate in PKCS 12 (pfx) format.
+ *
+ * @return the fairPlayPfxPassword value
+ */
+ public String fairPlayPfxPassword() {
+ return this.fairPlayPfxPassword;
+ }
+
+ /**
+ * Set the password encrypting FairPlay certificate in PKCS 12 (pfx) format.
+ *
+ * @param fairPlayPfxPassword the fairPlayPfxPassword value to set
+ * @return the ContentKeyPolicyFairPlayConfiguration object itself.
+ */
+ public ContentKeyPolicyFairPlayConfiguration withFairPlayPfxPassword(String fairPlayPfxPassword) {
+ this.fairPlayPfxPassword = fairPlayPfxPassword;
+ return this;
+ }
+
+ /**
+ * Get the Base64 representation of FairPlay certificate in PKCS 12 (pfx) format (including private key).
+ *
+ * @return the fairPlayPfx value
+ */
+ public String fairPlayPfx() {
+ return this.fairPlayPfx;
+ }
+
+ /**
+ * Set the Base64 representation of FairPlay certificate in PKCS 12 (pfx) format (including private key).
+ *
+ * @param fairPlayPfx the fairPlayPfx value to set
+ * @return the ContentKeyPolicyFairPlayConfiguration object itself.
+ */
+ public ContentKeyPolicyFairPlayConfiguration withFairPlayPfx(String fairPlayPfx) {
+ this.fairPlayPfx = fairPlayPfx;
+ return this;
+ }
+
+ /**
+ * Get the rental and lease key type. Possible values include: 'Unknown', 'Undefined', 'PersistentUnlimited', 'PersistentLimited'.
+ *
+ * @return the rentalAndLeaseKeyType value
+ */
+ public ContentKeyPolicyFairPlayRentalAndLeaseKeyType rentalAndLeaseKeyType() {
+ return this.rentalAndLeaseKeyType;
+ }
+
+ /**
+ * Set the rental and lease key type. Possible values include: 'Unknown', 'Undefined', 'PersistentUnlimited', 'PersistentLimited'.
+ *
+ * @param rentalAndLeaseKeyType the rentalAndLeaseKeyType value to set
+ * @return the ContentKeyPolicyFairPlayConfiguration object itself.
+ */
+ public ContentKeyPolicyFairPlayConfiguration withRentalAndLeaseKeyType(ContentKeyPolicyFairPlayRentalAndLeaseKeyType rentalAndLeaseKeyType) {
+ this.rentalAndLeaseKeyType = rentalAndLeaseKeyType;
+ return this;
+ }
+
+ /**
+ * Get the rental duration. Must be greater than or equal to 0.
+ *
+ * @return the rentalDuration value
+ */
+ public long rentalDuration() {
+ return this.rentalDuration;
+ }
+
+ /**
+ * Set the rental duration. Must be greater than or equal to 0.
+ *
+ * @param rentalDuration the rentalDuration value to set
+ * @return the ContentKeyPolicyFairPlayConfiguration object itself.
+ */
+ public ContentKeyPolicyFairPlayConfiguration withRentalDuration(long rentalDuration) {
+ this.rentalDuration = rentalDuration;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyFairPlayRentalAndLeaseKeyType.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyFairPlayRentalAndLeaseKeyType.java
new file mode 100644
index 000000000000..bac34831cbbe
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyFairPlayRentalAndLeaseKeyType.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ContentKeyPolicyFairPlayRentalAndLeaseKeyType.
+ */
+public final class ContentKeyPolicyFairPlayRentalAndLeaseKeyType extends ExpandableStringEnum {
+ /** Static value Unknown for ContentKeyPolicyFairPlayRentalAndLeaseKeyType. */
+ public static final ContentKeyPolicyFairPlayRentalAndLeaseKeyType UNKNOWN = fromString("Unknown");
+
+ /** Static value Undefined for ContentKeyPolicyFairPlayRentalAndLeaseKeyType. */
+ public static final ContentKeyPolicyFairPlayRentalAndLeaseKeyType UNDEFINED = fromString("Undefined");
+
+ /** Static value PersistentUnlimited for ContentKeyPolicyFairPlayRentalAndLeaseKeyType. */
+ public static final ContentKeyPolicyFairPlayRentalAndLeaseKeyType PERSISTENT_UNLIMITED = fromString("PersistentUnlimited");
+
+ /** Static value PersistentLimited for ContentKeyPolicyFairPlayRentalAndLeaseKeyType. */
+ public static final ContentKeyPolicyFairPlayRentalAndLeaseKeyType PERSISTENT_LIMITED = fromString("PersistentLimited");
+
+ /**
+ * Creates or finds a ContentKeyPolicyFairPlayRentalAndLeaseKeyType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ContentKeyPolicyFairPlayRentalAndLeaseKeyType
+ */
+ @JsonCreator
+ public static ContentKeyPolicyFairPlayRentalAndLeaseKeyType fromString(String name) {
+ return fromString(name, ContentKeyPolicyFairPlayRentalAndLeaseKeyType.class);
+ }
+
+ /**
+ * @return known ContentKeyPolicyFairPlayRentalAndLeaseKeyType values
+ */
+ public static Collection values() {
+ return values(ContentKeyPolicyFairPlayRentalAndLeaseKeyType.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyOpenRestriction.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyOpenRestriction.java
new file mode 100644
index 000000000000..8251a95125b8
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyOpenRestriction.java
@@ -0,0 +1,21 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Represents an open restriction. License or key will be delivered on every
+ * request.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyOpenRestriction")
+public class ContentKeyPolicyOpenRestriction extends ContentKeyPolicyRestriction {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyOption.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyOption.java
new file mode 100644
index 000000000000..05de6eb59a31
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyOption.java
@@ -0,0 +1,112 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.UUID;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Represents a policy option.
+ */
+public class ContentKeyPolicyOption {
+ /**
+ * The legacy Policy Option ID.
+ */
+ @JsonProperty(value = "policyOptionId", access = JsonProperty.Access.WRITE_ONLY)
+ private UUID policyOptionId;
+
+ /**
+ * The Policy Option description.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The key delivery configuration.
+ */
+ @JsonProperty(value = "configuration", required = true)
+ private ContentKeyPolicyConfiguration configuration;
+
+ /**
+ * The requirements that must be met to deliver keys with this
+ * configuration.
+ */
+ @JsonProperty(value = "restriction", required = true)
+ private ContentKeyPolicyRestriction restriction;
+
+ /**
+ * Get the legacy Policy Option ID.
+ *
+ * @return the policyOptionId value
+ */
+ public UUID policyOptionId() {
+ return this.policyOptionId;
+ }
+
+ /**
+ * Get the Policy Option description.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the Policy Option description.
+ *
+ * @param name the name value to set
+ * @return the ContentKeyPolicyOption object itself.
+ */
+ public ContentKeyPolicyOption withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the key delivery configuration.
+ *
+ * @return the configuration value
+ */
+ public ContentKeyPolicyConfiguration configuration() {
+ return this.configuration;
+ }
+
+ /**
+ * Set the key delivery configuration.
+ *
+ * @param configuration the configuration value to set
+ * @return the ContentKeyPolicyOption object itself.
+ */
+ public ContentKeyPolicyOption withConfiguration(ContentKeyPolicyConfiguration configuration) {
+ this.configuration = configuration;
+ return this;
+ }
+
+ /**
+ * Get the requirements that must be met to deliver keys with this configuration.
+ *
+ * @return the restriction value
+ */
+ public ContentKeyPolicyRestriction restriction() {
+ return this.restriction;
+ }
+
+ /**
+ * Set the requirements that must be met to deliver keys with this configuration.
+ *
+ * @param restriction the restriction value to set
+ * @return the ContentKeyPolicyOption object itself.
+ */
+ public ContentKeyPolicyOption withRestriction(ContentKeyPolicyRestriction restriction) {
+ this.restriction = restriction;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyConfiguration.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyConfiguration.java
new file mode 100644
index 000000000000..f4ed7fb8e558
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyConfiguration.java
@@ -0,0 +1,74 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies a configuration for PlayReady licenses.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyPlayReadyConfiguration")
+public class ContentKeyPolicyPlayReadyConfiguration extends ContentKeyPolicyConfiguration {
+ /**
+ * The PlayReady licenses.
+ */
+ @JsonProperty(value = "licenses", required = true)
+ private List licenses;
+
+ /**
+ * The custom response data.
+ */
+ @JsonProperty(value = "responseCustomData")
+ private String responseCustomData;
+
+ /**
+ * Get the PlayReady licenses.
+ *
+ * @return the licenses value
+ */
+ public List licenses() {
+ return this.licenses;
+ }
+
+ /**
+ * Set the PlayReady licenses.
+ *
+ * @param licenses the licenses value to set
+ * @return the ContentKeyPolicyPlayReadyConfiguration object itself.
+ */
+ public ContentKeyPolicyPlayReadyConfiguration withLicenses(List licenses) {
+ this.licenses = licenses;
+ return this;
+ }
+
+ /**
+ * Get the custom response data.
+ *
+ * @return the responseCustomData value
+ */
+ public String responseCustomData() {
+ return this.responseCustomData;
+ }
+
+ /**
+ * Set the custom response data.
+ *
+ * @param responseCustomData the responseCustomData value to set
+ * @return the ContentKeyPolicyPlayReadyConfiguration object itself.
+ */
+ public ContentKeyPolicyPlayReadyConfiguration withResponseCustomData(String responseCustomData) {
+ this.responseCustomData = responseCustomData;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader.java
new file mode 100644
index 000000000000..09b2334b2eb8
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies that the content key ID is in the PlayReady header.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader")
+public class ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader extends ContentKeyPolicyPlayReadyContentKeyLocation {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier.java
new file mode 100644
index 000000000000..692a8181bfb8
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.UUID;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies that the content key ID is specified in the PlayReady
+ * configuration.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier")
+public class ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier extends ContentKeyPolicyPlayReadyContentKeyLocation {
+ /**
+ * The content key ID.
+ */
+ @JsonProperty(value = "keyId", required = true)
+ private UUID keyId;
+
+ /**
+ * Get the content key ID.
+ *
+ * @return the keyId value
+ */
+ public UUID keyId() {
+ return this.keyId;
+ }
+
+ /**
+ * Set the content key ID.
+ *
+ * @param keyId the keyId value to set
+ * @return the ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier object itself.
+ */
+ public ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier withKeyId(UUID keyId) {
+ this.keyId = keyId;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentKeyLocation.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentKeyLocation.java
new file mode 100644
index 000000000000..bd8476b10be6
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentKeyLocation.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base class for content key ID location. A derived class must be used to
+ * represent the location.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("ContentKeyPolicyPlayReadyContentKeyLocation")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader", value = ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier", value = ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier.class)
+})
+public class ContentKeyPolicyPlayReadyContentKeyLocation {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentType.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentType.java
new file mode 100644
index 000000000000..e80b6f7e0efb
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyContentType.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ContentKeyPolicyPlayReadyContentType.
+ */
+public final class ContentKeyPolicyPlayReadyContentType extends ExpandableStringEnum {
+ /** Static value Unknown for ContentKeyPolicyPlayReadyContentType. */
+ public static final ContentKeyPolicyPlayReadyContentType UNKNOWN = fromString("Unknown");
+
+ /** Static value Unspecified for ContentKeyPolicyPlayReadyContentType. */
+ public static final ContentKeyPolicyPlayReadyContentType UNSPECIFIED = fromString("Unspecified");
+
+ /** Static value UltraVioletDownload for ContentKeyPolicyPlayReadyContentType. */
+ public static final ContentKeyPolicyPlayReadyContentType ULTRA_VIOLET_DOWNLOAD = fromString("UltraVioletDownload");
+
+ /** Static value UltraVioletStreaming for ContentKeyPolicyPlayReadyContentType. */
+ public static final ContentKeyPolicyPlayReadyContentType ULTRA_VIOLET_STREAMING = fromString("UltraVioletStreaming");
+
+ /**
+ * Creates or finds a ContentKeyPolicyPlayReadyContentType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ContentKeyPolicyPlayReadyContentType
+ */
+ @JsonCreator
+ public static ContentKeyPolicyPlayReadyContentType fromString(String name) {
+ return fromString(name, ContentKeyPolicyPlayReadyContentType.class);
+ }
+
+ /**
+ * @return known ContentKeyPolicyPlayReadyContentType values
+ */
+ public static Collection values() {
+ return values(ContentKeyPolicyPlayReadyContentType.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction.java
new file mode 100644
index 000000000000..c0e8d79aabcc
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Configures the Explicit Analog Television Output Restriction control bits.
+ * For further details see the PlayReady Compliance Rules.
+ */
+public class ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction {
+ /**
+ * Indicates whether this restriction is enforced on a Best Effort basis.
+ */
+ @JsonProperty(value = "bestEffort", required = true)
+ private boolean bestEffort;
+
+ /**
+ * Configures the restriction control bits. Must be between 0 and 3
+ * inclusive.
+ */
+ @JsonProperty(value = "configurationData", required = true)
+ private int configurationData;
+
+ /**
+ * Get indicates whether this restriction is enforced on a Best Effort basis.
+ *
+ * @return the bestEffort value
+ */
+ public boolean bestEffort() {
+ return this.bestEffort;
+ }
+
+ /**
+ * Set indicates whether this restriction is enforced on a Best Effort basis.
+ *
+ * @param bestEffort the bestEffort value to set
+ * @return the ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction object itself.
+ */
+ public ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction withBestEffort(boolean bestEffort) {
+ this.bestEffort = bestEffort;
+ return this;
+ }
+
+ /**
+ * Get configures the restriction control bits. Must be between 0 and 3 inclusive.
+ *
+ * @return the configurationData value
+ */
+ public int configurationData() {
+ return this.configurationData;
+ }
+
+ /**
+ * Set configures the restriction control bits. Must be between 0 and 3 inclusive.
+ *
+ * @param configurationData the configurationData value to set
+ * @return the ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction object itself.
+ */
+ public ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction withConfigurationData(int configurationData) {
+ this.configurationData = configurationData;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyLicense.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyLicense.java
new file mode 100644
index 000000000000..e31c6b2a9505
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyLicense.java
@@ -0,0 +1,281 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import org.joda.time.DateTime;
+import org.joda.time.Period;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The PlayReady license.
+ */
+public class ContentKeyPolicyPlayReadyLicense {
+ /**
+ * A flag indicating whether test devices can use the license.
+ */
+ @JsonProperty(value = "allowTestDevices", required = true)
+ private boolean allowTestDevices;
+
+ /**
+ * The begin date of license.
+ */
+ @JsonProperty(value = "beginDate")
+ private DateTime beginDate;
+
+ /**
+ * The expiration date of license.
+ */
+ @JsonProperty(value = "expirationDate")
+ private DateTime expirationDate;
+
+ /**
+ * The relative begin date of license.
+ */
+ @JsonProperty(value = "relativeBeginDate")
+ private Period relativeBeginDate;
+
+ /**
+ * The relative expiration date of license.
+ */
+ @JsonProperty(value = "relativeExpirationDate")
+ private Period relativeExpirationDate;
+
+ /**
+ * The grace period of license.
+ */
+ @JsonProperty(value = "gracePeriod")
+ private Period gracePeriod;
+
+ /**
+ * The license PlayRight.
+ */
+ @JsonProperty(value = "playRight")
+ private ContentKeyPolicyPlayReadyPlayRight playRight;
+
+ /**
+ * The license type. Possible values include: 'Unknown', 'NonPersistent',
+ * 'Persistent'.
+ */
+ @JsonProperty(value = "licenseType", required = true)
+ private ContentKeyPolicyPlayReadyLicenseType licenseType;
+
+ /**
+ * The content key location.
+ */
+ @JsonProperty(value = "contentKeyLocation", required = true)
+ private ContentKeyPolicyPlayReadyContentKeyLocation contentKeyLocation;
+
+ /**
+ * The PlayReady content type. Possible values include: 'Unknown',
+ * 'Unspecified', 'UltraVioletDownload', 'UltraVioletStreaming'.
+ */
+ @JsonProperty(value = "contentType", required = true)
+ private ContentKeyPolicyPlayReadyContentType contentType;
+
+ /**
+ * Get a flag indicating whether test devices can use the license.
+ *
+ * @return the allowTestDevices value
+ */
+ public boolean allowTestDevices() {
+ return this.allowTestDevices;
+ }
+
+ /**
+ * Set a flag indicating whether test devices can use the license.
+ *
+ * @param allowTestDevices the allowTestDevices value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withAllowTestDevices(boolean allowTestDevices) {
+ this.allowTestDevices = allowTestDevices;
+ return this;
+ }
+
+ /**
+ * Get the begin date of license.
+ *
+ * @return the beginDate value
+ */
+ public DateTime beginDate() {
+ return this.beginDate;
+ }
+
+ /**
+ * Set the begin date of license.
+ *
+ * @param beginDate the beginDate value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withBeginDate(DateTime beginDate) {
+ this.beginDate = beginDate;
+ return this;
+ }
+
+ /**
+ * Get the expiration date of license.
+ *
+ * @return the expirationDate value
+ */
+ public DateTime expirationDate() {
+ return this.expirationDate;
+ }
+
+ /**
+ * Set the expiration date of license.
+ *
+ * @param expirationDate the expirationDate value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withExpirationDate(DateTime expirationDate) {
+ this.expirationDate = expirationDate;
+ return this;
+ }
+
+ /**
+ * Get the relative begin date of license.
+ *
+ * @return the relativeBeginDate value
+ */
+ public Period relativeBeginDate() {
+ return this.relativeBeginDate;
+ }
+
+ /**
+ * Set the relative begin date of license.
+ *
+ * @param relativeBeginDate the relativeBeginDate value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withRelativeBeginDate(Period relativeBeginDate) {
+ this.relativeBeginDate = relativeBeginDate;
+ return this;
+ }
+
+ /**
+ * Get the relative expiration date of license.
+ *
+ * @return the relativeExpirationDate value
+ */
+ public Period relativeExpirationDate() {
+ return this.relativeExpirationDate;
+ }
+
+ /**
+ * Set the relative expiration date of license.
+ *
+ * @param relativeExpirationDate the relativeExpirationDate value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withRelativeExpirationDate(Period relativeExpirationDate) {
+ this.relativeExpirationDate = relativeExpirationDate;
+ return this;
+ }
+
+ /**
+ * Get the grace period of license.
+ *
+ * @return the gracePeriod value
+ */
+ public Period gracePeriod() {
+ return this.gracePeriod;
+ }
+
+ /**
+ * Set the grace period of license.
+ *
+ * @param gracePeriod the gracePeriod value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withGracePeriod(Period gracePeriod) {
+ this.gracePeriod = gracePeriod;
+ return this;
+ }
+
+ /**
+ * Get the license PlayRight.
+ *
+ * @return the playRight value
+ */
+ public ContentKeyPolicyPlayReadyPlayRight playRight() {
+ return this.playRight;
+ }
+
+ /**
+ * Set the license PlayRight.
+ *
+ * @param playRight the playRight value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withPlayRight(ContentKeyPolicyPlayReadyPlayRight playRight) {
+ this.playRight = playRight;
+ return this;
+ }
+
+ /**
+ * Get the license type. Possible values include: 'Unknown', 'NonPersistent', 'Persistent'.
+ *
+ * @return the licenseType value
+ */
+ public ContentKeyPolicyPlayReadyLicenseType licenseType() {
+ return this.licenseType;
+ }
+
+ /**
+ * Set the license type. Possible values include: 'Unknown', 'NonPersistent', 'Persistent'.
+ *
+ * @param licenseType the licenseType value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withLicenseType(ContentKeyPolicyPlayReadyLicenseType licenseType) {
+ this.licenseType = licenseType;
+ return this;
+ }
+
+ /**
+ * Get the content key location.
+ *
+ * @return the contentKeyLocation value
+ */
+ public ContentKeyPolicyPlayReadyContentKeyLocation contentKeyLocation() {
+ return this.contentKeyLocation;
+ }
+
+ /**
+ * Set the content key location.
+ *
+ * @param contentKeyLocation the contentKeyLocation value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withContentKeyLocation(ContentKeyPolicyPlayReadyContentKeyLocation contentKeyLocation) {
+ this.contentKeyLocation = contentKeyLocation;
+ return this;
+ }
+
+ /**
+ * Get the PlayReady content type. Possible values include: 'Unknown', 'Unspecified', 'UltraVioletDownload', 'UltraVioletStreaming'.
+ *
+ * @return the contentType value
+ */
+ public ContentKeyPolicyPlayReadyContentType contentType() {
+ return this.contentType;
+ }
+
+ /**
+ * Set the PlayReady content type. Possible values include: 'Unknown', 'Unspecified', 'UltraVioletDownload', 'UltraVioletStreaming'.
+ *
+ * @param contentType the contentType value to set
+ * @return the ContentKeyPolicyPlayReadyLicense object itself.
+ */
+ public ContentKeyPolicyPlayReadyLicense withContentType(ContentKeyPolicyPlayReadyContentType contentType) {
+ this.contentType = contentType;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyLicenseType.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyLicenseType.java
new file mode 100644
index 000000000000..15e16e566445
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyLicenseType.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ContentKeyPolicyPlayReadyLicenseType.
+ */
+public final class ContentKeyPolicyPlayReadyLicenseType extends ExpandableStringEnum {
+ /** Static value Unknown for ContentKeyPolicyPlayReadyLicenseType. */
+ public static final ContentKeyPolicyPlayReadyLicenseType UNKNOWN = fromString("Unknown");
+
+ /** Static value NonPersistent for ContentKeyPolicyPlayReadyLicenseType. */
+ public static final ContentKeyPolicyPlayReadyLicenseType NON_PERSISTENT = fromString("NonPersistent");
+
+ /** Static value Persistent for ContentKeyPolicyPlayReadyLicenseType. */
+ public static final ContentKeyPolicyPlayReadyLicenseType PERSISTENT = fromString("Persistent");
+
+ /**
+ * Creates or finds a ContentKeyPolicyPlayReadyLicenseType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ContentKeyPolicyPlayReadyLicenseType
+ */
+ @JsonCreator
+ public static ContentKeyPolicyPlayReadyLicenseType fromString(String name) {
+ return fromString(name, ContentKeyPolicyPlayReadyLicenseType.class);
+ }
+
+ /**
+ * @return known ContentKeyPolicyPlayReadyLicenseType values
+ */
+ public static Collection values() {
+ return values(ContentKeyPolicyPlayReadyLicenseType.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyPlayRight.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyPlayRight.java
new file mode 100644
index 000000000000..52d1d0c0ca70
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyPlayRight.java
@@ -0,0 +1,365 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import org.joda.time.Period;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Configures the Play Right in the PlayReady license.
+ */
+public class ContentKeyPolicyPlayReadyPlayRight {
+ /**
+ * The amount of time that the license is valid after the license is first
+ * used to play content.
+ */
+ @JsonProperty(value = "firstPlayExpiration")
+ private Period firstPlayExpiration;
+
+ /**
+ * Configures the Serial Copy Management System (SCMS) in the license. Must
+ * be between 0 and 3 inclusive.
+ */
+ @JsonProperty(value = "scmsRestriction")
+ private Integer scmsRestriction;
+
+ /**
+ * Configures Automatic Gain Control (AGC) and Color Stripe in the license.
+ * Must be between 0 and 3 inclusive.
+ */
+ @JsonProperty(value = "agcAndColorStripeRestriction")
+ private Integer agcAndColorStripeRestriction;
+
+ /**
+ * Configures the Explicit Analog Television Output Restriction in the
+ * license. Configuration data must be between 0 and 3 inclusive.
+ */
+ @JsonProperty(value = "explicitAnalogTelevisionOutputRestriction")
+ private ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction explicitAnalogTelevisionOutputRestriction;
+
+ /**
+ * Enables the Image Constraint For Analog Component Video Restriction in
+ * the license.
+ */
+ @JsonProperty(value = "digitalVideoOnlyContentRestriction", required = true)
+ private boolean digitalVideoOnlyContentRestriction;
+
+ /**
+ * Enables the Image Constraint For Analog Component Video Restriction in
+ * the license.
+ */
+ @JsonProperty(value = "imageConstraintForAnalogComponentVideoRestriction", required = true)
+ private boolean imageConstraintForAnalogComponentVideoRestriction;
+
+ /**
+ * Enables the Image Constraint For Analog Component Video Restriction in
+ * the license.
+ */
+ @JsonProperty(value = "imageConstraintForAnalogComputerMonitorRestriction", required = true)
+ private boolean imageConstraintForAnalogComputerMonitorRestriction;
+
+ /**
+ * Configures Unknown output handling settings of the license. Possible
+ * values include: 'Unknown', 'NotAllowed', 'Allowed',
+ * 'AllowedWithVideoConstriction'.
+ */
+ @JsonProperty(value = "allowPassingVideoContentToUnknownOutput", required = true)
+ private ContentKeyPolicyPlayReadyUnknownOutputPassingOption allowPassingVideoContentToUnknownOutput;
+
+ /**
+ * Specifies the output protection level for uncompressed digital video.
+ */
+ @JsonProperty(value = "uncompressedDigitalVideoOpl")
+ private Integer uncompressedDigitalVideoOpl;
+
+ /**
+ * Specifies the output protection level for compressed digital video.
+ */
+ @JsonProperty(value = "compressedDigitalVideoOpl")
+ private Integer compressedDigitalVideoOpl;
+
+ /**
+ * Specifies the output protection level for compressed digital audio.
+ */
+ @JsonProperty(value = "analogVideoOpl")
+ private Integer analogVideoOpl;
+
+ /**
+ * Specifies the output protection level for compressed digital audio.
+ */
+ @JsonProperty(value = "compressedDigitalAudioOpl")
+ private Integer compressedDigitalAudioOpl;
+
+ /**
+ * Specifies the output protection level for uncompressed digital audio.
+ */
+ @JsonProperty(value = "uncompressedDigitalAudioOpl")
+ private Integer uncompressedDigitalAudioOpl;
+
+ /**
+ * Get the amount of time that the license is valid after the license is first used to play content.
+ *
+ * @return the firstPlayExpiration value
+ */
+ public Period firstPlayExpiration() {
+ return this.firstPlayExpiration;
+ }
+
+ /**
+ * Set the amount of time that the license is valid after the license is first used to play content.
+ *
+ * @param firstPlayExpiration the firstPlayExpiration value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withFirstPlayExpiration(Period firstPlayExpiration) {
+ this.firstPlayExpiration = firstPlayExpiration;
+ return this;
+ }
+
+ /**
+ * Get configures the Serial Copy Management System (SCMS) in the license. Must be between 0 and 3 inclusive.
+ *
+ * @return the scmsRestriction value
+ */
+ public Integer scmsRestriction() {
+ return this.scmsRestriction;
+ }
+
+ /**
+ * Set configures the Serial Copy Management System (SCMS) in the license. Must be between 0 and 3 inclusive.
+ *
+ * @param scmsRestriction the scmsRestriction value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withScmsRestriction(Integer scmsRestriction) {
+ this.scmsRestriction = scmsRestriction;
+ return this;
+ }
+
+ /**
+ * Get configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive.
+ *
+ * @return the agcAndColorStripeRestriction value
+ */
+ public Integer agcAndColorStripeRestriction() {
+ return this.agcAndColorStripeRestriction;
+ }
+
+ /**
+ * Set configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive.
+ *
+ * @param agcAndColorStripeRestriction the agcAndColorStripeRestriction value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withAgcAndColorStripeRestriction(Integer agcAndColorStripeRestriction) {
+ this.agcAndColorStripeRestriction = agcAndColorStripeRestriction;
+ return this;
+ }
+
+ /**
+ * Get configures the Explicit Analog Television Output Restriction in the license. Configuration data must be between 0 and 3 inclusive.
+ *
+ * @return the explicitAnalogTelevisionOutputRestriction value
+ */
+ public ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction explicitAnalogTelevisionOutputRestriction() {
+ return this.explicitAnalogTelevisionOutputRestriction;
+ }
+
+ /**
+ * Set configures the Explicit Analog Television Output Restriction in the license. Configuration data must be between 0 and 3 inclusive.
+ *
+ * @param explicitAnalogTelevisionOutputRestriction the explicitAnalogTelevisionOutputRestriction value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withExplicitAnalogTelevisionOutputRestriction(ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction explicitAnalogTelevisionOutputRestriction) {
+ this.explicitAnalogTelevisionOutputRestriction = explicitAnalogTelevisionOutputRestriction;
+ return this;
+ }
+
+ /**
+ * Get enables the Image Constraint For Analog Component Video Restriction in the license.
+ *
+ * @return the digitalVideoOnlyContentRestriction value
+ */
+ public boolean digitalVideoOnlyContentRestriction() {
+ return this.digitalVideoOnlyContentRestriction;
+ }
+
+ /**
+ * Set enables the Image Constraint For Analog Component Video Restriction in the license.
+ *
+ * @param digitalVideoOnlyContentRestriction the digitalVideoOnlyContentRestriction value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withDigitalVideoOnlyContentRestriction(boolean digitalVideoOnlyContentRestriction) {
+ this.digitalVideoOnlyContentRestriction = digitalVideoOnlyContentRestriction;
+ return this;
+ }
+
+ /**
+ * Get enables the Image Constraint For Analog Component Video Restriction in the license.
+ *
+ * @return the imageConstraintForAnalogComponentVideoRestriction value
+ */
+ public boolean imageConstraintForAnalogComponentVideoRestriction() {
+ return this.imageConstraintForAnalogComponentVideoRestriction;
+ }
+
+ /**
+ * Set enables the Image Constraint For Analog Component Video Restriction in the license.
+ *
+ * @param imageConstraintForAnalogComponentVideoRestriction the imageConstraintForAnalogComponentVideoRestriction value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withImageConstraintForAnalogComponentVideoRestriction(boolean imageConstraintForAnalogComponentVideoRestriction) {
+ this.imageConstraintForAnalogComponentVideoRestriction = imageConstraintForAnalogComponentVideoRestriction;
+ return this;
+ }
+
+ /**
+ * Get enables the Image Constraint For Analog Component Video Restriction in the license.
+ *
+ * @return the imageConstraintForAnalogComputerMonitorRestriction value
+ */
+ public boolean imageConstraintForAnalogComputerMonitorRestriction() {
+ return this.imageConstraintForAnalogComputerMonitorRestriction;
+ }
+
+ /**
+ * Set enables the Image Constraint For Analog Component Video Restriction in the license.
+ *
+ * @param imageConstraintForAnalogComputerMonitorRestriction the imageConstraintForAnalogComputerMonitorRestriction value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withImageConstraintForAnalogComputerMonitorRestriction(boolean imageConstraintForAnalogComputerMonitorRestriction) {
+ this.imageConstraintForAnalogComputerMonitorRestriction = imageConstraintForAnalogComputerMonitorRestriction;
+ return this;
+ }
+
+ /**
+ * Get configures Unknown output handling settings of the license. Possible values include: 'Unknown', 'NotAllowed', 'Allowed', 'AllowedWithVideoConstriction'.
+ *
+ * @return the allowPassingVideoContentToUnknownOutput value
+ */
+ public ContentKeyPolicyPlayReadyUnknownOutputPassingOption allowPassingVideoContentToUnknownOutput() {
+ return this.allowPassingVideoContentToUnknownOutput;
+ }
+
+ /**
+ * Set configures Unknown output handling settings of the license. Possible values include: 'Unknown', 'NotAllowed', 'Allowed', 'AllowedWithVideoConstriction'.
+ *
+ * @param allowPassingVideoContentToUnknownOutput the allowPassingVideoContentToUnknownOutput value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withAllowPassingVideoContentToUnknownOutput(ContentKeyPolicyPlayReadyUnknownOutputPassingOption allowPassingVideoContentToUnknownOutput) {
+ this.allowPassingVideoContentToUnknownOutput = allowPassingVideoContentToUnknownOutput;
+ return this;
+ }
+
+ /**
+ * Get specifies the output protection level for uncompressed digital video.
+ *
+ * @return the uncompressedDigitalVideoOpl value
+ */
+ public Integer uncompressedDigitalVideoOpl() {
+ return this.uncompressedDigitalVideoOpl;
+ }
+
+ /**
+ * Set specifies the output protection level for uncompressed digital video.
+ *
+ * @param uncompressedDigitalVideoOpl the uncompressedDigitalVideoOpl value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withUncompressedDigitalVideoOpl(Integer uncompressedDigitalVideoOpl) {
+ this.uncompressedDigitalVideoOpl = uncompressedDigitalVideoOpl;
+ return this;
+ }
+
+ /**
+ * Get specifies the output protection level for compressed digital video.
+ *
+ * @return the compressedDigitalVideoOpl value
+ */
+ public Integer compressedDigitalVideoOpl() {
+ return this.compressedDigitalVideoOpl;
+ }
+
+ /**
+ * Set specifies the output protection level for compressed digital video.
+ *
+ * @param compressedDigitalVideoOpl the compressedDigitalVideoOpl value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withCompressedDigitalVideoOpl(Integer compressedDigitalVideoOpl) {
+ this.compressedDigitalVideoOpl = compressedDigitalVideoOpl;
+ return this;
+ }
+
+ /**
+ * Get specifies the output protection level for compressed digital audio.
+ *
+ * @return the analogVideoOpl value
+ */
+ public Integer analogVideoOpl() {
+ return this.analogVideoOpl;
+ }
+
+ /**
+ * Set specifies the output protection level for compressed digital audio.
+ *
+ * @param analogVideoOpl the analogVideoOpl value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withAnalogVideoOpl(Integer analogVideoOpl) {
+ this.analogVideoOpl = analogVideoOpl;
+ return this;
+ }
+
+ /**
+ * Get specifies the output protection level for compressed digital audio.
+ *
+ * @return the compressedDigitalAudioOpl value
+ */
+ public Integer compressedDigitalAudioOpl() {
+ return this.compressedDigitalAudioOpl;
+ }
+
+ /**
+ * Set specifies the output protection level for compressed digital audio.
+ *
+ * @param compressedDigitalAudioOpl the compressedDigitalAudioOpl value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withCompressedDigitalAudioOpl(Integer compressedDigitalAudioOpl) {
+ this.compressedDigitalAudioOpl = compressedDigitalAudioOpl;
+ return this;
+ }
+
+ /**
+ * Get specifies the output protection level for uncompressed digital audio.
+ *
+ * @return the uncompressedDigitalAudioOpl value
+ */
+ public Integer uncompressedDigitalAudioOpl() {
+ return this.uncompressedDigitalAudioOpl;
+ }
+
+ /**
+ * Set specifies the output protection level for uncompressed digital audio.
+ *
+ * @param uncompressedDigitalAudioOpl the uncompressedDigitalAudioOpl value to set
+ * @return the ContentKeyPolicyPlayReadyPlayRight object itself.
+ */
+ public ContentKeyPolicyPlayReadyPlayRight withUncompressedDigitalAudioOpl(Integer uncompressedDigitalAudioOpl) {
+ this.uncompressedDigitalAudioOpl = uncompressedDigitalAudioOpl;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyUnknownOutputPassingOption.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyUnknownOutputPassingOption.java
new file mode 100644
index 000000000000..1371d2ef3fba
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyPlayReadyUnknownOutputPassingOption.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ContentKeyPolicyPlayReadyUnknownOutputPassingOption.
+ */
+public final class ContentKeyPolicyPlayReadyUnknownOutputPassingOption extends ExpandableStringEnum {
+ /** Static value Unknown for ContentKeyPolicyPlayReadyUnknownOutputPassingOption. */
+ public static final ContentKeyPolicyPlayReadyUnknownOutputPassingOption UNKNOWN = fromString("Unknown");
+
+ /** Static value NotAllowed for ContentKeyPolicyPlayReadyUnknownOutputPassingOption. */
+ public static final ContentKeyPolicyPlayReadyUnknownOutputPassingOption NOT_ALLOWED = fromString("NotAllowed");
+
+ /** Static value Allowed for ContentKeyPolicyPlayReadyUnknownOutputPassingOption. */
+ public static final ContentKeyPolicyPlayReadyUnknownOutputPassingOption ALLOWED = fromString("Allowed");
+
+ /** Static value AllowedWithVideoConstriction for ContentKeyPolicyPlayReadyUnknownOutputPassingOption. */
+ public static final ContentKeyPolicyPlayReadyUnknownOutputPassingOption ALLOWED_WITH_VIDEO_CONSTRICTION = fromString("AllowedWithVideoConstriction");
+
+ /**
+ * Creates or finds a ContentKeyPolicyPlayReadyUnknownOutputPassingOption from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ContentKeyPolicyPlayReadyUnknownOutputPassingOption
+ */
+ @JsonCreator
+ public static ContentKeyPolicyPlayReadyUnknownOutputPassingOption fromString(String name) {
+ return fromString(name, ContentKeyPolicyPlayReadyUnknownOutputPassingOption.class);
+ }
+
+ /**
+ * @return known ContentKeyPolicyPlayReadyUnknownOutputPassingOption values
+ */
+ public static Collection values() {
+ return values(ContentKeyPolicyPlayReadyUnknownOutputPassingOption.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyProperties.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyProperties.java
new file mode 100644
index 000000000000..3e1ab1bc792a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyProperties.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.ContentKeyPolicyPropertiesInner;
+import org.joda.time.DateTime;
+import java.util.List;
+import java.util.UUID;
+
+/**
+ * Type representing ContentKeyPolicyProperties.
+ */
+public interface ContentKeyPolicyProperties extends HasInner, HasManager {
+ /**
+ * @return the created value.
+ */
+ DateTime created();
+
+ /**
+ * @return the description value.
+ */
+ String description();
+
+ /**
+ * @return the lastModified value.
+ */
+ DateTime lastModified();
+
+ /**
+ * @return the options value.
+ */
+ List options();
+
+ /**
+ * @return the policyId value.
+ */
+ UUID policyId();
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestriction.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestriction.java
new file mode 100644
index 000000000000..67c505f92882
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestriction.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base class for Content Key Policy restrictions. A derived class must be used
+ * to create a restriction.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("ContentKeyPolicyRestriction")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyOpenRestriction", value = ContentKeyPolicyOpenRestriction.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyUnknownRestriction", value = ContentKeyPolicyUnknownRestriction.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyTokenRestriction", value = ContentKeyPolicyTokenRestriction.class)
+})
+public class ContentKeyPolicyRestriction {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestrictionTokenKey.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestrictionTokenKey.java
new file mode 100644
index 000000000000..36a855fa534d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestrictionTokenKey.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base class for Content Key Policy key for token validation. A derived class
+ * must be used to create a token key.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("ContentKeyPolicyRestrictionTokenKey")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicySymmetricTokenKey", value = ContentKeyPolicySymmetricTokenKey.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyRsaTokenKey", value = ContentKeyPolicyRsaTokenKey.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ContentKeyPolicyX509CertificateTokenKey", value = ContentKeyPolicyX509CertificateTokenKey.class)
+})
+public class ContentKeyPolicyRestrictionTokenKey {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestrictionTokenType.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestrictionTokenType.java
new file mode 100644
index 000000000000..9f93b47481ba
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRestrictionTokenType.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ContentKeyPolicyRestrictionTokenType.
+ */
+public final class ContentKeyPolicyRestrictionTokenType extends ExpandableStringEnum {
+ /** Static value Unknown for ContentKeyPolicyRestrictionTokenType. */
+ public static final ContentKeyPolicyRestrictionTokenType UNKNOWN = fromString("Unknown");
+
+ /** Static value Swt for ContentKeyPolicyRestrictionTokenType. */
+ public static final ContentKeyPolicyRestrictionTokenType SWT = fromString("Swt");
+
+ /** Static value Jwt for ContentKeyPolicyRestrictionTokenType. */
+ public static final ContentKeyPolicyRestrictionTokenType JWT = fromString("Jwt");
+
+ /**
+ * Creates or finds a ContentKeyPolicyRestrictionTokenType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ContentKeyPolicyRestrictionTokenType
+ */
+ @JsonCreator
+ public static ContentKeyPolicyRestrictionTokenType fromString(String name) {
+ return fromString(name, ContentKeyPolicyRestrictionTokenType.class);
+ }
+
+ /**
+ * @return known ContentKeyPolicyRestrictionTokenType values
+ */
+ public static Collection values() {
+ return values(ContentKeyPolicyRestrictionTokenType.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRsaTokenKey.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRsaTokenKey.java
new file mode 100644
index 000000000000..ea0951021ff2
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyRsaTokenKey.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies a RSA key for token validation.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyRsaTokenKey")
+public class ContentKeyPolicyRsaTokenKey extends ContentKeyPolicyRestrictionTokenKey {
+ /**
+ * The RSA Parameter exponent.
+ */
+ @JsonProperty(value = "exponent", required = true)
+ private byte[] exponent;
+
+ /**
+ * The RSA Parameter modulus.
+ */
+ @JsonProperty(value = "modulus", required = true)
+ private byte[] modulus;
+
+ /**
+ * Get the RSA Parameter exponent.
+ *
+ * @return the exponent value
+ */
+ public byte[] exponent() {
+ return this.exponent;
+ }
+
+ /**
+ * Set the RSA Parameter exponent.
+ *
+ * @param exponent the exponent value to set
+ * @return the ContentKeyPolicyRsaTokenKey object itself.
+ */
+ public ContentKeyPolicyRsaTokenKey withExponent(byte[] exponent) {
+ this.exponent = exponent;
+ return this;
+ }
+
+ /**
+ * Get the RSA Parameter modulus.
+ *
+ * @return the modulus value
+ */
+ public byte[] modulus() {
+ return this.modulus;
+ }
+
+ /**
+ * Set the RSA Parameter modulus.
+ *
+ * @param modulus the modulus value to set
+ * @return the ContentKeyPolicyRsaTokenKey object itself.
+ */
+ public ContentKeyPolicyRsaTokenKey withModulus(byte[] modulus) {
+ this.modulus = modulus;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicySymmetricTokenKey.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicySymmetricTokenKey.java
new file mode 100644
index 000000000000..2620c7a0822c
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicySymmetricTokenKey.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies a symmetric key for token validation.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicySymmetricTokenKey")
+public class ContentKeyPolicySymmetricTokenKey extends ContentKeyPolicyRestrictionTokenKey {
+ /**
+ * The key value of the key.
+ */
+ @JsonProperty(value = "keyValue", required = true)
+ private byte[] keyValue;
+
+ /**
+ * Get the key value of the key.
+ *
+ * @return the keyValue value
+ */
+ public byte[] keyValue() {
+ return this.keyValue;
+ }
+
+ /**
+ * Set the key value of the key.
+ *
+ * @param keyValue the keyValue value to set
+ * @return the ContentKeyPolicySymmetricTokenKey object itself.
+ */
+ public ContentKeyPolicySymmetricTokenKey withKeyValue(byte[] keyValue) {
+ this.keyValue = keyValue;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyTokenClaim.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyTokenClaim.java
new file mode 100644
index 000000000000..e3014eb58f84
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyTokenClaim.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Represents a token claim.
+ */
+public class ContentKeyPolicyTokenClaim {
+ /**
+ * Token claim type.
+ */
+ @JsonProperty(value = "claimType")
+ private String claimType;
+
+ /**
+ * Token claim value.
+ */
+ @JsonProperty(value = "claimValue")
+ private String claimValue;
+
+ /**
+ * Get token claim type.
+ *
+ * @return the claimType value
+ */
+ public String claimType() {
+ return this.claimType;
+ }
+
+ /**
+ * Set token claim type.
+ *
+ * @param claimType the claimType value to set
+ * @return the ContentKeyPolicyTokenClaim object itself.
+ */
+ public ContentKeyPolicyTokenClaim withClaimType(String claimType) {
+ this.claimType = claimType;
+ return this;
+ }
+
+ /**
+ * Get token claim value.
+ *
+ * @return the claimValue value
+ */
+ public String claimValue() {
+ return this.claimValue;
+ }
+
+ /**
+ * Set token claim value.
+ *
+ * @param claimValue the claimValue value to set
+ * @return the ContentKeyPolicyTokenClaim object itself.
+ */
+ public ContentKeyPolicyTokenClaim withClaimValue(String claimValue) {
+ this.claimValue = claimValue;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyTokenRestriction.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyTokenRestriction.java
new file mode 100644
index 000000000000..534bf01a6989
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyTokenRestriction.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Represents a token restriction. Provided token must match these requirements
+ * for successful license or key delivery.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyTokenRestriction")
+public class ContentKeyPolicyTokenRestriction extends ContentKeyPolicyRestriction {
+ /**
+ * The token issuer.
+ */
+ @JsonProperty(value = "issuer", required = true)
+ private String issuer;
+
+ /**
+ * The audience for the token.
+ */
+ @JsonProperty(value = "audience", required = true)
+ private String audience;
+
+ /**
+ * The primary verification key.
+ */
+ @JsonProperty(value = "primaryVerificationKey", required = true)
+ private ContentKeyPolicyRestrictionTokenKey primaryVerificationKey;
+
+ /**
+ * A list of alternative verification keys.
+ */
+ @JsonProperty(value = "alternateVerificationKeys")
+ private List alternateVerificationKeys;
+
+ /**
+ * A list of required token claims.
+ */
+ @JsonProperty(value = "requiredClaims")
+ private List requiredClaims;
+
+ /**
+ * The type of token. Possible values include: 'Unknown', 'Swt', 'Jwt'.
+ */
+ @JsonProperty(value = "restrictionTokenType", required = true)
+ private ContentKeyPolicyRestrictionTokenType restrictionTokenType;
+
+ /**
+ * The OpenID connect discovery document.
+ */
+ @JsonProperty(value = "openIdConnectDiscoveryDocument")
+ private String openIdConnectDiscoveryDocument;
+
+ /**
+ * Get the token issuer.
+ *
+ * @return the issuer value
+ */
+ public String issuer() {
+ return this.issuer;
+ }
+
+ /**
+ * Set the token issuer.
+ *
+ * @param issuer the issuer value to set
+ * @return the ContentKeyPolicyTokenRestriction object itself.
+ */
+ public ContentKeyPolicyTokenRestriction withIssuer(String issuer) {
+ this.issuer = issuer;
+ return this;
+ }
+
+ /**
+ * Get the audience for the token.
+ *
+ * @return the audience value
+ */
+ public String audience() {
+ return this.audience;
+ }
+
+ /**
+ * Set the audience for the token.
+ *
+ * @param audience the audience value to set
+ * @return the ContentKeyPolicyTokenRestriction object itself.
+ */
+ public ContentKeyPolicyTokenRestriction withAudience(String audience) {
+ this.audience = audience;
+ return this;
+ }
+
+ /**
+ * Get the primary verification key.
+ *
+ * @return the primaryVerificationKey value
+ */
+ public ContentKeyPolicyRestrictionTokenKey primaryVerificationKey() {
+ return this.primaryVerificationKey;
+ }
+
+ /**
+ * Set the primary verification key.
+ *
+ * @param primaryVerificationKey the primaryVerificationKey value to set
+ * @return the ContentKeyPolicyTokenRestriction object itself.
+ */
+ public ContentKeyPolicyTokenRestriction withPrimaryVerificationKey(ContentKeyPolicyRestrictionTokenKey primaryVerificationKey) {
+ this.primaryVerificationKey = primaryVerificationKey;
+ return this;
+ }
+
+ /**
+ * Get a list of alternative verification keys.
+ *
+ * @return the alternateVerificationKeys value
+ */
+ public List alternateVerificationKeys() {
+ return this.alternateVerificationKeys;
+ }
+
+ /**
+ * Set a list of alternative verification keys.
+ *
+ * @param alternateVerificationKeys the alternateVerificationKeys value to set
+ * @return the ContentKeyPolicyTokenRestriction object itself.
+ */
+ public ContentKeyPolicyTokenRestriction withAlternateVerificationKeys(List alternateVerificationKeys) {
+ this.alternateVerificationKeys = alternateVerificationKeys;
+ return this;
+ }
+
+ /**
+ * Get a list of required token claims.
+ *
+ * @return the requiredClaims value
+ */
+ public List requiredClaims() {
+ return this.requiredClaims;
+ }
+
+ /**
+ * Set a list of required token claims.
+ *
+ * @param requiredClaims the requiredClaims value to set
+ * @return the ContentKeyPolicyTokenRestriction object itself.
+ */
+ public ContentKeyPolicyTokenRestriction withRequiredClaims(List requiredClaims) {
+ this.requiredClaims = requiredClaims;
+ return this;
+ }
+
+ /**
+ * Get the type of token. Possible values include: 'Unknown', 'Swt', 'Jwt'.
+ *
+ * @return the restrictionTokenType value
+ */
+ public ContentKeyPolicyRestrictionTokenType restrictionTokenType() {
+ return this.restrictionTokenType;
+ }
+
+ /**
+ * Set the type of token. Possible values include: 'Unknown', 'Swt', 'Jwt'.
+ *
+ * @param restrictionTokenType the restrictionTokenType value to set
+ * @return the ContentKeyPolicyTokenRestriction object itself.
+ */
+ public ContentKeyPolicyTokenRestriction withRestrictionTokenType(ContentKeyPolicyRestrictionTokenType restrictionTokenType) {
+ this.restrictionTokenType = restrictionTokenType;
+ return this;
+ }
+
+ /**
+ * Get the OpenID connect discovery document.
+ *
+ * @return the openIdConnectDiscoveryDocument value
+ */
+ public String openIdConnectDiscoveryDocument() {
+ return this.openIdConnectDiscoveryDocument;
+ }
+
+ /**
+ * Set the OpenID connect discovery document.
+ *
+ * @param openIdConnectDiscoveryDocument the openIdConnectDiscoveryDocument value to set
+ * @return the ContentKeyPolicyTokenRestriction object itself.
+ */
+ public ContentKeyPolicyTokenRestriction withOpenIdConnectDiscoveryDocument(String openIdConnectDiscoveryDocument) {
+ this.openIdConnectDiscoveryDocument = openIdConnectDiscoveryDocument;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyUnknownConfiguration.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyUnknownConfiguration.java
new file mode 100644
index 000000000000..d4a32a7299f1
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyUnknownConfiguration.java
@@ -0,0 +1,21 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Represents a ContentKeyPolicyConfiguration that is unavailable in the
+ * current API version.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyUnknownConfiguration")
+public class ContentKeyPolicyUnknownConfiguration extends ContentKeyPolicyConfiguration {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyUnknownRestriction.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyUnknownRestriction.java
new file mode 100644
index 000000000000..ff54b088db8b
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyUnknownRestriction.java
@@ -0,0 +1,21 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Represents a ContentKeyPolicyRestriction that is unavailable in the current
+ * API version.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyUnknownRestriction")
+public class ContentKeyPolicyUnknownRestriction extends ContentKeyPolicyRestriction {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyWidevineConfiguration.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyWidevineConfiguration.java
new file mode 100644
index 000000000000..8e5a590c737d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyWidevineConfiguration.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies a configuration for Widevine licenses.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyWidevineConfiguration")
+public class ContentKeyPolicyWidevineConfiguration extends ContentKeyPolicyConfiguration {
+ /**
+ * The Widevine template.
+ */
+ @JsonProperty(value = "widevineTemplate", required = true)
+ private String widevineTemplate;
+
+ /**
+ * Get the Widevine template.
+ *
+ * @return the widevineTemplate value
+ */
+ public String widevineTemplate() {
+ return this.widevineTemplate;
+ }
+
+ /**
+ * Set the Widevine template.
+ *
+ * @param widevineTemplate the widevineTemplate value to set
+ * @return the ContentKeyPolicyWidevineConfiguration object itself.
+ */
+ public ContentKeyPolicyWidevineConfiguration withWidevineTemplate(String widevineTemplate) {
+ this.widevineTemplate = widevineTemplate;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyX509CertificateTokenKey.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyX509CertificateTokenKey.java
new file mode 100644
index 000000000000..2753d4d6f9a4
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ContentKeyPolicyX509CertificateTokenKey.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Specifies a certificate for token validation.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ContentKeyPolicyX509CertificateTokenKey")
+public class ContentKeyPolicyX509CertificateTokenKey extends ContentKeyPolicyRestrictionTokenKey {
+ /**
+ * The raw data field of a certificate in PKCS 12 format (X509Certificate2
+ * in .NET).
+ */
+ @JsonProperty(value = "rawBody", required = true)
+ private byte[] rawBody;
+
+ /**
+ * Get the raw data field of a certificate in PKCS 12 format (X509Certificate2 in .NET).
+ *
+ * @return the rawBody value
+ */
+ public byte[] rawBody() {
+ return this.rawBody;
+ }
+
+ /**
+ * Set the raw data field of a certificate in PKCS 12 format (X509Certificate2 in .NET).
+ *
+ * @param rawBody the rawBody value to set
+ * @return the ContentKeyPolicyX509CertificateTokenKey object itself.
+ */
+ public ContentKeyPolicyX509CertificateTokenKey withRawBody(byte[] rawBody) {
+ this.rawBody = rawBody;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CopyAudio.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CopyAudio.java
new file mode 100644
index 000000000000..5a25c0aedbb4
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CopyAudio.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * A codec flag, which tells the encoder to copy the input audio bitstream.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.CopyAudio")
+public class CopyAudio extends Codec {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CopyVideo.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CopyVideo.java
new file mode 100644
index 000000000000..8c5632f63a70
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CopyVideo.java
@@ -0,0 +1,21 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * A codec flag, which tells the encoder to copy the input video bitstream
+ * without re-encoding.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.CopyVideo")
+public class CopyVideo extends Codec {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CrossSiteAccessPolicies.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CrossSiteAccessPolicies.java
new file mode 100644
index 000000000000..3fcda5d7a8c9
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/CrossSiteAccessPolicies.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The client access policy.
+ */
+public class CrossSiteAccessPolicies {
+ /**
+ * The content of clientaccesspolicy.xml used by Silverlight.
+ */
+ @JsonProperty(value = "clientAccessPolicy")
+ private String clientAccessPolicy;
+
+ /**
+ * The content of crossdomain.xml used by Silverlight.
+ */
+ @JsonProperty(value = "crossDomainPolicy")
+ private String crossDomainPolicy;
+
+ /**
+ * Get the content of clientaccesspolicy.xml used by Silverlight.
+ *
+ * @return the clientAccessPolicy value
+ */
+ public String clientAccessPolicy() {
+ return this.clientAccessPolicy;
+ }
+
+ /**
+ * Set the content of clientaccesspolicy.xml used by Silverlight.
+ *
+ * @param clientAccessPolicy the clientAccessPolicy value to set
+ * @return the CrossSiteAccessPolicies object itself.
+ */
+ public CrossSiteAccessPolicies withClientAccessPolicy(String clientAccessPolicy) {
+ this.clientAccessPolicy = clientAccessPolicy;
+ return this;
+ }
+
+ /**
+ * Get the content of crossdomain.xml used by Silverlight.
+ *
+ * @return the crossDomainPolicy value
+ */
+ public String crossDomainPolicy() {
+ return this.crossDomainPolicy;
+ }
+
+ /**
+ * Set the content of crossdomain.xml used by Silverlight.
+ *
+ * @param crossDomainPolicy the crossDomainPolicy value to set
+ * @return the CrossSiteAccessPolicies object itself.
+ */
+ public CrossSiteAccessPolicies withCrossDomainPolicy(String crossDomainPolicy) {
+ this.crossDomainPolicy = crossDomainPolicy;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DefaultKey.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DefaultKey.java
new file mode 100644
index 000000000000..c94fad252000
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DefaultKey.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Class to specify properties of default content key for each encryption
+ * scheme.
+ */
+public class DefaultKey {
+ /**
+ * Label can be used to specify Content Key when creating a Streaming
+ * Locator.
+ */
+ @JsonProperty(value = "label")
+ private String label;
+
+ /**
+ * Policy used by Default Key.
+ */
+ @JsonProperty(value = "policyName")
+ private String policyName;
+
+ /**
+ * Get label can be used to specify Content Key when creating a Streaming Locator.
+ *
+ * @return the label value
+ */
+ public String label() {
+ return this.label;
+ }
+
+ /**
+ * Set label can be used to specify Content Key when creating a Streaming Locator.
+ *
+ * @param label the label value to set
+ * @return the DefaultKey object itself.
+ */
+ public DefaultKey withLabel(String label) {
+ this.label = label;
+ return this;
+ }
+
+ /**
+ * Get policy used by Default Key.
+ *
+ * @return the policyName value
+ */
+ public String policyName() {
+ return this.policyName;
+ }
+
+ /**
+ * Set policy used by Default Key.
+ *
+ * @param policyName the policyName value to set
+ * @return the DefaultKey object itself.
+ */
+ public DefaultKey withPolicyName(String policyName) {
+ this.policyName = policyName;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Deinterlace.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Deinterlace.java
new file mode 100644
index 000000000000..b46a40d2a2af
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Deinterlace.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes the de-interlacing settings.
+ */
+public class Deinterlace {
+ /**
+ * The field parity for de-interlacing, defaults to Auto. Possible values
+ * include: 'Auto', 'TopFieldFirst', 'BottomFieldFirst'.
+ */
+ @JsonProperty(value = "parity")
+ private DeinterlaceParity parity;
+
+ /**
+ * The deinterlacing mode. Defaults to AutoPixelAdaptive. Possible values
+ * include: 'Off', 'AutoPixelAdaptive'.
+ */
+ @JsonProperty(value = "mode")
+ private DeinterlaceMode mode;
+
+ /**
+ * Get the field parity for de-interlacing, defaults to Auto. Possible values include: 'Auto', 'TopFieldFirst', 'BottomFieldFirst'.
+ *
+ * @return the parity value
+ */
+ public DeinterlaceParity parity() {
+ return this.parity;
+ }
+
+ /**
+ * Set the field parity for de-interlacing, defaults to Auto. Possible values include: 'Auto', 'TopFieldFirst', 'BottomFieldFirst'.
+ *
+ * @param parity the parity value to set
+ * @return the Deinterlace object itself.
+ */
+ public Deinterlace withParity(DeinterlaceParity parity) {
+ this.parity = parity;
+ return this;
+ }
+
+ /**
+ * Get the deinterlacing mode. Defaults to AutoPixelAdaptive. Possible values include: 'Off', 'AutoPixelAdaptive'.
+ *
+ * @return the mode value
+ */
+ public DeinterlaceMode mode() {
+ return this.mode;
+ }
+
+ /**
+ * Set the deinterlacing mode. Defaults to AutoPixelAdaptive. Possible values include: 'Off', 'AutoPixelAdaptive'.
+ *
+ * @param mode the mode value to set
+ * @return the Deinterlace object itself.
+ */
+ public Deinterlace withMode(DeinterlaceMode mode) {
+ this.mode = mode;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DeinterlaceMode.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DeinterlaceMode.java
new file mode 100644
index 000000000000..417c6caee8ac
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DeinterlaceMode.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for DeinterlaceMode.
+ */
+public final class DeinterlaceMode extends ExpandableStringEnum {
+ /** Static value Off for DeinterlaceMode. */
+ public static final DeinterlaceMode OFF = fromString("Off");
+
+ /** Static value AutoPixelAdaptive for DeinterlaceMode. */
+ public static final DeinterlaceMode AUTO_PIXEL_ADAPTIVE = fromString("AutoPixelAdaptive");
+
+ /**
+ * Creates or finds a DeinterlaceMode from its string representation.
+ * @param name a name to look for
+ * @return the corresponding DeinterlaceMode
+ */
+ @JsonCreator
+ public static DeinterlaceMode fromString(String name) {
+ return fromString(name, DeinterlaceMode.class);
+ }
+
+ /**
+ * @return known DeinterlaceMode values
+ */
+ public static Collection values() {
+ return values(DeinterlaceMode.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DeinterlaceParity.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DeinterlaceParity.java
new file mode 100644
index 000000000000..deffd86fc0ab
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/DeinterlaceParity.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for DeinterlaceParity.
+ */
+public final class DeinterlaceParity extends ExpandableStringEnum {
+ /** Static value Auto for DeinterlaceParity. */
+ public static final DeinterlaceParity AUTO = fromString("Auto");
+
+ /** Static value TopFieldFirst for DeinterlaceParity. */
+ public static final DeinterlaceParity TOP_FIELD_FIRST = fromString("TopFieldFirst");
+
+ /** Static value BottomFieldFirst for DeinterlaceParity. */
+ public static final DeinterlaceParity BOTTOM_FIELD_FIRST = fromString("BottomFieldFirst");
+
+ /**
+ * Creates or finds a DeinterlaceParity from its string representation.
+ * @param name a name to look for
+ * @return the corresponding DeinterlaceParity
+ */
+ @JsonCreator
+ public static DeinterlaceParity fromString(String name) {
+ return fromString(name, DeinterlaceParity.class);
+ }
+
+ /**
+ * @return known DeinterlaceParity values
+ */
+ public static Collection values() {
+ return values(DeinterlaceParity.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EnabledProtocols.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EnabledProtocols.java
new file mode 100644
index 000000000000..4cfa2225203b
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EnabledProtocols.java
@@ -0,0 +1,121 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Class to specify which protocols are enabled.
+ */
+public class EnabledProtocols {
+ /**
+ * Enable Download protocol or not.
+ */
+ @JsonProperty(value = "download", required = true)
+ private boolean download;
+
+ /**
+ * Enable DASH protocol or not.
+ */
+ @JsonProperty(value = "dash", required = true)
+ private boolean dash;
+
+ /**
+ * Enable HLS protocol or not.
+ */
+ @JsonProperty(value = "hls", required = true)
+ private boolean hls;
+
+ /**
+ * Enable SmoothStreaming protocol or not.
+ */
+ @JsonProperty(value = "smoothStreaming", required = true)
+ private boolean smoothStreaming;
+
+ /**
+ * Get enable Download protocol or not.
+ *
+ * @return the download value
+ */
+ public boolean download() {
+ return this.download;
+ }
+
+ /**
+ * Set enable Download protocol or not.
+ *
+ * @param download the download value to set
+ * @return the EnabledProtocols object itself.
+ */
+ public EnabledProtocols withDownload(boolean download) {
+ this.download = download;
+ return this;
+ }
+
+ /**
+ * Get enable DASH protocol or not.
+ *
+ * @return the dash value
+ */
+ public boolean dash() {
+ return this.dash;
+ }
+
+ /**
+ * Set enable DASH protocol or not.
+ *
+ * @param dash the dash value to set
+ * @return the EnabledProtocols object itself.
+ */
+ public EnabledProtocols withDash(boolean dash) {
+ this.dash = dash;
+ return this;
+ }
+
+ /**
+ * Get enable HLS protocol or not.
+ *
+ * @return the hls value
+ */
+ public boolean hls() {
+ return this.hls;
+ }
+
+ /**
+ * Set enable HLS protocol or not.
+ *
+ * @param hls the hls value to set
+ * @return the EnabledProtocols object itself.
+ */
+ public EnabledProtocols withHls(boolean hls) {
+ this.hls = hls;
+ return this;
+ }
+
+ /**
+ * Get enable SmoothStreaming protocol or not.
+ *
+ * @return the smoothStreaming value
+ */
+ public boolean smoothStreaming() {
+ return this.smoothStreaming;
+ }
+
+ /**
+ * Set enable SmoothStreaming protocol or not.
+ *
+ * @param smoothStreaming the smoothStreaming value to set
+ * @return the EnabledProtocols object itself.
+ */
+ public EnabledProtocols withSmoothStreaming(boolean smoothStreaming) {
+ this.smoothStreaming = smoothStreaming;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EncoderNamedPreset.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EncoderNamedPreset.java
new file mode 100644
index 000000000000..1063b66cf0ec
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EncoderNamedPreset.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for EncoderNamedPreset.
+ */
+public final class EncoderNamedPreset extends ExpandableStringEnum {
+ /** Static value H264SingleBitrateSD for EncoderNamedPreset. */
+ public static final EncoderNamedPreset H264SINGLE_BITRATE_SD = fromString("H264SingleBitrateSD");
+
+ /** Static value H264SingleBitrate720p for EncoderNamedPreset. */
+ public static final EncoderNamedPreset H264SINGLE_BITRATE720P = fromString("H264SingleBitrate720p");
+
+ /** Static value H264SingleBitrate1080p for EncoderNamedPreset. */
+ public static final EncoderNamedPreset H264SINGLE_BITRATE1080P = fromString("H264SingleBitrate1080p");
+
+ /** Static value AdaptiveStreaming for EncoderNamedPreset. */
+ public static final EncoderNamedPreset ADAPTIVE_STREAMING = fromString("AdaptiveStreaming");
+
+ /** Static value AACGoodQualityAudio for EncoderNamedPreset. */
+ public static final EncoderNamedPreset AACGOOD_QUALITY_AUDIO = fromString("AACGoodQualityAudio");
+
+ /** Static value ContentAwareEncodingExperimental for EncoderNamedPreset. */
+ public static final EncoderNamedPreset CONTENT_AWARE_ENCODING_EXPERIMENTAL = fromString("ContentAwareEncodingExperimental");
+
+ /** Static value H264MultipleBitrate1080p for EncoderNamedPreset. */
+ public static final EncoderNamedPreset H264MULTIPLE_BITRATE1080P = fromString("H264MultipleBitrate1080p");
+
+ /** Static value H264MultipleBitrate720p for EncoderNamedPreset. */
+ public static final EncoderNamedPreset H264MULTIPLE_BITRATE720P = fromString("H264MultipleBitrate720p");
+
+ /** Static value H264MultipleBitrateSD for EncoderNamedPreset. */
+ public static final EncoderNamedPreset H264MULTIPLE_BITRATE_SD = fromString("H264MultipleBitrateSD");
+
+ /**
+ * Creates or finds a EncoderNamedPreset from its string representation.
+ * @param name a name to look for
+ * @return the corresponding EncoderNamedPreset
+ */
+ @JsonCreator
+ public static EncoderNamedPreset fromString(String name) {
+ return fromString(name, EncoderNamedPreset.class);
+ }
+
+ /**
+ * @return known EncoderNamedPreset values
+ */
+ public static Collection values() {
+ return values(EncoderNamedPreset.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EncryptionScheme.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EncryptionScheme.java
new file mode 100644
index 000000000000..07623bea2985
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EncryptionScheme.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for EncryptionScheme.
+ */
+public final class EncryptionScheme extends ExpandableStringEnum {
+ /** Static value NoEncryption for EncryptionScheme. */
+ public static final EncryptionScheme NO_ENCRYPTION = fromString("NoEncryption");
+
+ /** Static value EnvelopeEncryption for EncryptionScheme. */
+ public static final EncryptionScheme ENVELOPE_ENCRYPTION = fromString("EnvelopeEncryption");
+
+ /** Static value CommonEncryptionCenc for EncryptionScheme. */
+ public static final EncryptionScheme COMMON_ENCRYPTION_CENC = fromString("CommonEncryptionCenc");
+
+ /** Static value CommonEncryptionCbcs for EncryptionScheme. */
+ public static final EncryptionScheme COMMON_ENCRYPTION_CBCS = fromString("CommonEncryptionCbcs");
+
+ /**
+ * Creates or finds a EncryptionScheme from its string representation.
+ * @param name a name to look for
+ * @return the corresponding EncryptionScheme
+ */
+ @JsonCreator
+ public static EncryptionScheme fromString(String name) {
+ return fromString(name, EncryptionScheme.class);
+ }
+
+ /**
+ * @return known EncryptionScheme values
+ */
+ public static Collection values() {
+ return values(EncryptionScheme.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EntityNameAvailabilityCheckOutput.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EntityNameAvailabilityCheckOutput.java
new file mode 100644
index 000000000000..f8e75d71ad89
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EntityNameAvailabilityCheckOutput.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.EntityNameAvailabilityCheckOutputInner;
+
+/**
+ * Type representing EntityNameAvailabilityCheckOutput.
+ */
+public interface EntityNameAvailabilityCheckOutput extends HasInner, HasManager {
+ /**
+ * @return the message value.
+ */
+ String message();
+
+ /**
+ * @return the nameAvailable value.
+ */
+ boolean nameAvailable();
+
+ /**
+ * @return the reason value.
+ */
+ String reason();
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EntropyMode.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EntropyMode.java
new file mode 100644
index 000000000000..6b991e4ea199
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EntropyMode.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for EntropyMode.
+ */
+public final class EntropyMode extends ExpandableStringEnum {
+ /** Static value Cabac for EntropyMode. */
+ public static final EntropyMode CABAC = fromString("Cabac");
+
+ /** Static value Cavlc for EntropyMode. */
+ public static final EntropyMode CAVLC = fromString("Cavlc");
+
+ /**
+ * Creates or finds a EntropyMode from its string representation.
+ * @param name a name to look for
+ * @return the corresponding EntropyMode
+ */
+ @JsonCreator
+ public static EntropyMode fromString(String name) {
+ return fromString(name, EntropyMode.class);
+ }
+
+ /**
+ * @return known EntropyMode values
+ */
+ public static Collection values() {
+ return values(EntropyMode.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EnvelopeEncryption.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EnvelopeEncryption.java
new file mode 100644
index 000000000000..412373c18dfe
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/EnvelopeEncryption.java
@@ -0,0 +1,129 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Class for EnvelopeEncryption encryption scheme.
+ */
+public class EnvelopeEncryption {
+ /**
+ * Representing supported protocols.
+ */
+ @JsonProperty(value = "enabledProtocols")
+ private EnabledProtocols enabledProtocols;
+
+ /**
+ * Representing which tracks should not be encrypted.
+ */
+ @JsonProperty(value = "clearTracks")
+ private List clearTracks;
+
+ /**
+ * Representing default content key for each encryption scheme and separate
+ * content keys for specific tracks.
+ */
+ @JsonProperty(value = "contentKeys")
+ private StreamingPolicyContentKeys contentKeys;
+
+ /**
+ * Template for the URL of the custom service delivering keys to end user
+ * players. Not required when using Azure Media Services for issuing keys.
+ * The template supports replaceable tokens that the service will update at
+ * runtime with the value specific to the request. The currently supported
+ * token values are {AlternativeMediaId}, which is replaced with the value
+ * of StreamingLocatorId.AlternativeMediaId, and {ContentKeyId}, which is
+ * replaced with the value of identifier of the key being requested.
+ */
+ @JsonProperty(value = "customKeyAcquisitionUrlTemplate")
+ private String customKeyAcquisitionUrlTemplate;
+
+ /**
+ * Get representing supported protocols.
+ *
+ * @return the enabledProtocols value
+ */
+ public EnabledProtocols enabledProtocols() {
+ return this.enabledProtocols;
+ }
+
+ /**
+ * Set representing supported protocols.
+ *
+ * @param enabledProtocols the enabledProtocols value to set
+ * @return the EnvelopeEncryption object itself.
+ */
+ public EnvelopeEncryption withEnabledProtocols(EnabledProtocols enabledProtocols) {
+ this.enabledProtocols = enabledProtocols;
+ return this;
+ }
+
+ /**
+ * Get representing which tracks should not be encrypted.
+ *
+ * @return the clearTracks value
+ */
+ public List clearTracks() {
+ return this.clearTracks;
+ }
+
+ /**
+ * Set representing which tracks should not be encrypted.
+ *
+ * @param clearTracks the clearTracks value to set
+ * @return the EnvelopeEncryption object itself.
+ */
+ public EnvelopeEncryption withClearTracks(List clearTracks) {
+ this.clearTracks = clearTracks;
+ return this;
+ }
+
+ /**
+ * Get representing default content key for each encryption scheme and separate content keys for specific tracks.
+ *
+ * @return the contentKeys value
+ */
+ public StreamingPolicyContentKeys contentKeys() {
+ return this.contentKeys;
+ }
+
+ /**
+ * Set representing default content key for each encryption scheme and separate content keys for specific tracks.
+ *
+ * @param contentKeys the contentKeys value to set
+ * @return the EnvelopeEncryption object itself.
+ */
+ public EnvelopeEncryption withContentKeys(StreamingPolicyContentKeys contentKeys) {
+ this.contentKeys = contentKeys;
+ return this;
+ }
+
+ /**
+ * Get template for the URL of the custom service delivering keys to end user players. Not required when using Azure Media Services for issuing keys. The template supports replaceable tokens that the service will update at runtime with the value specific to the request. The currently supported token values are {AlternativeMediaId}, which is replaced with the value of StreamingLocatorId.AlternativeMediaId, and {ContentKeyId}, which is replaced with the value of identifier of the key being requested.
+ *
+ * @return the customKeyAcquisitionUrlTemplate value
+ */
+ public String customKeyAcquisitionUrlTemplate() {
+ return this.customKeyAcquisitionUrlTemplate;
+ }
+
+ /**
+ * Set template for the URL of the custom service delivering keys to end user players. Not required when using Azure Media Services for issuing keys. The template supports replaceable tokens that the service will update at runtime with the value specific to the request. The currently supported token values are {AlternativeMediaId}, which is replaced with the value of StreamingLocatorId.AlternativeMediaId, and {ContentKeyId}, which is replaced with the value of identifier of the key being requested.
+ *
+ * @param customKeyAcquisitionUrlTemplate the customKeyAcquisitionUrlTemplate value to set
+ * @return the EnvelopeEncryption object itself.
+ */
+ public EnvelopeEncryption withCustomKeyAcquisitionUrlTemplate(String customKeyAcquisitionUrlTemplate) {
+ this.customKeyAcquisitionUrlTemplate = customKeyAcquisitionUrlTemplate;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FaceDetectorPreset.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FaceDetectorPreset.java
new file mode 100644
index 000000000000..03c34e7263c9
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FaceDetectorPreset.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes all the settings to be used when analyzing a video in order to
+ * detect all the faces present.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.FaceDetectorPreset")
+public class FaceDetectorPreset extends Preset {
+ /**
+ * Specifies the maximum resolution at which your video is analyzed. The
+ * default behavior is "SourceResolution," which will keep the input video
+ * at its original resolution when analyzed. Using "StandardDefinition"
+ * will resize input videos to standard definition while preserving the
+ * appropriate aspect ratio. It will only resize if the video is of higher
+ * resolution. For example, a 1920x1080 input would be scaled to 640x360
+ * before processing. Switching to "StandardDefinition" will reduce the
+ * time it takes to process high resolution video. It may also reduce the
+ * cost of using this component (see
+ * https://azure.microsoft.com/en-us/pricing/details/media-services/#analytics
+ * for details). However, faces that end up being too small in the resized
+ * video may not be detected. Possible values include: 'SourceResolution',
+ * 'StandardDefinition'.
+ */
+ @JsonProperty(value = "resolution")
+ private AnalysisResolution resolution;
+
+ /**
+ * Get specifies the maximum resolution at which your video is analyzed. The default behavior is "SourceResolution," which will keep the input video at its original resolution when analyzed. Using "StandardDefinition" will resize input videos to standard definition while preserving the appropriate aspect ratio. It will only resize if the video is of higher resolution. For example, a 1920x1080 input would be scaled to 640x360 before processing. Switching to "StandardDefinition" will reduce the time it takes to process high resolution video. It may also reduce the cost of using this component (see https://azure.microsoft.com/en-us/pricing/details/media-services/#analytics for details). However, faces that end up being too small in the resized video may not be detected. Possible values include: 'SourceResolution', 'StandardDefinition'.
+ *
+ * @return the resolution value
+ */
+ public AnalysisResolution resolution() {
+ return this.resolution;
+ }
+
+ /**
+ * Set specifies the maximum resolution at which your video is analyzed. The default behavior is "SourceResolution," which will keep the input video at its original resolution when analyzed. Using "StandardDefinition" will resize input videos to standard definition while preserving the appropriate aspect ratio. It will only resize if the video is of higher resolution. For example, a 1920x1080 input would be scaled to 640x360 before processing. Switching to "StandardDefinition" will reduce the time it takes to process high resolution video. It may also reduce the cost of using this component (see https://azure.microsoft.com/en-us/pricing/details/media-services/#analytics for details). However, faces that end up being too small in the resized video may not be detected. Possible values include: 'SourceResolution', 'StandardDefinition'.
+ *
+ * @param resolution the resolution value to set
+ * @return the FaceDetectorPreset object itself.
+ */
+ public FaceDetectorPreset withResolution(AnalysisResolution resolution) {
+ this.resolution = resolution;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyCompareOperation.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyCompareOperation.java
new file mode 100644
index 000000000000..f880989f4820
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyCompareOperation.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for FilterTrackPropertyCompareOperation.
+ */
+public final class FilterTrackPropertyCompareOperation extends ExpandableStringEnum {
+ /** Static value Equal for FilterTrackPropertyCompareOperation. */
+ public static final FilterTrackPropertyCompareOperation EQUAL = fromString("Equal");
+
+ /** Static value NotEqual for FilterTrackPropertyCompareOperation. */
+ public static final FilterTrackPropertyCompareOperation NOT_EQUAL = fromString("NotEqual");
+
+ /**
+ * Creates or finds a FilterTrackPropertyCompareOperation from its string representation.
+ * @param name a name to look for
+ * @return the corresponding FilterTrackPropertyCompareOperation
+ */
+ @JsonCreator
+ public static FilterTrackPropertyCompareOperation fromString(String name) {
+ return fromString(name, FilterTrackPropertyCompareOperation.class);
+ }
+
+ /**
+ * @return known FilterTrackPropertyCompareOperation values
+ */
+ public static Collection values() {
+ return values(FilterTrackPropertyCompareOperation.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyCondition.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyCondition.java
new file mode 100644
index 000000000000..538df25e2eb6
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyCondition.java
@@ -0,0 +1,97 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The class to specify one track property condition.
+ */
+public class FilterTrackPropertyCondition {
+ /**
+ * The track property type. Possible values include: 'Unknown', 'Type',
+ * 'Name', 'Language', 'FourCC', 'Bitrate'.
+ */
+ @JsonProperty(value = "property", required = true)
+ private FilterTrackPropertyType property;
+
+ /**
+ * The track property value.
+ */
+ @JsonProperty(value = "value", required = true)
+ private String value;
+
+ /**
+ * The track property condition operation. Possible values include:
+ * 'Equal', 'NotEqual'.
+ */
+ @JsonProperty(value = "operation", required = true)
+ private FilterTrackPropertyCompareOperation operation;
+
+ /**
+ * Get the track property type. Possible values include: 'Unknown', 'Type', 'Name', 'Language', 'FourCC', 'Bitrate'.
+ *
+ * @return the property value
+ */
+ public FilterTrackPropertyType property() {
+ return this.property;
+ }
+
+ /**
+ * Set the track property type. Possible values include: 'Unknown', 'Type', 'Name', 'Language', 'FourCC', 'Bitrate'.
+ *
+ * @param property the property value to set
+ * @return the FilterTrackPropertyCondition object itself.
+ */
+ public FilterTrackPropertyCondition withProperty(FilterTrackPropertyType property) {
+ this.property = property;
+ return this;
+ }
+
+ /**
+ * Get the track property value.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the track property value.
+ *
+ * @param value the value value to set
+ * @return the FilterTrackPropertyCondition object itself.
+ */
+ public FilterTrackPropertyCondition withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get the track property condition operation. Possible values include: 'Equal', 'NotEqual'.
+ *
+ * @return the operation value
+ */
+ public FilterTrackPropertyCompareOperation operation() {
+ return this.operation;
+ }
+
+ /**
+ * Set the track property condition operation. Possible values include: 'Equal', 'NotEqual'.
+ *
+ * @param operation the operation value to set
+ * @return the FilterTrackPropertyCondition object itself.
+ */
+ public FilterTrackPropertyCondition withOperation(FilterTrackPropertyCompareOperation operation) {
+ this.operation = operation;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyType.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyType.java
new file mode 100644
index 000000000000..74d12286aae6
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackPropertyType.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for FilterTrackPropertyType.
+ */
+public final class FilterTrackPropertyType extends ExpandableStringEnum {
+ /** Static value Unknown for FilterTrackPropertyType. */
+ public static final FilterTrackPropertyType UNKNOWN = fromString("Unknown");
+
+ /** Static value Type for FilterTrackPropertyType. */
+ public static final FilterTrackPropertyType TYPE = fromString("Type");
+
+ /** Static value Name for FilterTrackPropertyType. */
+ public static final FilterTrackPropertyType NAME = fromString("Name");
+
+ /** Static value Language for FilterTrackPropertyType. */
+ public static final FilterTrackPropertyType LANGUAGE = fromString("Language");
+
+ /** Static value FourCC for FilterTrackPropertyType. */
+ public static final FilterTrackPropertyType FOUR_CC = fromString("FourCC");
+
+ /** Static value Bitrate for FilterTrackPropertyType. */
+ public static final FilterTrackPropertyType BITRATE = fromString("Bitrate");
+
+ /**
+ * Creates or finds a FilterTrackPropertyType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding FilterTrackPropertyType
+ */
+ @JsonCreator
+ public static FilterTrackPropertyType fromString(String name) {
+ return fromString(name, FilterTrackPropertyType.class);
+ }
+
+ /**
+ * @return known FilterTrackPropertyType values
+ */
+ public static Collection values() {
+ return values(FilterTrackPropertyType.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackSelection.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackSelection.java
new file mode 100644
index 000000000000..4b87921cd738
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FilterTrackSelection.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Representing a list of FilterTrackPropertyConditions to select a track. The
+ * filters are combined using a logical AND operation.
+ */
+public class FilterTrackSelection {
+ /**
+ * The track selections.
+ */
+ @JsonProperty(value = "trackSelections", required = true)
+ private List trackSelections;
+
+ /**
+ * Get the track selections.
+ *
+ * @return the trackSelections value
+ */
+ public List trackSelections() {
+ return this.trackSelections;
+ }
+
+ /**
+ * Set the track selections.
+ *
+ * @param trackSelections the trackSelections value to set
+ * @return the FilterTrackSelection object itself.
+ */
+ public FilterTrackSelection withTrackSelections(List trackSelections) {
+ this.trackSelections = trackSelections;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Filters.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Filters.java
new file mode 100644
index 000000000000..f947f131e645
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Filters.java
@@ -0,0 +1,127 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes all the filtering operations, such as de-interlacing, rotation
+ * etc. that are to be applied to the input media before encoding.
+ */
+public class Filters {
+ /**
+ * The de-interlacing settings.
+ */
+ @JsonProperty(value = "deinterlace")
+ private Deinterlace deinterlace;
+
+ /**
+ * The rotation, if any, to be applied to the input video, before it is
+ * encoded. Default is Auto. Possible values include: 'Auto', 'None',
+ * 'Rotate0', 'Rotate90', 'Rotate180', 'Rotate270'.
+ */
+ @JsonProperty(value = "rotation")
+ private Rotation rotation;
+
+ /**
+ * The parameters for the rectangular window with which to crop the input
+ * video.
+ */
+ @JsonProperty(value = "crop")
+ private Rectangle crop;
+
+ /**
+ * The properties of overlays to be applied to the input video. These could
+ * be audio, image or video overlays.
+ */
+ @JsonProperty(value = "overlays")
+ private List overlays;
+
+ /**
+ * Get the de-interlacing settings.
+ *
+ * @return the deinterlace value
+ */
+ public Deinterlace deinterlace() {
+ return this.deinterlace;
+ }
+
+ /**
+ * Set the de-interlacing settings.
+ *
+ * @param deinterlace the deinterlace value to set
+ * @return the Filters object itself.
+ */
+ public Filters withDeinterlace(Deinterlace deinterlace) {
+ this.deinterlace = deinterlace;
+ return this;
+ }
+
+ /**
+ * Get the rotation, if any, to be applied to the input video, before it is encoded. Default is Auto. Possible values include: 'Auto', 'None', 'Rotate0', 'Rotate90', 'Rotate180', 'Rotate270'.
+ *
+ * @return the rotation value
+ */
+ public Rotation rotation() {
+ return this.rotation;
+ }
+
+ /**
+ * Set the rotation, if any, to be applied to the input video, before it is encoded. Default is Auto. Possible values include: 'Auto', 'None', 'Rotate0', 'Rotate90', 'Rotate180', 'Rotate270'.
+ *
+ * @param rotation the rotation value to set
+ * @return the Filters object itself.
+ */
+ public Filters withRotation(Rotation rotation) {
+ this.rotation = rotation;
+ return this;
+ }
+
+ /**
+ * Get the parameters for the rectangular window with which to crop the input video.
+ *
+ * @return the crop value
+ */
+ public Rectangle crop() {
+ return this.crop;
+ }
+
+ /**
+ * Set the parameters for the rectangular window with which to crop the input video.
+ *
+ * @param crop the crop value to set
+ * @return the Filters object itself.
+ */
+ public Filters withCrop(Rectangle crop) {
+ this.crop = crop;
+ return this;
+ }
+
+ /**
+ * Get the properties of overlays to be applied to the input video. These could be audio, image or video overlays.
+ *
+ * @return the overlays value
+ */
+ public List overlays() {
+ return this.overlays;
+ }
+
+ /**
+ * Set the properties of overlays to be applied to the input video. These could be audio, image or video overlays.
+ *
+ * @param overlays the overlays value to set
+ * @return the Filters object itself.
+ */
+ public Filters withOverlays(List overlays) {
+ this.overlays = overlays;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FirstQuality.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FirstQuality.java
new file mode 100644
index 000000000000..4b7f1b0174d2
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/FirstQuality.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Filter First Quality.
+ */
+public class FirstQuality {
+ /**
+ * The first quality bitrate.
+ */
+ @JsonProperty(value = "bitrate", required = true)
+ private int bitrate;
+
+ /**
+ * Get the first quality bitrate.
+ *
+ * @return the bitrate value
+ */
+ public int bitrate() {
+ return this.bitrate;
+ }
+
+ /**
+ * Set the first quality bitrate.
+ *
+ * @param bitrate the bitrate value to set
+ * @return the FirstQuality object itself.
+ */
+ public FirstQuality withBitrate(int bitrate) {
+ this.bitrate = bitrate;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Format.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Format.java
new file mode 100644
index 000000000000..a7e96e6ec51d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Format.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base class for output.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("Format")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.ImageFormat", value = ImageFormat.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.MultiBitrateFormat", value = MultiBitrateFormat.class)
+})
+public class Format {
+ /**
+ * The pattern of the file names for the generated output files. The
+ * following macros are supported in the file name: {Basename} - The base
+ * name of the input video {Extension} - The appropriate extension for this
+ * format. {Label} - The label assigned to the codec/layer. {Index} - A
+ * unique index for thumbnails. Only applicable to thumbnails. {Bitrate} -
+ * The audio/video bitrate. Not applicable to thumbnails. {Codec} - The
+ * type of the audio/video codec. Any unsubstituted macros will be
+ * collapsed and removed from the filename.
+ */
+ @JsonProperty(value = "filenamePattern", required = true)
+ private String filenamePattern;
+
+ /**
+ * Get the pattern of the file names for the generated output files. The following macros are supported in the file name: {Basename} - The base name of the input video {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {Bitrate} - The audio/video bitrate. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. Any unsubstituted macros will be collapsed and removed from the filename.
+ *
+ * @return the filenamePattern value
+ */
+ public String filenamePattern() {
+ return this.filenamePattern;
+ }
+
+ /**
+ * Set the pattern of the file names for the generated output files. The following macros are supported in the file name: {Basename} - The base name of the input video {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {Bitrate} - The audio/video bitrate. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. Any unsubstituted macros will be collapsed and removed from the filename.
+ *
+ * @param filenamePattern the filenamePattern value to set
+ * @return the Format object itself.
+ */
+ public Format withFilenamePattern(String filenamePattern) {
+ this.filenamePattern = filenamePattern;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Complexity.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Complexity.java
new file mode 100644
index 000000000000..e50aaa788493
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Complexity.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for H264Complexity.
+ */
+public final class H264Complexity extends ExpandableStringEnum {
+ /** Static value Speed for H264Complexity. */
+ public static final H264Complexity SPEED = fromString("Speed");
+
+ /** Static value Balanced for H264Complexity. */
+ public static final H264Complexity BALANCED = fromString("Balanced");
+
+ /** Static value Quality for H264Complexity. */
+ public static final H264Complexity QUALITY = fromString("Quality");
+
+ /**
+ * Creates or finds a H264Complexity from its string representation.
+ * @param name a name to look for
+ * @return the corresponding H264Complexity
+ */
+ @JsonCreator
+ public static H264Complexity fromString(String name) {
+ return fromString(name, H264Complexity.class);
+ }
+
+ /**
+ * @return known H264Complexity values
+ */
+ public static Collection values() {
+ return values(H264Complexity.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Layer.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Layer.java
new file mode 100644
index 000000000000..8f40a693b3c4
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Layer.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import org.joda.time.Period;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes the settings to be used when encoding the input video into a
+ * desired output bitrate layer with the H.264 video codec.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.H264Layer")
+public class H264Layer extends VideoLayer {
+ /**
+ * We currently support Baseline, Main, High, High422, High444. Default is
+ * Auto. Possible values include: 'Auto', 'Baseline', 'Main', 'High',
+ * 'High422', 'High444'.
+ */
+ @JsonProperty(value = "profile")
+ private H264VideoProfile profile;
+
+ /**
+ * We currently support Level up to 6.2. The value can be Auto, or a number
+ * that matches the H.264 profile. If not specified, the default is Auto,
+ * which lets the encoder choose the Level that is appropriate for this
+ * layer.
+ */
+ @JsonProperty(value = "level")
+ private String level;
+
+ /**
+ * The VBV buffer window length. The value should be in ISO 8601 format.
+ * The value should be in the range [0.1-100] seconds. The default is 5
+ * seconds (for example, PT5S).
+ */
+ @JsonProperty(value = "bufferWindow")
+ private Period bufferWindow;
+
+ /**
+ * The number of reference frames to be used when encoding this layer. If
+ * not specified, the encoder determines an appropriate number based on the
+ * encoder complexity setting.
+ */
+ @JsonProperty(value = "referenceFrames")
+ private Integer referenceFrames;
+
+ /**
+ * The entropy mode to be used for this layer. If not specified, the
+ * encoder chooses the mode that is appropriate for the profile and level.
+ * Possible values include: 'Cabac', 'Cavlc'.
+ */
+ @JsonProperty(value = "entropyMode")
+ private EntropyMode entropyMode;
+
+ /**
+ * Get we currently support Baseline, Main, High, High422, High444. Default is Auto. Possible values include: 'Auto', 'Baseline', 'Main', 'High', 'High422', 'High444'.
+ *
+ * @return the profile value
+ */
+ public H264VideoProfile profile() {
+ return this.profile;
+ }
+
+ /**
+ * Set we currently support Baseline, Main, High, High422, High444. Default is Auto. Possible values include: 'Auto', 'Baseline', 'Main', 'High', 'High422', 'High444'.
+ *
+ * @param profile the profile value to set
+ * @return the H264Layer object itself.
+ */
+ public H264Layer withProfile(H264VideoProfile profile) {
+ this.profile = profile;
+ return this;
+ }
+
+ /**
+ * Get we currently support Level up to 6.2. The value can be Auto, or a number that matches the H.264 profile. If not specified, the default is Auto, which lets the encoder choose the Level that is appropriate for this layer.
+ *
+ * @return the level value
+ */
+ public String level() {
+ return this.level;
+ }
+
+ /**
+ * Set we currently support Level up to 6.2. The value can be Auto, or a number that matches the H.264 profile. If not specified, the default is Auto, which lets the encoder choose the Level that is appropriate for this layer.
+ *
+ * @param level the level value to set
+ * @return the H264Layer object itself.
+ */
+ public H264Layer withLevel(String level) {
+ this.level = level;
+ return this;
+ }
+
+ /**
+ * Get the VBV buffer window length. The value should be in ISO 8601 format. The value should be in the range [0.1-100] seconds. The default is 5 seconds (for example, PT5S).
+ *
+ * @return the bufferWindow value
+ */
+ public Period bufferWindow() {
+ return this.bufferWindow;
+ }
+
+ /**
+ * Set the VBV buffer window length. The value should be in ISO 8601 format. The value should be in the range [0.1-100] seconds. The default is 5 seconds (for example, PT5S).
+ *
+ * @param bufferWindow the bufferWindow value to set
+ * @return the H264Layer object itself.
+ */
+ public H264Layer withBufferWindow(Period bufferWindow) {
+ this.bufferWindow = bufferWindow;
+ return this;
+ }
+
+ /**
+ * Get the number of reference frames to be used when encoding this layer. If not specified, the encoder determines an appropriate number based on the encoder complexity setting.
+ *
+ * @return the referenceFrames value
+ */
+ public Integer referenceFrames() {
+ return this.referenceFrames;
+ }
+
+ /**
+ * Set the number of reference frames to be used when encoding this layer. If not specified, the encoder determines an appropriate number based on the encoder complexity setting.
+ *
+ * @param referenceFrames the referenceFrames value to set
+ * @return the H264Layer object itself.
+ */
+ public H264Layer withReferenceFrames(Integer referenceFrames) {
+ this.referenceFrames = referenceFrames;
+ return this;
+ }
+
+ /**
+ * Get the entropy mode to be used for this layer. If not specified, the encoder chooses the mode that is appropriate for the profile and level. Possible values include: 'Cabac', 'Cavlc'.
+ *
+ * @return the entropyMode value
+ */
+ public EntropyMode entropyMode() {
+ return this.entropyMode;
+ }
+
+ /**
+ * Set the entropy mode to be used for this layer. If not specified, the encoder chooses the mode that is appropriate for the profile and level. Possible values include: 'Cabac', 'Cavlc'.
+ *
+ * @param entropyMode the entropyMode value to set
+ * @return the H264Layer object itself.
+ */
+ public H264Layer withEntropyMode(EntropyMode entropyMode) {
+ this.entropyMode = entropyMode;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Video.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Video.java
new file mode 100644
index 000000000000..aa8d8ffb0a64
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264Video.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes all the properties for encoding a video with the H.264 codec.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.H264Video")
+public class H264Video extends Video {
+ /**
+ * Whether or not the encoder should insert key frames at scene changes. If
+ * not specified, the default is false. This flag should be set to true
+ * only when the encoder is being configured to produce a single output
+ * video.
+ */
+ @JsonProperty(value = "sceneChangeDetection")
+ private Boolean sceneChangeDetection;
+
+ /**
+ * Tells the encoder how to choose its encoding settings. The default value
+ * is Balanced. Possible values include: 'Speed', 'Balanced', 'Quality'.
+ */
+ @JsonProperty(value = "complexity")
+ private H264Complexity complexity;
+
+ /**
+ * The collection of output H.264 layers to be produced by the encoder.
+ */
+ @JsonProperty(value = "layers")
+ private List layers;
+
+ /**
+ * Get whether or not the encoder should insert key frames at scene changes. If not specified, the default is false. This flag should be set to true only when the encoder is being configured to produce a single output video.
+ *
+ * @return the sceneChangeDetection value
+ */
+ public Boolean sceneChangeDetection() {
+ return this.sceneChangeDetection;
+ }
+
+ /**
+ * Set whether or not the encoder should insert key frames at scene changes. If not specified, the default is false. This flag should be set to true only when the encoder is being configured to produce a single output video.
+ *
+ * @param sceneChangeDetection the sceneChangeDetection value to set
+ * @return the H264Video object itself.
+ */
+ public H264Video withSceneChangeDetection(Boolean sceneChangeDetection) {
+ this.sceneChangeDetection = sceneChangeDetection;
+ return this;
+ }
+
+ /**
+ * Get tells the encoder how to choose its encoding settings. The default value is Balanced. Possible values include: 'Speed', 'Balanced', 'Quality'.
+ *
+ * @return the complexity value
+ */
+ public H264Complexity complexity() {
+ return this.complexity;
+ }
+
+ /**
+ * Set tells the encoder how to choose its encoding settings. The default value is Balanced. Possible values include: 'Speed', 'Balanced', 'Quality'.
+ *
+ * @param complexity the complexity value to set
+ * @return the H264Video object itself.
+ */
+ public H264Video withComplexity(H264Complexity complexity) {
+ this.complexity = complexity;
+ return this;
+ }
+
+ /**
+ * Get the collection of output H.264 layers to be produced by the encoder.
+ *
+ * @return the layers value
+ */
+ public List layers() {
+ return this.layers;
+ }
+
+ /**
+ * Set the collection of output H.264 layers to be produced by the encoder.
+ *
+ * @param layers the layers value to set
+ * @return the H264Video object itself.
+ */
+ public H264Video withLayers(List layers) {
+ this.layers = layers;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264VideoProfile.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264VideoProfile.java
new file mode 100644
index 000000000000..cf63d1c9059a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/H264VideoProfile.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for H264VideoProfile.
+ */
+public final class H264VideoProfile extends ExpandableStringEnum {
+ /** Static value Auto for H264VideoProfile. */
+ public static final H264VideoProfile AUTO = fromString("Auto");
+
+ /** Static value Baseline for H264VideoProfile. */
+ public static final H264VideoProfile BASELINE = fromString("Baseline");
+
+ /** Static value Main for H264VideoProfile. */
+ public static final H264VideoProfile MAIN = fromString("Main");
+
+ /** Static value High for H264VideoProfile. */
+ public static final H264VideoProfile HIGH = fromString("High");
+
+ /** Static value High422 for H264VideoProfile. */
+ public static final H264VideoProfile HIGH422 = fromString("High422");
+
+ /** Static value High444 for H264VideoProfile. */
+ public static final H264VideoProfile HIGH444 = fromString("High444");
+
+ /**
+ * Creates or finds a H264VideoProfile from its string representation.
+ * @param name a name to look for
+ * @return the corresponding H264VideoProfile
+ */
+ @JsonCreator
+ public static H264VideoProfile fromString(String name) {
+ return fromString(name, H264VideoProfile.class);
+ }
+
+ /**
+ * @return known H264VideoProfile values
+ */
+ public static Collection values() {
+ return values(H264VideoProfile.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Hls.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Hls.java
new file mode 100644
index 000000000000..aa59de160deb
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Hls.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The HLS configuration.
+ */
+public class Hls {
+ /**
+ * The amount of fragments per HTTP Live Streaming (HLS) segment.
+ */
+ @JsonProperty(value = "fragmentsPerTsSegment")
+ private Integer fragmentsPerTsSegment;
+
+ /**
+ * Get the amount of fragments per HTTP Live Streaming (HLS) segment.
+ *
+ * @return the fragmentsPerTsSegment value
+ */
+ public Integer fragmentsPerTsSegment() {
+ return this.fragmentsPerTsSegment;
+ }
+
+ /**
+ * Set the amount of fragments per HTTP Live Streaming (HLS) segment.
+ *
+ * @param fragmentsPerTsSegment the fragmentsPerTsSegment value to set
+ * @return the Hls object itself.
+ */
+ public Hls withFragmentsPerTsSegment(Integer fragmentsPerTsSegment) {
+ this.fragmentsPerTsSegment = fragmentsPerTsSegment;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/IPAccessControl.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/IPAccessControl.java
new file mode 100644
index 000000000000..85fbd867ec70
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/IPAccessControl.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The IP access control.
+ */
+public class IPAccessControl {
+ /**
+ * The IP allow list.
+ */
+ @JsonProperty(value = "allow")
+ private List allow;
+
+ /**
+ * Get the IP allow list.
+ *
+ * @return the allow value
+ */
+ public List allow() {
+ return this.allow;
+ }
+
+ /**
+ * Set the IP allow list.
+ *
+ * @param allow the allow value to set
+ * @return the IPAccessControl object itself.
+ */
+ public IPAccessControl withAllow(List allow) {
+ this.allow = allow;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/IPRange.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/IPRange.java
new file mode 100644
index 000000000000..93d3b3f438ab
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/IPRange.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The IP address range in the CIDR scheme.
+ */
+public class IPRange {
+ /**
+ * The friendly name for the IP address range.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The IP address.
+ */
+ @JsonProperty(value = "address")
+ private String address;
+
+ /**
+ * The subnet mask prefix length (see CIDR notation).
+ */
+ @JsonProperty(value = "subnetPrefixLength")
+ private Integer subnetPrefixLength;
+
+ /**
+ * Get the friendly name for the IP address range.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the friendly name for the IP address range.
+ *
+ * @param name the name value to set
+ * @return the IPRange object itself.
+ */
+ public IPRange withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the IP address.
+ *
+ * @return the address value
+ */
+ public String address() {
+ return this.address;
+ }
+
+ /**
+ * Set the IP address.
+ *
+ * @param address the address value to set
+ * @return the IPRange object itself.
+ */
+ public IPRange withAddress(String address) {
+ this.address = address;
+ return this;
+ }
+
+ /**
+ * Get the subnet mask prefix length (see CIDR notation).
+ *
+ * @return the subnetPrefixLength value
+ */
+ public Integer subnetPrefixLength() {
+ return this.subnetPrefixLength;
+ }
+
+ /**
+ * Set the subnet mask prefix length (see CIDR notation).
+ *
+ * @param subnetPrefixLength the subnetPrefixLength value to set
+ * @return the IPRange object itself.
+ */
+ public IPRange withSubnetPrefixLength(Integer subnetPrefixLength) {
+ this.subnetPrefixLength = subnetPrefixLength;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Image.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Image.java
new file mode 100644
index 000000000000..bbfdd60c2a24
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Image.java
@@ -0,0 +1,116 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Describes the basic properties for generating thumbnails from the input
+ * video.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.Image")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.JpgImage", value = JpgImage.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.PngImage", value = PngImage.class)
+})
+public class Image extends Video {
+ /**
+ * The position in the input video from where to start generating
+ * thumbnails. The value can be in absolute timestamp (ISO 8601, e.g:
+ * PT05S), or a frame count (For example, 10 for the 10th frame), or a
+ * relative value (For example, 1%). Also supports a macro {Best}, which
+ * tells the encoder to select the best thumbnail from the first few
+ * seconds of the video.
+ */
+ @JsonProperty(value = "start", required = true)
+ private String start;
+
+ /**
+ * The intervals at which thumbnails are generated. The value can be in
+ * absolute timestamp (ISO 8601, e.g: PT05S for one image every 5 seconds),
+ * or a frame count (For example, 30 for every 30 frames), or a relative
+ * value (For example, 1%).
+ */
+ @JsonProperty(value = "step")
+ private String step;
+
+ /**
+ * The position in the input video at which to stop generating thumbnails.
+ * The value can be in absolute timestamp (ISO 8601, e.g: PT5M30S to stop
+ * at 5 minutes and 30 seconds), or a frame count (For example, 300 to stop
+ * at the 300th frame), or a relative value (For example, 100%).
+ */
+ @JsonProperty(value = "range")
+ private String range;
+
+ /**
+ * Get the position in the input video from where to start generating thumbnails. The value can be in absolute timestamp (ISO 8601, e.g: PT05S), or a frame count (For example, 10 for the 10th frame), or a relative value (For example, 1%). Also supports a macro {Best}, which tells the encoder to select the best thumbnail from the first few seconds of the video.
+ *
+ * @return the start value
+ */
+ public String start() {
+ return this.start;
+ }
+
+ /**
+ * Set the position in the input video from where to start generating thumbnails. The value can be in absolute timestamp (ISO 8601, e.g: PT05S), or a frame count (For example, 10 for the 10th frame), or a relative value (For example, 1%). Also supports a macro {Best}, which tells the encoder to select the best thumbnail from the first few seconds of the video.
+ *
+ * @param start the start value to set
+ * @return the Image object itself.
+ */
+ public Image withStart(String start) {
+ this.start = start;
+ return this;
+ }
+
+ /**
+ * Get the intervals at which thumbnails are generated. The value can be in absolute timestamp (ISO 8601, e.g: PT05S for one image every 5 seconds), or a frame count (For example, 30 for every 30 frames), or a relative value (For example, 1%).
+ *
+ * @return the step value
+ */
+ public String step() {
+ return this.step;
+ }
+
+ /**
+ * Set the intervals at which thumbnails are generated. The value can be in absolute timestamp (ISO 8601, e.g: PT05S for one image every 5 seconds), or a frame count (For example, 30 for every 30 frames), or a relative value (For example, 1%).
+ *
+ * @param step the step value to set
+ * @return the Image object itself.
+ */
+ public Image withStep(String step) {
+ this.step = step;
+ return this;
+ }
+
+ /**
+ * Get the position in the input video at which to stop generating thumbnails. The value can be in absolute timestamp (ISO 8601, e.g: PT5M30S to stop at 5 minutes and 30 seconds), or a frame count (For example, 300 to stop at the 300th frame), or a relative value (For example, 100%).
+ *
+ * @return the range value
+ */
+ public String range() {
+ return this.range;
+ }
+
+ /**
+ * Set the position in the input video at which to stop generating thumbnails. The value can be in absolute timestamp (ISO 8601, e.g: PT5M30S to stop at 5 minutes and 30 seconds), or a frame count (For example, 300 to stop at the 300th frame), or a relative value (For example, 100%).
+ *
+ * @param range the range value to set
+ * @return the Image object itself.
+ */
+ public Image withRange(String range) {
+ this.range = range;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ImageFormat.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ImageFormat.java
new file mode 100644
index 000000000000..e77eff05d11d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ImageFormat.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Describes the properties for an output image file.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.ImageFormat")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.JpgFormat", value = JpgFormat.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.PngFormat", value = PngFormat.class)
+})
+public class ImageFormat extends Format {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/InsightsType.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/InsightsType.java
new file mode 100644
index 000000000000..35a896e663b5
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/InsightsType.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for InsightsType.
+ */
+public final class InsightsType extends ExpandableStringEnum {
+ /** Static value AudioInsightsOnly for InsightsType. */
+ public static final InsightsType AUDIO_INSIGHTS_ONLY = fromString("AudioInsightsOnly");
+
+ /** Static value VideoInsightsOnly for InsightsType. */
+ public static final InsightsType VIDEO_INSIGHTS_ONLY = fromString("VideoInsightsOnly");
+
+ /** Static value AllInsights for InsightsType. */
+ public static final InsightsType ALL_INSIGHTS = fromString("AllInsights");
+
+ /**
+ * Creates or finds a InsightsType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding InsightsType
+ */
+ @JsonCreator
+ public static InsightsType fromString(String name) {
+ return fromString(name, InsightsType.class);
+ }
+
+ /**
+ * @return known InsightsType values
+ */
+ public static Collection values() {
+ return values(InsightsType.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Job.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Job.java
new file mode 100644
index 000000000000..5e0391b8c4d5
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Job.java
@@ -0,0 +1,228 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.JobInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import org.joda.time.DateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Type representing Job.
+ */
+public interface Job extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the correlationData value.
+ */
+ Map correlationData();
+
+ /**
+ * @return the created value.
+ */
+ DateTime created();
+
+ /**
+ * @return the description value.
+ */
+ String description();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the input value.
+ */
+ JobInput input();
+
+ /**
+ * @return the lastModified value.
+ */
+ DateTime lastModified();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the outputs value.
+ */
+ List outputs();
+
+ /**
+ * @return the priority value.
+ */
+ Priority priority();
+
+ /**
+ * @return the state value.
+ */
+ JobState state();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the Job definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithTransform, DefinitionStages.WithInput, DefinitionStages.WithOutputs, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Job definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Job definition.
+ */
+ interface Blank extends WithTransform {
+ }
+
+ /**
+ * The stage of the job definition allowing to specify Transform.
+ */
+ interface WithTransform {
+ /**
+ * Specifies resourceGroupName, accountName, transformName.
+ * @param resourceGroupName The name of the resource group within the Azure subscription
+ * @param accountName The Media Services account name
+ * @param transformName The Transform name
+ * @return the next definition stage
+ */
+ WithInput withExistingTransform(String resourceGroupName, String accountName, String transformName);
+ }
+
+ /**
+ * The stage of the job definition allowing to specify Input.
+ */
+ interface WithInput {
+ /**
+ * Specifies input.
+ * @param input The inputs for the Job
+ * @return the next definition stage
+ */
+ WithOutputs withInput(JobInput input);
+ }
+
+ /**
+ * The stage of the job definition allowing to specify Outputs.
+ */
+ interface WithOutputs {
+ /**
+ * Specifies outputs.
+ * @param outputs The outputs for the Job
+ * @return the next definition stage
+ */
+ WithCreate withOutputs(List outputs);
+ }
+
+ /**
+ * The stage of the job definition allowing to specify CorrelationData.
+ */
+ interface WithCorrelationData {
+ /**
+ * Specifies correlationData.
+ * @param correlationData Customer provided key, value pairs that will be returned in Job and JobOutput state events
+ * @return the next definition stage
+ */
+ WithCreate withCorrelationData(Map correlationData);
+ }
+
+ /**
+ * The stage of the job definition allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description Optional customer supplied description of the Job
+ * @return the next definition stage
+ */
+ WithCreate withDescription(String description);
+ }
+
+ /**
+ * The stage of the job definition allowing to specify Priority.
+ */
+ interface WithPriority {
+ /**
+ * Specifies priority.
+ * @param priority Priority with which the job should be processed. Higher priority jobs are processed before lower priority jobs. If not set, the default is normal. Possible values include: 'Low', 'Normal', 'High'
+ * @return the next definition stage
+ */
+ WithCreate withPriority(Priority priority);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithCorrelationData, DefinitionStages.WithDescription, DefinitionStages.WithPriority {
+ }
+ }
+ /**
+ * The template for a Job update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithCorrelationData, UpdateStages.WithDescription, UpdateStages.WithPriority {
+ }
+
+ /**
+ * Grouping of Job update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the job update allowing to specify CorrelationData.
+ */
+ interface WithCorrelationData {
+ /**
+ * Specifies correlationData.
+ * @param correlationData Customer provided key, value pairs that will be returned in Job and JobOutput state events
+ * @return the next update stage
+ */
+ Update withCorrelationData(Map correlationData);
+ }
+
+ /**
+ * The stage of the job update allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description Optional customer supplied description of the Job
+ * @return the next update stage
+ */
+ Update withDescription(String description);
+ }
+
+ /**
+ * The stage of the job update allowing to specify Priority.
+ */
+ interface WithPriority {
+ /**
+ * Specifies priority.
+ * @param priority Priority with which the job should be processed. Higher priority jobs are processed before lower priority jobs. If not set, the default is normal. Possible values include: 'Low', 'Normal', 'High'
+ * @return the next update stage
+ */
+ Update withPriority(Priority priority);
+ }
+
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobError.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobError.java
new file mode 100644
index 000000000000..25952488dee1
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobError.java
@@ -0,0 +1,100 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Details of JobOutput errors.
+ */
+public class JobError {
+ /**
+ * Error code describing the error. Possible values include:
+ * 'ServiceError', 'ServiceTransientError', 'DownloadNotAccessible',
+ * 'DownloadTransientError', 'UploadNotAccessible', 'UploadTransientError',
+ * 'ConfigurationUnsupported', 'ContentMalformed', 'ContentUnsupported'.
+ */
+ @JsonProperty(value = "code", access = JsonProperty.Access.WRITE_ONLY)
+ private JobErrorCode code;
+
+ /**
+ * A human-readable language-dependent representation of the error.
+ */
+ @JsonProperty(value = "message", access = JsonProperty.Access.WRITE_ONLY)
+ private String message;
+
+ /**
+ * Helps with categorization of errors. Possible values include: 'Service',
+ * 'Download', 'Upload', 'Configuration', 'Content'.
+ */
+ @JsonProperty(value = "category", access = JsonProperty.Access.WRITE_ONLY)
+ private JobErrorCategory category;
+
+ /**
+ * Indicates that it may be possible to retry the Job. If retry is
+ * unsuccessful, please contact Azure support via Azure Portal. Possible
+ * values include: 'DoNotRetry', 'MayRetry'.
+ */
+ @JsonProperty(value = "retry", access = JsonProperty.Access.WRITE_ONLY)
+ private JobRetry retry;
+
+ /**
+ * An array of details about specific errors that led to this reported
+ * error.
+ */
+ @JsonProperty(value = "details", access = JsonProperty.Access.WRITE_ONLY)
+ private List details;
+
+ /**
+ * Get error code describing the error. Possible values include: 'ServiceError', 'ServiceTransientError', 'DownloadNotAccessible', 'DownloadTransientError', 'UploadNotAccessible', 'UploadTransientError', 'ConfigurationUnsupported', 'ContentMalformed', 'ContentUnsupported'.
+ *
+ * @return the code value
+ */
+ public JobErrorCode code() {
+ return this.code;
+ }
+
+ /**
+ * Get a human-readable language-dependent representation of the error.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Get helps with categorization of errors. Possible values include: 'Service', 'Download', 'Upload', 'Configuration', 'Content'.
+ *
+ * @return the category value
+ */
+ public JobErrorCategory category() {
+ return this.category;
+ }
+
+ /**
+ * Get indicates that it may be possible to retry the Job. If retry is unsuccessful, please contact Azure support via Azure Portal. Possible values include: 'DoNotRetry', 'MayRetry'.
+ *
+ * @return the retry value
+ */
+ public JobRetry retry() {
+ return this.retry;
+ }
+
+ /**
+ * Get an array of details about specific errors that led to this reported error.
+ *
+ * @return the details value
+ */
+ public List details() {
+ return this.details;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorCategory.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorCategory.java
new file mode 100644
index 000000000000..c0cc3c653810
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorCategory.java
@@ -0,0 +1,50 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for JobErrorCategory.
+ */
+public final class JobErrorCategory extends ExpandableStringEnum {
+ /** Static value Service for JobErrorCategory. */
+ public static final JobErrorCategory SERVICE = fromString("Service");
+
+ /** Static value Download for JobErrorCategory. */
+ public static final JobErrorCategory DOWNLOAD = fromString("Download");
+
+ /** Static value Upload for JobErrorCategory. */
+ public static final JobErrorCategory UPLOAD = fromString("Upload");
+
+ /** Static value Configuration for JobErrorCategory. */
+ public static final JobErrorCategory CONFIGURATION = fromString("Configuration");
+
+ /** Static value Content for JobErrorCategory. */
+ public static final JobErrorCategory CONTENT = fromString("Content");
+
+ /**
+ * Creates or finds a JobErrorCategory from its string representation.
+ * @param name a name to look for
+ * @return the corresponding JobErrorCategory
+ */
+ @JsonCreator
+ public static JobErrorCategory fromString(String name) {
+ return fromString(name, JobErrorCategory.class);
+ }
+
+ /**
+ * @return known JobErrorCategory values
+ */
+ public static Collection values() {
+ return values(JobErrorCategory.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorCode.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorCode.java
new file mode 100644
index 000000000000..7985842d7dab
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorCode.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for JobErrorCode.
+ */
+public final class JobErrorCode extends ExpandableStringEnum {
+ /** Static value ServiceError for JobErrorCode. */
+ public static final JobErrorCode SERVICE_ERROR = fromString("ServiceError");
+
+ /** Static value ServiceTransientError for JobErrorCode. */
+ public static final JobErrorCode SERVICE_TRANSIENT_ERROR = fromString("ServiceTransientError");
+
+ /** Static value DownloadNotAccessible for JobErrorCode. */
+ public static final JobErrorCode DOWNLOAD_NOT_ACCESSIBLE = fromString("DownloadNotAccessible");
+
+ /** Static value DownloadTransientError for JobErrorCode. */
+ public static final JobErrorCode DOWNLOAD_TRANSIENT_ERROR = fromString("DownloadTransientError");
+
+ /** Static value UploadNotAccessible for JobErrorCode. */
+ public static final JobErrorCode UPLOAD_NOT_ACCESSIBLE = fromString("UploadNotAccessible");
+
+ /** Static value UploadTransientError for JobErrorCode. */
+ public static final JobErrorCode UPLOAD_TRANSIENT_ERROR = fromString("UploadTransientError");
+
+ /** Static value ConfigurationUnsupported for JobErrorCode. */
+ public static final JobErrorCode CONFIGURATION_UNSUPPORTED = fromString("ConfigurationUnsupported");
+
+ /** Static value ContentMalformed for JobErrorCode. */
+ public static final JobErrorCode CONTENT_MALFORMED = fromString("ContentMalformed");
+
+ /** Static value ContentUnsupported for JobErrorCode. */
+ public static final JobErrorCode CONTENT_UNSUPPORTED = fromString("ContentUnsupported");
+
+ /**
+ * Creates or finds a JobErrorCode from its string representation.
+ * @param name a name to look for
+ * @return the corresponding JobErrorCode
+ */
+ @JsonCreator
+ public static JobErrorCode fromString(String name) {
+ return fromString(name, JobErrorCode.class);
+ }
+
+ /**
+ * @return known JobErrorCode values
+ */
+ public static Collection values() {
+ return values(JobErrorCode.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorDetail.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorDetail.java
new file mode 100644
index 000000000000..13750e5b9808
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobErrorDetail.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Details of JobOutput errors.
+ */
+public class JobErrorDetail {
+ /**
+ * Code describing the error detail.
+ */
+ @JsonProperty(value = "code", access = JsonProperty.Access.WRITE_ONLY)
+ private String code;
+
+ /**
+ * A human-readable representation of the error.
+ */
+ @JsonProperty(value = "message", access = JsonProperty.Access.WRITE_ONLY)
+ private String message;
+
+ /**
+ * Get code describing the error detail.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Get a human-readable representation of the error.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInput.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInput.java
new file mode 100644
index 000000000000..d40acd6b70fb
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInput.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base class for inputs to a Job.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("JobInput")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.JobInputClip", value = JobInputClip.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.JobInputs", value = JobInputs.class)
+})
+public class JobInput {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputAsset.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputAsset.java
new file mode 100644
index 000000000000..27a3c3fe7c6c
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputAsset.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Represents an Asset for input into a Job.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.JobInputAsset")
+public class JobInputAsset extends JobInputClip {
+ /**
+ * The name of the input Asset.
+ */
+ @JsonProperty(value = "assetName", required = true)
+ private String assetName;
+
+ /**
+ * Get the name of the input Asset.
+ *
+ * @return the assetName value
+ */
+ public String assetName() {
+ return this.assetName;
+ }
+
+ /**
+ * Set the name of the input Asset.
+ *
+ * @param assetName the assetName value to set
+ * @return the JobInputAsset object itself.
+ */
+ public JobInputAsset withAssetName(String assetName) {
+ this.assetName = assetName;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputClip.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputClip.java
new file mode 100644
index 000000000000..d6cd5a5cc81d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputClip.java
@@ -0,0 +1,139 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Represents input files for a Job.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.JobInputClip")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.JobInputAsset", value = JobInputAsset.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.JobInputHttp", value = JobInputHttp.class)
+})
+public class JobInputClip extends JobInput {
+ /**
+ * List of files. Required for JobInputHttp. Maximum of 4000 characters
+ * each.
+ */
+ @JsonProperty(value = "files")
+ private List files;
+
+ /**
+ * Defines a point on the timeline of the input media at which processing
+ * will start. Defaults to the beginning of the input media.
+ */
+ @JsonProperty(value = "start")
+ private ClipTime start;
+
+ /**
+ * Defines a point on the timeline of the input media at which processing
+ * will end. Defaults to the end of the input media.
+ */
+ @JsonProperty(value = "end")
+ private ClipTime end;
+
+ /**
+ * A label that is assigned to a JobInputClip, that is used to satisfy a
+ * reference used in the Transform. For example, a Transform can be
+ * authored so as to take an image file with the label 'xyz' and apply it
+ * as an overlay onto the input video before it is encoded. When submitting
+ * a Job, exactly one of the JobInputs should be the image file, and it
+ * should have the label 'xyz'.
+ */
+ @JsonProperty(value = "label")
+ private String label;
+
+ /**
+ * Get list of files. Required for JobInputHttp. Maximum of 4000 characters each.
+ *
+ * @return the files value
+ */
+ public List files() {
+ return this.files;
+ }
+
+ /**
+ * Set list of files. Required for JobInputHttp. Maximum of 4000 characters each.
+ *
+ * @param files the files value to set
+ * @return the JobInputClip object itself.
+ */
+ public JobInputClip withFiles(List files) {
+ this.files = files;
+ return this;
+ }
+
+ /**
+ * Get defines a point on the timeline of the input media at which processing will start. Defaults to the beginning of the input media.
+ *
+ * @return the start value
+ */
+ public ClipTime start() {
+ return this.start;
+ }
+
+ /**
+ * Set defines a point on the timeline of the input media at which processing will start. Defaults to the beginning of the input media.
+ *
+ * @param start the start value to set
+ * @return the JobInputClip object itself.
+ */
+ public JobInputClip withStart(ClipTime start) {
+ this.start = start;
+ return this;
+ }
+
+ /**
+ * Get defines a point on the timeline of the input media at which processing will end. Defaults to the end of the input media.
+ *
+ * @return the end value
+ */
+ public ClipTime end() {
+ return this.end;
+ }
+
+ /**
+ * Set defines a point on the timeline of the input media at which processing will end. Defaults to the end of the input media.
+ *
+ * @param end the end value to set
+ * @return the JobInputClip object itself.
+ */
+ public JobInputClip withEnd(ClipTime end) {
+ this.end = end;
+ return this;
+ }
+
+ /**
+ * Get a label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'.
+ *
+ * @return the label value
+ */
+ public String label() {
+ return this.label;
+ }
+
+ /**
+ * Set a label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'.
+ *
+ * @param label the label value to set
+ * @return the JobInputClip object itself.
+ */
+ public JobInputClip withLabel(String label) {
+ this.label = label;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputHttp.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputHttp.java
new file mode 100644
index 000000000000..05d72c942014
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputHttp.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Represents HTTPS job input.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.JobInputHttp")
+public class JobInputHttp extends JobInputClip {
+ /**
+ * Base URI for HTTPS job input. It will be concatenated with provided file
+ * names. If no base uri is given, then the provided file list is assumed
+ * to be fully qualified uris. Maximum length of 4000 characters.
+ */
+ @JsonProperty(value = "baseUri")
+ private String baseUri;
+
+ /**
+ * Get base URI for HTTPS job input. It will be concatenated with provided file names. If no base uri is given, then the provided file list is assumed to be fully qualified uris. Maximum length of 4000 characters.
+ *
+ * @return the baseUri value
+ */
+ public String baseUri() {
+ return this.baseUri;
+ }
+
+ /**
+ * Set base URI for HTTPS job input. It will be concatenated with provided file names. If no base uri is given, then the provided file list is assumed to be fully qualified uris. Maximum length of 4000 characters.
+ *
+ * @param baseUri the baseUri value to set
+ * @return the JobInputHttp object itself.
+ */
+ public JobInputHttp withBaseUri(String baseUri) {
+ this.baseUri = baseUri;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputs.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputs.java
new file mode 100644
index 000000000000..a29e133c2def
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobInputs.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes a list of inputs to a Job.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.JobInputs")
+public class JobInputs extends JobInput {
+ /**
+ * List of inputs to a Job.
+ */
+ @JsonProperty(value = "inputs")
+ private List inputs;
+
+ /**
+ * Get list of inputs to a Job.
+ *
+ * @return the inputs value
+ */
+ public List inputs() {
+ return this.inputs;
+ }
+
+ /**
+ * Set list of inputs to a Job.
+ *
+ * @param inputs the inputs value to set
+ * @return the JobInputs object itself.
+ */
+ public JobInputs withInputs(List inputs) {
+ this.inputs = inputs;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobOutput.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobOutput.java
new file mode 100644
index 000000000000..e1b79246d798
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobOutput.java
@@ -0,0 +1,114 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Describes all the properties of a JobOutput.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("JobOutput")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.JobOutputAsset", value = JobOutputAsset.class)
+})
+public class JobOutput {
+ /**
+ * If the JobOutput is in the Error state, it contains the details of the
+ * error.
+ */
+ @JsonProperty(value = "error", access = JsonProperty.Access.WRITE_ONLY)
+ private JobError error;
+
+ /**
+ * Describes the state of the JobOutput. Possible values include:
+ * 'Canceled', 'Canceling', 'Error', 'Finished', 'Processing', 'Queued',
+ * 'Scheduled'.
+ */
+ @JsonProperty(value = "state", access = JsonProperty.Access.WRITE_ONLY)
+ private JobState state;
+
+ /**
+ * If the JobOutput is in a Processing state, this contains the Job
+ * completion percentage. The value is an estimate and not intended to be
+ * used to predict Job completion times. To determine if the JobOutput is
+ * complete, use the State property.
+ */
+ @JsonProperty(value = "progress", access = JsonProperty.Access.WRITE_ONLY)
+ private int progress;
+
+ /**
+ * A label that is assigned to a JobOutput in order to help uniquely
+ * identify it. This is useful when your Transform has more than one
+ * TransformOutput, whereby your Job has more than one JobOutput. In such
+ * cases, when you submit the Job, you will add two or more JobOutputs, in
+ * the same order as TransformOutputs in the Transform. Subsequently, when
+ * you retrieve the Job, either through events or on a GET request, you can
+ * use the label to easily identify the JobOutput. If a label is not
+ * provided, a default value of '{presetName}_{outputIndex}' will be used,
+ * where the preset name is the name of the preset in the corresponding
+ * TransformOutput and the output index is the relative index of the this
+ * JobOutput within the Job. Note that this index is the same as the
+ * relative index of the corresponding TransformOutput within its
+ * Transform.
+ */
+ @JsonProperty(value = "label")
+ private String label;
+
+ /**
+ * Get if the JobOutput is in the Error state, it contains the details of the error.
+ *
+ * @return the error value
+ */
+ public JobError error() {
+ return this.error;
+ }
+
+ /**
+ * Get describes the state of the JobOutput. Possible values include: 'Canceled', 'Canceling', 'Error', 'Finished', 'Processing', 'Queued', 'Scheduled'.
+ *
+ * @return the state value
+ */
+ public JobState state() {
+ return this.state;
+ }
+
+ /**
+ * Get if the JobOutput is in a Processing state, this contains the Job completion percentage. The value is an estimate and not intended to be used to predict Job completion times. To determine if the JobOutput is complete, use the State property.
+ *
+ * @return the progress value
+ */
+ public int progress() {
+ return this.progress;
+ }
+
+ /**
+ * Get a label that is assigned to a JobOutput in order to help uniquely identify it. This is useful when your Transform has more than one TransformOutput, whereby your Job has more than one JobOutput. In such cases, when you submit the Job, you will add two or more JobOutputs, in the same order as TransformOutputs in the Transform. Subsequently, when you retrieve the Job, either through events or on a GET request, you can use the label to easily identify the JobOutput. If a label is not provided, a default value of '{presetName}_{outputIndex}' will be used, where the preset name is the name of the preset in the corresponding TransformOutput and the output index is the relative index of the this JobOutput within the Job. Note that this index is the same as the relative index of the corresponding TransformOutput within its Transform.
+ *
+ * @return the label value
+ */
+ public String label() {
+ return this.label;
+ }
+
+ /**
+ * Set a label that is assigned to a JobOutput in order to help uniquely identify it. This is useful when your Transform has more than one TransformOutput, whereby your Job has more than one JobOutput. In such cases, when you submit the Job, you will add two or more JobOutputs, in the same order as TransformOutputs in the Transform. Subsequently, when you retrieve the Job, either through events or on a GET request, you can use the label to easily identify the JobOutput. If a label is not provided, a default value of '{presetName}_{outputIndex}' will be used, where the preset name is the name of the preset in the corresponding TransformOutput and the output index is the relative index of the this JobOutput within the Job. Note that this index is the same as the relative index of the corresponding TransformOutput within its Transform.
+ *
+ * @param label the label value to set
+ * @return the JobOutput object itself.
+ */
+ public JobOutput withLabel(String label) {
+ this.label = label;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobOutputAsset.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobOutputAsset.java
new file mode 100644
index 000000000000..b807f348a56c
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobOutputAsset.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Represents an Asset used as a JobOutput.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.JobOutputAsset")
+public class JobOutputAsset extends JobOutput {
+ /**
+ * The name of the output Asset.
+ */
+ @JsonProperty(value = "assetName", required = true)
+ private String assetName;
+
+ /**
+ * Get the name of the output Asset.
+ *
+ * @return the assetName value
+ */
+ public String assetName() {
+ return this.assetName;
+ }
+
+ /**
+ * Set the name of the output Asset.
+ *
+ * @param assetName the assetName value to set
+ * @return the JobOutputAsset object itself.
+ */
+ public JobOutputAsset withAssetName(String assetName) {
+ this.assetName = assetName;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobRetry.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobRetry.java
new file mode 100644
index 000000000000..b6d1a8c0c6e6
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobRetry.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for JobRetry.
+ */
+public final class JobRetry extends ExpandableStringEnum {
+ /** Static value DoNotRetry for JobRetry. */
+ public static final JobRetry DO_NOT_RETRY = fromString("DoNotRetry");
+
+ /** Static value MayRetry for JobRetry. */
+ public static final JobRetry MAY_RETRY = fromString("MayRetry");
+
+ /**
+ * Creates or finds a JobRetry from its string representation.
+ * @param name a name to look for
+ * @return the corresponding JobRetry
+ */
+ @JsonCreator
+ public static JobRetry fromString(String name) {
+ return fromString(name, JobRetry.class);
+ }
+
+ /**
+ * @return known JobRetry values
+ */
+ public static Collection values() {
+ return values(JobRetry.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobState.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobState.java
new file mode 100644
index 000000000000..89d8ad7a6bc1
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JobState.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for JobState.
+ */
+public final class JobState extends ExpandableStringEnum {
+ /** Static value Canceled for JobState. */
+ public static final JobState CANCELED = fromString("Canceled");
+
+ /** Static value Canceling for JobState. */
+ public static final JobState CANCELING = fromString("Canceling");
+
+ /** Static value Error for JobState. */
+ public static final JobState ERROR = fromString("Error");
+
+ /** Static value Finished for JobState. */
+ public static final JobState FINISHED = fromString("Finished");
+
+ /** Static value Processing for JobState. */
+ public static final JobState PROCESSING = fromString("Processing");
+
+ /** Static value Queued for JobState. */
+ public static final JobState QUEUED = fromString("Queued");
+
+ /** Static value Scheduled for JobState. */
+ public static final JobState SCHEDULED = fromString("Scheduled");
+
+ /**
+ * Creates or finds a JobState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding JobState
+ */
+ @JsonCreator
+ public static JobState fromString(String name) {
+ return fromString(name, JobState.class);
+ }
+
+ /**
+ * @return known JobState values
+ */
+ public static Collection values() {
+ return values(JobState.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Jobs.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Jobs.java
new file mode 100644
index 000000000000..20a32336d32d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Jobs.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.JobsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Jobs.
+ */
+public interface Jobs extends SupportsCreating, HasInner {
+ /**
+ * Cancel Job.
+ * Cancel a Job.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param transformName The Transform name.
+ * @param jobName The Job name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable cancelJobAsync(String resourceGroupName, String accountName, String transformName, String jobName);
+
+ /**
+ * Get Job.
+ * Gets a Job.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param transformName The Transform name.
+ * @param jobName The Job name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String accountName, String transformName, String jobName);
+
+ /**
+ * List Jobs.
+ * Lists all of the Jobs for the Transform.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param transformName The Transform name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String accountName, final String transformName);
+
+ /**
+ * Delete Job.
+ * Deletes a Job.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param transformName The Transform name.
+ * @param jobName The Job name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String accountName, String transformName, String jobName);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgFormat.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgFormat.java
new file mode 100644
index 000000000000..15c62411d759
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgFormat.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes the settings for producing JPEG thumbnails.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.JpgFormat")
+public class JpgFormat extends ImageFormat {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgImage.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgImage.java
new file mode 100644
index 000000000000..444e19be9bb6
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgImage.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes the properties for producing a series of JPEG images from the
+ * input video.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.JpgImage")
+public class JpgImage extends Image {
+ /**
+ * A collection of output JPEG image layers to be produced by the encoder.
+ */
+ @JsonProperty(value = "layers")
+ private List layers;
+
+ /**
+ * Get a collection of output JPEG image layers to be produced by the encoder.
+ *
+ * @return the layers value
+ */
+ public List layers() {
+ return this.layers;
+ }
+
+ /**
+ * Set a collection of output JPEG image layers to be produced by the encoder.
+ *
+ * @param layers the layers value to set
+ * @return the JpgImage object itself.
+ */
+ public JpgImage withLayers(List layers) {
+ this.layers = layers;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgLayer.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgLayer.java
new file mode 100644
index 000000000000..2d551966fddc
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/JpgLayer.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes the settings to produce a JPEG image from the input video.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.JpgLayer")
+public class JpgLayer extends Layer {
+ /**
+ * The compression quality of the JPEG output. Range is from 0-100 and the
+ * default is 70.
+ */
+ @JsonProperty(value = "quality")
+ private Integer quality;
+
+ /**
+ * Get the compression quality of the JPEG output. Range is from 0-100 and the default is 70.
+ *
+ * @return the quality value
+ */
+ public Integer quality() {
+ return this.quality;
+ }
+
+ /**
+ * Set the compression quality of the JPEG output. Range is from 0-100 and the default is 70.
+ *
+ * @param quality the quality value to set
+ * @return the JpgLayer object itself.
+ */
+ public JpgLayer withQuality(Integer quality) {
+ this.quality = quality;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Layer.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Layer.java
new file mode 100644
index 000000000000..80eb18cb3893
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Layer.java
@@ -0,0 +1,112 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * The encoder can be configured to produce video and/or images (thumbnails) at
+ * different resolutions, by specifying a layer for each desired resolution. A
+ * layer represents the properties for the video or image at a resolution.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("Layer")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.VideoLayer", value = VideoLayer.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.JpgLayer", value = JpgLayer.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.PngLayer", value = PngLayer.class)
+})
+public class Layer {
+ /**
+ * The width of the output video for this layer. The value can be absolute
+ * (in pixels) or relative (in percentage). For example 50% means the
+ * output video has half as many pixels in width as the input.
+ */
+ @JsonProperty(value = "width")
+ private String width;
+
+ /**
+ * The height of the output video for this layer. The value can be absolute
+ * (in pixels) or relative (in percentage). For example 50% means the
+ * output video has half as many pixels in height as the input.
+ */
+ @JsonProperty(value = "height")
+ private String height;
+
+ /**
+ * The alphanumeric label for this layer, which can be used in multiplexing
+ * different video and audio layers, or in naming the output file.
+ */
+ @JsonProperty(value = "label")
+ private String label;
+
+ /**
+ * Get the width of the output video for this layer. The value can be absolute (in pixels) or relative (in percentage). For example 50% means the output video has half as many pixels in width as the input.
+ *
+ * @return the width value
+ */
+ public String width() {
+ return this.width;
+ }
+
+ /**
+ * Set the width of the output video for this layer. The value can be absolute (in pixels) or relative (in percentage). For example 50% means the output video has half as many pixels in width as the input.
+ *
+ * @param width the width value to set
+ * @return the Layer object itself.
+ */
+ public Layer withWidth(String width) {
+ this.width = width;
+ return this;
+ }
+
+ /**
+ * Get the height of the output video for this layer. The value can be absolute (in pixels) or relative (in percentage). For example 50% means the output video has half as many pixels in height as the input.
+ *
+ * @return the height value
+ */
+ public String height() {
+ return this.height;
+ }
+
+ /**
+ * Set the height of the output video for this layer. The value can be absolute (in pixels) or relative (in percentage). For example 50% means the output video has half as many pixels in height as the input.
+ *
+ * @param height the height value to set
+ * @return the Layer object itself.
+ */
+ public Layer withHeight(String height) {
+ this.height = height;
+ return this;
+ }
+
+ /**
+ * Get the alphanumeric label for this layer, which can be used in multiplexing different video and audio layers, or in naming the output file.
+ *
+ * @return the label value
+ */
+ public String label() {
+ return this.label;
+ }
+
+ /**
+ * Set the alphanumeric label for this layer, which can be used in multiplexing different video and audio layers, or in naming the output file.
+ *
+ * @param label the label value to set
+ * @return the Layer object itself.
+ */
+ public Layer withLabel(String label) {
+ this.label = label;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListContainerSasInput.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListContainerSasInput.java
new file mode 100644
index 000000000000..731280906aca
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListContainerSasInput.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The parameters to the list SAS request.
+ */
+public class ListContainerSasInput {
+ /**
+ * The permissions to set on the SAS URL. Possible values include: 'Read',
+ * 'ReadWrite', 'ReadWriteDelete'.
+ */
+ @JsonProperty(value = "permissions")
+ private AssetContainerPermission permissions;
+
+ /**
+ * The SAS URL expiration time. This must be less than 24 hours from the
+ * current time.
+ */
+ @JsonProperty(value = "expiryTime")
+ private DateTime expiryTime;
+
+ /**
+ * Get the permissions to set on the SAS URL. Possible values include: 'Read', 'ReadWrite', 'ReadWriteDelete'.
+ *
+ * @return the permissions value
+ */
+ public AssetContainerPermission permissions() {
+ return this.permissions;
+ }
+
+ /**
+ * Set the permissions to set on the SAS URL. Possible values include: 'Read', 'ReadWrite', 'ReadWriteDelete'.
+ *
+ * @param permissions the permissions value to set
+ * @return the ListContainerSasInput object itself.
+ */
+ public ListContainerSasInput withPermissions(AssetContainerPermission permissions) {
+ this.permissions = permissions;
+ return this;
+ }
+
+ /**
+ * Get the SAS URL expiration time. This must be less than 24 hours from the current time.
+ *
+ * @return the expiryTime value
+ */
+ public DateTime expiryTime() {
+ return this.expiryTime;
+ }
+
+ /**
+ * Set the SAS URL expiration time. This must be less than 24 hours from the current time.
+ *
+ * @param expiryTime the expiryTime value to set
+ * @return the ListContainerSasInput object itself.
+ */
+ public ListContainerSasInput withExpiryTime(DateTime expiryTime) {
+ this.expiryTime = expiryTime;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListContentKeysResponse.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListContentKeysResponse.java
new file mode 100644
index 000000000000..1074a88ac68c
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListContentKeysResponse.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.ListContentKeysResponseInner;
+import java.util.List;
+
+/**
+ * Type representing ListContentKeysResponse.
+ */
+public interface ListContentKeysResponse extends HasInner, HasManager {
+ /**
+ * @return the contentKeys value.
+ */
+ List contentKeys();
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListPathsResponse.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListPathsResponse.java
new file mode 100644
index 000000000000..485976ccbd71
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListPathsResponse.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.ListPathsResponseInner;
+import java.util.List;
+
+/**
+ * Type representing ListPathsResponse.
+ */
+public interface ListPathsResponse extends HasInner, HasManager {
+ /**
+ * @return the downloadPaths value.
+ */
+ List downloadPaths();
+
+ /**
+ * @return the streamingPaths value.
+ */
+ List streamingPaths();
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListStreamingLocatorsResponse.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListStreamingLocatorsResponse.java
new file mode 100644
index 000000000000..5647162fbe63
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ListStreamingLocatorsResponse.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.ListStreamingLocatorsResponseInner;
+import java.util.List;
+
+/**
+ * Type representing ListStreamingLocatorsResponse.
+ */
+public interface ListStreamingLocatorsResponse extends HasInner, HasManager {
+ /**
+ * @return the streamingLocators value.
+ */
+ List streamingLocators();
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEvent.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEvent.java
new file mode 100644
index 000000000000..0d187787edec
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEvent.java
@@ -0,0 +1,401 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.LiveEventInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import java.util.Map;
+import java.util.List;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing LiveEvent.
+ */
+public interface LiveEvent extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the created value.
+ */
+ DateTime created();
+
+ /**
+ * @return the crossSiteAccessPolicies value.
+ */
+ CrossSiteAccessPolicies crossSiteAccessPolicies();
+
+ /**
+ * @return the description value.
+ */
+ String description();
+
+ /**
+ * @return the encoding value.
+ */
+ LiveEventEncoding encoding();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the input value.
+ */
+ LiveEventInput input();
+
+ /**
+ * @return the lastModified value.
+ */
+ DateTime lastModified();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the preview value.
+ */
+ LiveEventPreview preview();
+
+ /**
+ * @return the provisioningState value.
+ */
+ String provisioningState();
+
+ /**
+ * @return the resourceState value.
+ */
+ LiveEventResourceState resourceState();
+
+ /**
+ * @return the streamOptions value.
+ */
+ List streamOptions();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the transcriptions value.
+ */
+ List transcriptions();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * @return the vanityUrl value.
+ */
+ Boolean vanityUrl();
+
+ /**
+ * The entirety of the LiveEvent definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithMediaservice, DefinitionStages.WithAutoStart, DefinitionStages.WithInput, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of LiveEvent definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a LiveEvent definition.
+ */
+ interface Blank extends WithMediaservice {
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify Mediaservice.
+ */
+ interface WithMediaservice {
+ /**
+ * Specifies resourceGroupName, accountName.
+ * @param resourceGroupName The name of the resource group within the Azure subscription
+ * @param accountName The Media Services account name
+ * @return the next definition stage
+ */
+ WithAutoStart withExistingMediaservice(String resourceGroupName, String accountName);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify AutoStart.
+ */
+ interface WithAutoStart {
+ /**
+ * Specifies autoStart.
+ * @param autoStart The flag indicates if the resource should be automatically started on creation
+ * @return the next definition stage
+ */
+ WithInput withAutoStart(Boolean autoStart);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify Input.
+ */
+ interface WithInput {
+ /**
+ * Specifies input.
+ * @param input The Live Event input
+ * @return the next definition stage
+ */
+ WithCreate withInput(LiveEventInput input);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify CrossSiteAccessPolicies.
+ */
+ interface WithCrossSiteAccessPolicies {
+ /**
+ * Specifies crossSiteAccessPolicies.
+ * @param crossSiteAccessPolicies The Live Event access policies
+ * @return the next definition stage
+ */
+ WithCreate withCrossSiteAccessPolicies(CrossSiteAccessPolicies crossSiteAccessPolicies);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description The Live Event description
+ * @return the next definition stage
+ */
+ WithCreate withDescription(String description);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify Encoding.
+ */
+ interface WithEncoding {
+ /**
+ * Specifies encoding.
+ * @param encoding The Live Event encoding
+ * @return the next definition stage
+ */
+ WithCreate withEncoding(LiveEventEncoding encoding);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The Azure Region of the resource
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify Preview.
+ */
+ interface WithPreview {
+ /**
+ * Specifies preview.
+ * @param preview The Live Event preview
+ * @return the next definition stage
+ */
+ WithCreate withPreview(LiveEventPreview preview);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify StreamOptions.
+ */
+ interface WithStreamOptions {
+ /**
+ * Specifies streamOptions.
+ * @param streamOptions The options to use for the LiveEvent. This value is specified at creation time and cannot be updated
+ * @return the next definition stage
+ */
+ WithCreate withStreamOptions(List streamOptions);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify Transcriptions.
+ */
+ interface WithTranscriptions {
+ /**
+ * Specifies transcriptions.
+ * @param transcriptions The Live Event transcription
+ * @return the next definition stage
+ */
+ WithCreate withTranscriptions(List transcriptions);
+ }
+
+ /**
+ * The stage of the liveevent definition allowing to specify VanityUrl.
+ */
+ interface WithVanityUrl {
+ /**
+ * Specifies vanityUrl.
+ * @param vanityUrl Specifies whether to use a vanity url with the Live Event. This value is specified at creation time and cannot be updated
+ * @return the next definition stage
+ */
+ WithCreate withVanityUrl(Boolean vanityUrl);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithCrossSiteAccessPolicies, DefinitionStages.WithDescription, DefinitionStages.WithEncoding, DefinitionStages.WithLocation, DefinitionStages.WithPreview, DefinitionStages.WithStreamOptions, DefinitionStages.WithTags, DefinitionStages.WithTranscriptions, DefinitionStages.WithVanityUrl {
+ }
+ }
+ /**
+ * The template for a LiveEvent update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithCrossSiteAccessPolicies, UpdateStages.WithDescription, UpdateStages.WithEncoding, UpdateStages.WithLocation, UpdateStages.WithPreview, UpdateStages.WithStreamOptions, UpdateStages.WithTags, UpdateStages.WithTranscriptions, UpdateStages.WithVanityUrl {
+ }
+
+ /**
+ * Grouping of LiveEvent update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the liveevent update allowing to specify CrossSiteAccessPolicies.
+ */
+ interface WithCrossSiteAccessPolicies {
+ /**
+ * Specifies crossSiteAccessPolicies.
+ * @param crossSiteAccessPolicies The Live Event access policies
+ * @return the next update stage
+ */
+ Update withCrossSiteAccessPolicies(CrossSiteAccessPolicies crossSiteAccessPolicies);
+ }
+
+ /**
+ * The stage of the liveevent update allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description The Live Event description
+ * @return the next update stage
+ */
+ Update withDescription(String description);
+ }
+
+ /**
+ * The stage of the liveevent update allowing to specify Encoding.
+ */
+ interface WithEncoding {
+ /**
+ * Specifies encoding.
+ * @param encoding The Live Event encoding
+ * @return the next update stage
+ */
+ Update withEncoding(LiveEventEncoding encoding);
+ }
+
+ /**
+ * The stage of the liveevent update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The Azure Region of the resource
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the liveevent update allowing to specify Preview.
+ */
+ interface WithPreview {
+ /**
+ * Specifies preview.
+ * @param preview The Live Event preview
+ * @return the next update stage
+ */
+ Update withPreview(LiveEventPreview preview);
+ }
+
+ /**
+ * The stage of the liveevent update allowing to specify StreamOptions.
+ */
+ interface WithStreamOptions {
+ /**
+ * Specifies streamOptions.
+ * @param streamOptions The options to use for the LiveEvent. This value is specified at creation time and cannot be updated
+ * @return the next update stage
+ */
+ Update withStreamOptions(List streamOptions);
+ }
+
+ /**
+ * The stage of the liveevent update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ /**
+ * The stage of the liveevent update allowing to specify Transcriptions.
+ */
+ interface WithTranscriptions {
+ /**
+ * Specifies transcriptions.
+ * @param transcriptions The Live Event transcription
+ * @return the next update stage
+ */
+ Update withTranscriptions(List transcriptions);
+ }
+
+ /**
+ * The stage of the liveevent update allowing to specify VanityUrl.
+ */
+ interface WithVanityUrl {
+ /**
+ * Specifies vanityUrl.
+ * @param vanityUrl Specifies whether to use a vanity url with the Live Event. This value is specified at creation time and cannot be updated
+ * @return the next update stage
+ */
+ Update withVanityUrl(Boolean vanityUrl);
+ }
+
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventActionInput.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventActionInput.java
new file mode 100644
index 000000000000..8a88a292f66f
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventActionInput.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The LiveEvent action input parameter definition.
+ */
+public class LiveEventActionInput {
+ /**
+ * The flag indicates if remove LiveOutputs on Stop.
+ */
+ @JsonProperty(value = "removeOutputsOnStop")
+ private Boolean removeOutputsOnStop;
+
+ /**
+ * Get the flag indicates if remove LiveOutputs on Stop.
+ *
+ * @return the removeOutputsOnStop value
+ */
+ public Boolean removeOutputsOnStop() {
+ return this.removeOutputsOnStop;
+ }
+
+ /**
+ * Set the flag indicates if remove LiveOutputs on Stop.
+ *
+ * @param removeOutputsOnStop the removeOutputsOnStop value to set
+ * @return the LiveEventActionInput object itself.
+ */
+ public LiveEventActionInput withRemoveOutputsOnStop(Boolean removeOutputsOnStop) {
+ this.removeOutputsOnStop = removeOutputsOnStop;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEncoding.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEncoding.java
new file mode 100644
index 000000000000..1f7d6f1ece0a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEncoding.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Live Event encoding.
+ */
+public class LiveEventEncoding {
+ /**
+ * The encoding type for Live Event. This value is specified at creation
+ * time and cannot be updated. Possible values include: 'None', 'Basic',
+ * 'Standard', 'Premium1080p'.
+ */
+ @JsonProperty(value = "encodingType")
+ private LiveEventEncodingType encodingType;
+
+ /**
+ * The encoding preset name. This value is specified at creation time and
+ * cannot be updated.
+ */
+ @JsonProperty(value = "presetName")
+ private String presetName;
+
+ /**
+ * Get the encoding type for Live Event. This value is specified at creation time and cannot be updated. Possible values include: 'None', 'Basic', 'Standard', 'Premium1080p'.
+ *
+ * @return the encodingType value
+ */
+ public LiveEventEncodingType encodingType() {
+ return this.encodingType;
+ }
+
+ /**
+ * Set the encoding type for Live Event. This value is specified at creation time and cannot be updated. Possible values include: 'None', 'Basic', 'Standard', 'Premium1080p'.
+ *
+ * @param encodingType the encodingType value to set
+ * @return the LiveEventEncoding object itself.
+ */
+ public LiveEventEncoding withEncodingType(LiveEventEncodingType encodingType) {
+ this.encodingType = encodingType;
+ return this;
+ }
+
+ /**
+ * Get the encoding preset name. This value is specified at creation time and cannot be updated.
+ *
+ * @return the presetName value
+ */
+ public String presetName() {
+ return this.presetName;
+ }
+
+ /**
+ * Set the encoding preset name. This value is specified at creation time and cannot be updated.
+ *
+ * @param presetName the presetName value to set
+ * @return the LiveEventEncoding object itself.
+ */
+ public LiveEventEncoding withPresetName(String presetName) {
+ this.presetName = presetName;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEncodingType.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEncodingType.java
new file mode 100644
index 000000000000..7994d7e53892
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEncodingType.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for LiveEventEncodingType.
+ */
+public final class LiveEventEncodingType extends ExpandableStringEnum {
+ /** Static value None for LiveEventEncodingType. */
+ public static final LiveEventEncodingType NONE = fromString("None");
+
+ /** Static value Basic for LiveEventEncodingType. */
+ public static final LiveEventEncodingType BASIC = fromString("Basic");
+
+ /** Static value Standard for LiveEventEncodingType. */
+ public static final LiveEventEncodingType STANDARD = fromString("Standard");
+
+ /** Static value Premium1080p for LiveEventEncodingType. */
+ public static final LiveEventEncodingType PREMIUM1080P = fromString("Premium1080p");
+
+ /**
+ * Creates or finds a LiveEventEncodingType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding LiveEventEncodingType
+ */
+ @JsonCreator
+ public static LiveEventEncodingType fromString(String name) {
+ return fromString(name, LiveEventEncodingType.class);
+ }
+
+ /**
+ * @return known LiveEventEncodingType values
+ */
+ public static Collection values() {
+ return values(LiveEventEncodingType.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEndpoint.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEndpoint.java
new file mode 100644
index 000000000000..22250abce000
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventEndpoint.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Live Event endpoint.
+ */
+public class LiveEventEndpoint {
+ /**
+ * The endpoint protocol.
+ */
+ @JsonProperty(value = "protocol")
+ private String protocol;
+
+ /**
+ * The endpoint URL.
+ */
+ @JsonProperty(value = "url")
+ private String url;
+
+ /**
+ * Get the endpoint protocol.
+ *
+ * @return the protocol value
+ */
+ public String protocol() {
+ return this.protocol;
+ }
+
+ /**
+ * Set the endpoint protocol.
+ *
+ * @param protocol the protocol value to set
+ * @return the LiveEventEndpoint object itself.
+ */
+ public LiveEventEndpoint withProtocol(String protocol) {
+ this.protocol = protocol;
+ return this;
+ }
+
+ /**
+ * Get the endpoint URL.
+ *
+ * @return the url value
+ */
+ public String url() {
+ return this.url;
+ }
+
+ /**
+ * Set the endpoint URL.
+ *
+ * @param url the url value to set
+ * @return the LiveEventEndpoint object itself.
+ */
+ public LiveEventEndpoint withUrl(String url) {
+ this.url = url;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInput.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInput.java
new file mode 100644
index 000000000000..c7f41a17170b
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInput.java
@@ -0,0 +1,152 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Live Event input.
+ */
+public class LiveEventInput {
+ /**
+ * The streaming protocol for the Live Event. This is specified at
+ * creation time and cannot be updated. Possible values include:
+ * 'FragmentedMP4', 'RTMP'.
+ */
+ @JsonProperty(value = "streamingProtocol", required = true)
+ private LiveEventInputProtocol streamingProtocol;
+
+ /**
+ * The access control for LiveEvent Input.
+ */
+ @JsonProperty(value = "accessControl")
+ private LiveEventInputAccessControl accessControl;
+
+ /**
+ * ISO 8601 timespan duration of the key frame interval duration.
+ */
+ @JsonProperty(value = "keyFrameIntervalDuration")
+ private String keyFrameIntervalDuration;
+
+ /**
+ * A unique identifier for a stream. This can be specified at creation
+ * time but cannot be updated. If omitted, the service will generate a
+ * unique value.
+ */
+ @JsonProperty(value = "accessToken")
+ private String accessToken;
+
+ /**
+ * The input endpoints for the Live Event.
+ */
+ @JsonProperty(value = "endpoints")
+ private List endpoints;
+
+ /**
+ * Get the streaming protocol for the Live Event. This is specified at creation time and cannot be updated. Possible values include: 'FragmentedMP4', 'RTMP'.
+ *
+ * @return the streamingProtocol value
+ */
+ public LiveEventInputProtocol streamingProtocol() {
+ return this.streamingProtocol;
+ }
+
+ /**
+ * Set the streaming protocol for the Live Event. This is specified at creation time and cannot be updated. Possible values include: 'FragmentedMP4', 'RTMP'.
+ *
+ * @param streamingProtocol the streamingProtocol value to set
+ * @return the LiveEventInput object itself.
+ */
+ public LiveEventInput withStreamingProtocol(LiveEventInputProtocol streamingProtocol) {
+ this.streamingProtocol = streamingProtocol;
+ return this;
+ }
+
+ /**
+ * Get the access control for LiveEvent Input.
+ *
+ * @return the accessControl value
+ */
+ public LiveEventInputAccessControl accessControl() {
+ return this.accessControl;
+ }
+
+ /**
+ * Set the access control for LiveEvent Input.
+ *
+ * @param accessControl the accessControl value to set
+ * @return the LiveEventInput object itself.
+ */
+ public LiveEventInput withAccessControl(LiveEventInputAccessControl accessControl) {
+ this.accessControl = accessControl;
+ return this;
+ }
+
+ /**
+ * Get iSO 8601 timespan duration of the key frame interval duration.
+ *
+ * @return the keyFrameIntervalDuration value
+ */
+ public String keyFrameIntervalDuration() {
+ return this.keyFrameIntervalDuration;
+ }
+
+ /**
+ * Set iSO 8601 timespan duration of the key frame interval duration.
+ *
+ * @param keyFrameIntervalDuration the keyFrameIntervalDuration value to set
+ * @return the LiveEventInput object itself.
+ */
+ public LiveEventInput withKeyFrameIntervalDuration(String keyFrameIntervalDuration) {
+ this.keyFrameIntervalDuration = keyFrameIntervalDuration;
+ return this;
+ }
+
+ /**
+ * Get a unique identifier for a stream. This can be specified at creation time but cannot be updated. If omitted, the service will generate a unique value.
+ *
+ * @return the accessToken value
+ */
+ public String accessToken() {
+ return this.accessToken;
+ }
+
+ /**
+ * Set a unique identifier for a stream. This can be specified at creation time but cannot be updated. If omitted, the service will generate a unique value.
+ *
+ * @param accessToken the accessToken value to set
+ * @return the LiveEventInput object itself.
+ */
+ public LiveEventInput withAccessToken(String accessToken) {
+ this.accessToken = accessToken;
+ return this;
+ }
+
+ /**
+ * Get the input endpoints for the Live Event.
+ *
+ * @return the endpoints value
+ */
+ public List endpoints() {
+ return this.endpoints;
+ }
+
+ /**
+ * Set the input endpoints for the Live Event.
+ *
+ * @param endpoints the endpoints value to set
+ * @return the LiveEventInput object itself.
+ */
+ public LiveEventInput withEndpoints(List endpoints) {
+ this.endpoints = endpoints;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputAccessControl.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputAccessControl.java
new file mode 100644
index 000000000000..0f9ca51f37c4
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputAccessControl.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The IP access control for Live Event Input.
+ */
+public class LiveEventInputAccessControl {
+ /**
+ * The IP access control properties.
+ */
+ @JsonProperty(value = "ip")
+ private IPAccessControl ip;
+
+ /**
+ * Get the IP access control properties.
+ *
+ * @return the ip value
+ */
+ public IPAccessControl ip() {
+ return this.ip;
+ }
+
+ /**
+ * Set the IP access control properties.
+ *
+ * @param ip the ip value to set
+ * @return the LiveEventInputAccessControl object itself.
+ */
+ public LiveEventInputAccessControl withIp(IPAccessControl ip) {
+ this.ip = ip;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputProtocol.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputProtocol.java
new file mode 100644
index 000000000000..c18e160075b6
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputProtocol.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for LiveEventInputProtocol.
+ */
+public final class LiveEventInputProtocol extends ExpandableStringEnum {
+ /** Static value FragmentedMP4 for LiveEventInputProtocol. */
+ public static final LiveEventInputProtocol FRAGMENTED_MP4 = fromString("FragmentedMP4");
+
+ /** Static value RTMP for LiveEventInputProtocol. */
+ public static final LiveEventInputProtocol RTMP = fromString("RTMP");
+
+ /**
+ * Creates or finds a LiveEventInputProtocol from its string representation.
+ * @param name a name to look for
+ * @return the corresponding LiveEventInputProtocol
+ */
+ @JsonCreator
+ public static LiveEventInputProtocol fromString(String name) {
+ return fromString(name, LiveEventInputProtocol.class);
+ }
+
+ /**
+ * @return known LiveEventInputProtocol values
+ */
+ public static Collection values() {
+ return values(LiveEventInputProtocol.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputTrackSelection.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputTrackSelection.java
new file mode 100644
index 000000000000..b4f843e63b2d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventInputTrackSelection.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A track selection condition.
+ */
+public class LiveEventInputTrackSelection {
+ /**
+ * Property name to select.
+ */
+ @JsonProperty(value = "property")
+ private String property;
+
+ /**
+ * Comparing operation.
+ */
+ @JsonProperty(value = "operation")
+ private String operation;
+
+ /**
+ * Property value to select.
+ */
+ @JsonProperty(value = "value")
+ private String value;
+
+ /**
+ * Get property name to select.
+ *
+ * @return the property value
+ */
+ public String property() {
+ return this.property;
+ }
+
+ /**
+ * Set property name to select.
+ *
+ * @param property the property value to set
+ * @return the LiveEventInputTrackSelection object itself.
+ */
+ public LiveEventInputTrackSelection withProperty(String property) {
+ this.property = property;
+ return this;
+ }
+
+ /**
+ * Get comparing operation.
+ *
+ * @return the operation value
+ */
+ public String operation() {
+ return this.operation;
+ }
+
+ /**
+ * Set comparing operation.
+ *
+ * @param operation the operation value to set
+ * @return the LiveEventInputTrackSelection object itself.
+ */
+ public LiveEventInputTrackSelection withOperation(String operation) {
+ this.operation = operation;
+ return this;
+ }
+
+ /**
+ * Get property value to select.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set property value to select.
+ *
+ * @param value the value value to set
+ * @return the LiveEventInputTrackSelection object itself.
+ */
+ public LiveEventInputTrackSelection withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventOutputTranscriptionTrack.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventOutputTranscriptionTrack.java
new file mode 100644
index 000000000000..d84aa0af0f6a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventOutputTranscriptionTrack.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes a transcription track in the output of a Live Event, generated
+ * using speech-to-text transcription.
+ */
+public class LiveEventOutputTranscriptionTrack {
+ /**
+ * The output track name.
+ */
+ @JsonProperty(value = "trackName", required = true)
+ private String trackName;
+
+ /**
+ * Get the output track name.
+ *
+ * @return the trackName value
+ */
+ public String trackName() {
+ return this.trackName;
+ }
+
+ /**
+ * Set the output track name.
+ *
+ * @param trackName the trackName value to set
+ * @return the LiveEventOutputTranscriptionTrack object itself.
+ */
+ public LiveEventOutputTranscriptionTrack withTrackName(String trackName) {
+ this.trackName = trackName;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventPreview.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventPreview.java
new file mode 100644
index 000000000000..5f07ef9e608f
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventPreview.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Live Event preview.
+ */
+public class LiveEventPreview {
+ /**
+ * The endpoints for preview.
+ */
+ @JsonProperty(value = "endpoints")
+ private List endpoints;
+
+ /**
+ * The access control for LiveEvent preview.
+ */
+ @JsonProperty(value = "accessControl")
+ private LiveEventPreviewAccessControl accessControl;
+
+ /**
+ * The identifier of the preview locator in Guid format. Specifying this
+ * at creation time allows the caller to know the preview locator url
+ * before the event is created. If omitted, the service will generate a
+ * random identifier. This value cannot be updated once the live event is
+ * created.
+ */
+ @JsonProperty(value = "previewLocator")
+ private String previewLocator;
+
+ /**
+ * The name of streaming policy used for the LiveEvent preview. This value
+ * is specified at creation time and cannot be updated.
+ */
+ @JsonProperty(value = "streamingPolicyName")
+ private String streamingPolicyName;
+
+ /**
+ * An Alternative Media Identifier associated with the StreamingLocator
+ * created for the preview. This value is specified at creation time and
+ * cannot be updated. The identifier can be used in the
+ * CustomLicenseAcquisitionUrlTemplate or the
+ * CustomKeyAcquisitionUrlTemplate of the StreamingPolicy specified in the
+ * StreamingPolicyName field.
+ */
+ @JsonProperty(value = "alternativeMediaId")
+ private String alternativeMediaId;
+
+ /**
+ * Get the endpoints for preview.
+ *
+ * @return the endpoints value
+ */
+ public List endpoints() {
+ return this.endpoints;
+ }
+
+ /**
+ * Set the endpoints for preview.
+ *
+ * @param endpoints the endpoints value to set
+ * @return the LiveEventPreview object itself.
+ */
+ public LiveEventPreview withEndpoints(List endpoints) {
+ this.endpoints = endpoints;
+ return this;
+ }
+
+ /**
+ * Get the access control for LiveEvent preview.
+ *
+ * @return the accessControl value
+ */
+ public LiveEventPreviewAccessControl accessControl() {
+ return this.accessControl;
+ }
+
+ /**
+ * Set the access control for LiveEvent preview.
+ *
+ * @param accessControl the accessControl value to set
+ * @return the LiveEventPreview object itself.
+ */
+ public LiveEventPreview withAccessControl(LiveEventPreviewAccessControl accessControl) {
+ this.accessControl = accessControl;
+ return this;
+ }
+
+ /**
+ * Get the identifier of the preview locator in Guid format. Specifying this at creation time allows the caller to know the preview locator url before the event is created. If omitted, the service will generate a random identifier. This value cannot be updated once the live event is created.
+ *
+ * @return the previewLocator value
+ */
+ public String previewLocator() {
+ return this.previewLocator;
+ }
+
+ /**
+ * Set the identifier of the preview locator in Guid format. Specifying this at creation time allows the caller to know the preview locator url before the event is created. If omitted, the service will generate a random identifier. This value cannot be updated once the live event is created.
+ *
+ * @param previewLocator the previewLocator value to set
+ * @return the LiveEventPreview object itself.
+ */
+ public LiveEventPreview withPreviewLocator(String previewLocator) {
+ this.previewLocator = previewLocator;
+ return this;
+ }
+
+ /**
+ * Get the name of streaming policy used for the LiveEvent preview. This value is specified at creation time and cannot be updated.
+ *
+ * @return the streamingPolicyName value
+ */
+ public String streamingPolicyName() {
+ return this.streamingPolicyName;
+ }
+
+ /**
+ * Set the name of streaming policy used for the LiveEvent preview. This value is specified at creation time and cannot be updated.
+ *
+ * @param streamingPolicyName the streamingPolicyName value to set
+ * @return the LiveEventPreview object itself.
+ */
+ public LiveEventPreview withStreamingPolicyName(String streamingPolicyName) {
+ this.streamingPolicyName = streamingPolicyName;
+ return this;
+ }
+
+ /**
+ * Get an Alternative Media Identifier associated with the StreamingLocator created for the preview. This value is specified at creation time and cannot be updated. The identifier can be used in the CustomLicenseAcquisitionUrlTemplate or the CustomKeyAcquisitionUrlTemplate of the StreamingPolicy specified in the StreamingPolicyName field.
+ *
+ * @return the alternativeMediaId value
+ */
+ public String alternativeMediaId() {
+ return this.alternativeMediaId;
+ }
+
+ /**
+ * Set an Alternative Media Identifier associated with the StreamingLocator created for the preview. This value is specified at creation time and cannot be updated. The identifier can be used in the CustomLicenseAcquisitionUrlTemplate or the CustomKeyAcquisitionUrlTemplate of the StreamingPolicy specified in the StreamingPolicyName field.
+ *
+ * @param alternativeMediaId the alternativeMediaId value to set
+ * @return the LiveEventPreview object itself.
+ */
+ public LiveEventPreview withAlternativeMediaId(String alternativeMediaId) {
+ this.alternativeMediaId = alternativeMediaId;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventPreviewAccessControl.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventPreviewAccessControl.java
new file mode 100644
index 000000000000..f8bd315602cf
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventPreviewAccessControl.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The IP access control for Live Event preview.
+ */
+public class LiveEventPreviewAccessControl {
+ /**
+ * The IP access control properties.
+ */
+ @JsonProperty(value = "ip")
+ private IPAccessControl ip;
+
+ /**
+ * Get the IP access control properties.
+ *
+ * @return the ip value
+ */
+ public IPAccessControl ip() {
+ return this.ip;
+ }
+
+ /**
+ * Set the IP access control properties.
+ *
+ * @param ip the ip value to set
+ * @return the LiveEventPreviewAccessControl object itself.
+ */
+ public LiveEventPreviewAccessControl withIp(IPAccessControl ip) {
+ this.ip = ip;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventResourceState.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventResourceState.java
new file mode 100644
index 000000000000..d0b0afb1dadc
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventResourceState.java
@@ -0,0 +1,50 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for LiveEventResourceState.
+ */
+public final class LiveEventResourceState extends ExpandableStringEnum {
+ /** Static value Stopped for LiveEventResourceState. */
+ public static final LiveEventResourceState STOPPED = fromString("Stopped");
+
+ /** Static value Starting for LiveEventResourceState. */
+ public static final LiveEventResourceState STARTING = fromString("Starting");
+
+ /** Static value Running for LiveEventResourceState. */
+ public static final LiveEventResourceState RUNNING = fromString("Running");
+
+ /** Static value Stopping for LiveEventResourceState. */
+ public static final LiveEventResourceState STOPPING = fromString("Stopping");
+
+ /** Static value Deleting for LiveEventResourceState. */
+ public static final LiveEventResourceState DELETING = fromString("Deleting");
+
+ /**
+ * Creates or finds a LiveEventResourceState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding LiveEventResourceState
+ */
+ @JsonCreator
+ public static LiveEventResourceState fromString(String name) {
+ return fromString(name, LiveEventResourceState.class);
+ }
+
+ /**
+ * @return known LiveEventResourceState values
+ */
+ public static Collection values() {
+ return values(LiveEventResourceState.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventTranscription.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventTranscription.java
new file mode 100644
index 000000000000..883368d3fa35
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEventTranscription.java
@@ -0,0 +1,102 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes the transcription tracks in the output of a Live Event, generated
+ * using speech-to-text transcription.
+ */
+public class LiveEventTranscription {
+ /**
+ * Specifies the language (locale) used for speech-to-text transcription �
+ * it should match the spoken language in the audio track. The value should
+ * be in BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of
+ * supported languages are 'en-US' and 'en-GB'.
+ */
+ @JsonProperty(value = "language")
+ private String language;
+
+ /**
+ * Provides a mechanism to select the audio track in the input live feed,
+ * to which speech-to-text transcription is applied.
+ */
+ @JsonProperty(value = "inputTrackSelection")
+ private List inputTrackSelection;
+
+ /**
+ * Describes a transcription track in the output of a Live Event, generated
+ * using speech-to-text transcription.
+ */
+ @JsonProperty(value = "outputTranscriptionTrack")
+ private LiveEventOutputTranscriptionTrack outputTranscriptionTrack;
+
+ /**
+ * Get specifies the language (locale) used for speech-to-text transcription � it should match the spoken language in the audio track. The value should be in BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of supported languages are 'en-US' and 'en-GB'.
+ *
+ * @return the language value
+ */
+ public String language() {
+ return this.language;
+ }
+
+ /**
+ * Set specifies the language (locale) used for speech-to-text transcription � it should match the spoken language in the audio track. The value should be in BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of supported languages are 'en-US' and 'en-GB'.
+ *
+ * @param language the language value to set
+ * @return the LiveEventTranscription object itself.
+ */
+ public LiveEventTranscription withLanguage(String language) {
+ this.language = language;
+ return this;
+ }
+
+ /**
+ * Get provides a mechanism to select the audio track in the input live feed, to which speech-to-text transcription is applied.
+ *
+ * @return the inputTrackSelection value
+ */
+ public List inputTrackSelection() {
+ return this.inputTrackSelection;
+ }
+
+ /**
+ * Set provides a mechanism to select the audio track in the input live feed, to which speech-to-text transcription is applied.
+ *
+ * @param inputTrackSelection the inputTrackSelection value to set
+ * @return the LiveEventTranscription object itself.
+ */
+ public LiveEventTranscription withInputTrackSelection(List inputTrackSelection) {
+ this.inputTrackSelection = inputTrackSelection;
+ return this;
+ }
+
+ /**
+ * Get describes a transcription track in the output of a Live Event, generated using speech-to-text transcription.
+ *
+ * @return the outputTranscriptionTrack value
+ */
+ public LiveEventOutputTranscriptionTrack outputTranscriptionTrack() {
+ return this.outputTranscriptionTrack;
+ }
+
+ /**
+ * Set describes a transcription track in the output of a Live Event, generated using speech-to-text transcription.
+ *
+ * @param outputTranscriptionTrack the outputTranscriptionTrack value to set
+ * @return the LiveEventTranscription object itself.
+ */
+ public LiveEventTranscription withOutputTranscriptionTrack(LiveEventOutputTranscriptionTrack outputTranscriptionTrack) {
+ this.outputTranscriptionTrack = outputTranscriptionTrack;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEvents.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEvents.java
new file mode 100644
index 000000000000..06406cf79e14
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveEvents.java
@@ -0,0 +1,92 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.LiveEventsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing LiveEvents.
+ */
+public interface LiveEvents extends SupportsCreating, HasInner {
+ /**
+ * Start Live Event.
+ * Starts an existing Live Event.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param liveEventName The name of the Live Event.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable startAsync(String resourceGroupName, String accountName, String liveEventName);
+
+ /**
+ * Stop Live Event.
+ * Stops an existing Live Event.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param liveEventName The name of the Live Event.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable stopAsync(String resourceGroupName, String accountName, String liveEventName);
+
+ /**
+ * Reset Live Event.
+ * Resets an existing Live Event.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param liveEventName The name of the Live Event.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable resetAsync(String resourceGroupName, String accountName, String liveEventName);
+
+ /**
+ * Get Live Event.
+ * Gets a Live Event.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param liveEventName The name of the Live Event.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String accountName, String liveEventName);
+
+ /**
+ * List Live Events.
+ * Lists the Live Events in the account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String accountName);
+
+ /**
+ * Delete Live Event.
+ * Deletes a Live Event.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param liveEventName The name of the Live Event.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String accountName, String liveEventName);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutput.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutput.java
new file mode 100644
index 000000000000..253281b7b6b8
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutput.java
@@ -0,0 +1,261 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.LiveOutputInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import org.joda.time.Period;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing LiveOutput.
+ */
+public interface LiveOutput extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the archiveWindowLength value.
+ */
+ Period archiveWindowLength();
+
+ /**
+ * @return the assetName value.
+ */
+ String assetName();
+
+ /**
+ * @return the created value.
+ */
+ DateTime created();
+
+ /**
+ * @return the description value.
+ */
+ String description();
+
+ /**
+ * @return the hls value.
+ */
+ Hls hls();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the lastModified value.
+ */
+ DateTime lastModified();
+
+ /**
+ * @return the manifestName value.
+ */
+ String manifestName();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the outputSnapTime value.
+ */
+ Long outputSnapTime();
+
+ /**
+ * @return the provisioningState value.
+ */
+ String provisioningState();
+
+ /**
+ * @return the resourceState value.
+ */
+ LiveOutputResourceState resourceState();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the LiveOutput definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithLiveEvent, DefinitionStages.WithArchiveWindowLength, DefinitionStages.WithAssetName, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of LiveOutput definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a LiveOutput definition.
+ */
+ interface Blank extends WithLiveEvent {
+ }
+
+ /**
+ * The stage of the liveoutput definition allowing to specify LiveEvent.
+ */
+ interface WithLiveEvent {
+ /**
+ * Specifies resourceGroupName, accountName, liveEventName.
+ * @param resourceGroupName The name of the resource group within the Azure subscription
+ * @param accountName The Media Services account name
+ * @param liveEventName The name of the Live Event
+ * @return the next definition stage
+ */
+ WithArchiveWindowLength withExistingLiveEvent(String resourceGroupName, String accountName, String liveEventName);
+ }
+
+ /**
+ * The stage of the liveoutput definition allowing to specify ArchiveWindowLength.
+ */
+ interface WithArchiveWindowLength {
+ /**
+ * Specifies archiveWindowLength.
+ * @param archiveWindowLength ISO 8601 timespan duration of the archive window length. This is duration that customer want to retain the recorded content
+ * @return the next definition stage
+ */
+ WithAssetName withArchiveWindowLength(Period archiveWindowLength);
+ }
+
+ /**
+ * The stage of the liveoutput definition allowing to specify AssetName.
+ */
+ interface WithAssetName {
+ /**
+ * Specifies assetName.
+ * @param assetName The asset name
+ * @return the next definition stage
+ */
+ WithCreate withAssetName(String assetName);
+ }
+
+ /**
+ * The stage of the liveoutput definition allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description The description of the Live Output
+ * @return the next definition stage
+ */
+ WithCreate withDescription(String description);
+ }
+
+ /**
+ * The stage of the liveoutput definition allowing to specify Hls.
+ */
+ interface WithHls {
+ /**
+ * Specifies hls.
+ * @param hls The HLS configuration
+ * @return the next definition stage
+ */
+ WithCreate withHls(Hls hls);
+ }
+
+ /**
+ * The stage of the liveoutput definition allowing to specify ManifestName.
+ */
+ interface WithManifestName {
+ /**
+ * Specifies manifestName.
+ * @param manifestName The manifest file name. If not provided, the service will generate one automatically
+ * @return the next definition stage
+ */
+ WithCreate withManifestName(String manifestName);
+ }
+
+ /**
+ * The stage of the liveoutput definition allowing to specify OutputSnapTime.
+ */
+ interface WithOutputSnapTime {
+ /**
+ * Specifies outputSnapTime.
+ * @param outputSnapTime The output snapshot time
+ * @return the next definition stage
+ */
+ WithCreate withOutputSnapTime(Long outputSnapTime);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithDescription, DefinitionStages.WithHls, DefinitionStages.WithManifestName, DefinitionStages.WithOutputSnapTime {
+ }
+ }
+ /**
+ * The template for a LiveOutput update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithDescription, UpdateStages.WithHls, UpdateStages.WithManifestName, UpdateStages.WithOutputSnapTime {
+ }
+
+ /**
+ * Grouping of LiveOutput update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the liveoutput update allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ * @param description The description of the Live Output
+ * @return the next update stage
+ */
+ Update withDescription(String description);
+ }
+
+ /**
+ * The stage of the liveoutput update allowing to specify Hls.
+ */
+ interface WithHls {
+ /**
+ * Specifies hls.
+ * @param hls The HLS configuration
+ * @return the next update stage
+ */
+ Update withHls(Hls hls);
+ }
+
+ /**
+ * The stage of the liveoutput update allowing to specify ManifestName.
+ */
+ interface WithManifestName {
+ /**
+ * Specifies manifestName.
+ * @param manifestName The manifest file name. If not provided, the service will generate one automatically
+ * @return the next update stage
+ */
+ Update withManifestName(String manifestName);
+ }
+
+ /**
+ * The stage of the liveoutput update allowing to specify OutputSnapTime.
+ */
+ interface WithOutputSnapTime {
+ /**
+ * Specifies outputSnapTime.
+ * @param outputSnapTime The output snapshot time
+ * @return the next update stage
+ */
+ Update withOutputSnapTime(Long outputSnapTime);
+ }
+
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutputResourceState.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutputResourceState.java
new file mode 100644
index 000000000000..5725b0d01aef
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutputResourceState.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for LiveOutputResourceState.
+ */
+public final class LiveOutputResourceState extends ExpandableStringEnum {
+ /** Static value Creating for LiveOutputResourceState. */
+ public static final LiveOutputResourceState CREATING = fromString("Creating");
+
+ /** Static value Running for LiveOutputResourceState. */
+ public static final LiveOutputResourceState RUNNING = fromString("Running");
+
+ /** Static value Deleting for LiveOutputResourceState. */
+ public static final LiveOutputResourceState DELETING = fromString("Deleting");
+
+ /**
+ * Creates or finds a LiveOutputResourceState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding LiveOutputResourceState
+ */
+ @JsonCreator
+ public static LiveOutputResourceState fromString(String name) {
+ return fromString(name, LiveOutputResourceState.class);
+ }
+
+ /**
+ * @return known LiveOutputResourceState values
+ */
+ public static Collection values() {
+ return values(LiveOutputResourceState.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutputs.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutputs.java
new file mode 100644
index 000000000000..bfd61a4ca0ca
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/LiveOutputs.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.LiveOutputsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing LiveOutputs.
+ */
+public interface LiveOutputs extends SupportsCreating, HasInner {
+ /**
+ * Get Live Output.
+ * Gets a Live Output.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param liveEventName The name of the Live Event.
+ * @param liveOutputName The name of the Live Output.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String accountName, String liveEventName, String liveOutputName);
+
+ /**
+ * List Live Outputs.
+ * Lists the Live Outputs in the Live Event.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param liveEventName The name of the Live Event.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String accountName, final String liveEventName);
+
+ /**
+ * Delete Live Output.
+ * Deletes a Live Output.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @param liveEventName The name of the Live Event.
+ * @param liveOutputName The name of the Live Output.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String accountName, String liveEventName, String liveOutputName);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Locations.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Locations.java
new file mode 100644
index 000000000000..d0a8c29ac10a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Locations.java
@@ -0,0 +1,30 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.LocationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Locations.
+ */
+public interface Locations extends HasInner {
+ /**
+ * Check Name Availability.
+ * Checks whether the Media Service resource name is available.
+ *
+ * @param locationName The name of the location
+ * @param parameters The request parameters
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable checkNameAvailabilityAsync(String locationName, CheckNameAvailabilityInput parameters);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MediaService.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MediaService.java
new file mode 100644
index 000000000000..8e906760aa11
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MediaService.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.Resource;
+import com.microsoft.azure.arm.resources.models.GroupableResourceCore;
+import com.microsoft.azure.arm.resources.models.HasResourceGroup;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaManager;
+import java.util.UUID;
+import java.util.List;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaServiceInner;
+
+/**
+ * Type representing MediaService.
+ */
+public interface MediaService extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the mediaServiceId value.
+ */
+ UUID mediaServiceId();
+
+ /**
+ * @return the storageAccounts value.
+ */
+ List storageAccounts();
+
+ /**
+ * The entirety of the MediaService definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of MediaService definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a MediaService definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the MediaService definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the mediaservice definition allowing to specify StorageAccounts.
+ */
+ interface WithStorageAccounts {
+ /**
+ * Specifies storageAccounts.
+ * @param storageAccounts The storage accounts for this resource
+ * @return the next definition stage
+ */
+ WithCreate withStorageAccounts(List storageAccounts);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, Resource.DefinitionWithTags, DefinitionStages.WithStorageAccounts {
+ }
+ }
+ /**
+ * The template for a MediaService update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithStorageAccounts {
+ }
+
+ /**
+ * Grouping of MediaService update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the mediaservice update allowing to specify StorageAccounts.
+ */
+ interface WithStorageAccounts {
+ /**
+ * Specifies storageAccounts.
+ * @param storageAccounts The storage accounts for this resource
+ * @return the next update stage
+ */
+ Update withStorageAccounts(List storageAccounts);
+ }
+
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Mediaservices.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Mediaservices.java
new file mode 100644
index 000000000000..29824c870080
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Mediaservices.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import com.microsoft.azure.arm.resources.collection.SupportsDeletingByResourceGroup;
+import com.microsoft.azure.arm.resources.collection.SupportsBatchDeletion;
+import com.microsoft.azure.arm.resources.collection.SupportsGettingByResourceGroup;
+import rx.Observable;
+import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup;
+import com.microsoft.azure.arm.collection.SupportsListing;
+import rx.Completable;
+import com.microsoft.azure.management.mediaservices.v2019_05_01_preview.implementation.MediaservicesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Mediaservices.
+ */
+public interface Mediaservices extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner {
+ /**
+ * Synchronizes Storage Account Keys.
+ * Synchronizes storage account keys for a storage account associated with the Media Service account.
+ *
+ * @param resourceGroupName The name of the resource group within the Azure subscription.
+ * @param accountName The Media Services account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable syncStorageKeysAsync(String resourceGroupName, String accountName);
+
+ /**
+ * Get a Media Services account.
+ * Get the details of a Media Services account.
+ *
+ * @param accountName The Media Services account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getBySubscriptionAsync(String accountName);
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Metric.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Metric.java
new file mode 100644
index 000000000000..23b18a484c7f
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Metric.java
@@ -0,0 +1,110 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A metric emitted by service.
+ */
+public class Metric {
+ /**
+ * The metric name.
+ */
+ @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /**
+ * The metric display name.
+ */
+ @JsonProperty(value = "displayName", access = JsonProperty.Access.WRITE_ONLY)
+ private String displayName;
+
+ /**
+ * The metric display description.
+ */
+ @JsonProperty(value = "displayDescription", access = JsonProperty.Access.WRITE_ONLY)
+ private String displayDescription;
+
+ /**
+ * The metric unit. Possible values include: 'Bytes', 'Count',
+ * 'Milliseconds'.
+ */
+ @JsonProperty(value = "unit", access = JsonProperty.Access.WRITE_ONLY)
+ private MetricUnit unit;
+
+ /**
+ * The metric aggregation type. Possible values include: 'Average',
+ * 'Count', 'Total'.
+ */
+ @JsonProperty(value = "aggregationType", access = JsonProperty.Access.WRITE_ONLY)
+ private MetricAggregationType aggregationType;
+
+ /**
+ * The metric dimensions.
+ */
+ @JsonProperty(value = "dimensions", access = JsonProperty.Access.WRITE_ONLY)
+ private List dimensions;
+
+ /**
+ * Get the metric name.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the metric display name.
+ *
+ * @return the displayName value
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Get the metric display description.
+ *
+ * @return the displayDescription value
+ */
+ public String displayDescription() {
+ return this.displayDescription;
+ }
+
+ /**
+ * Get the metric unit. Possible values include: 'Bytes', 'Count', 'Milliseconds'.
+ *
+ * @return the unit value
+ */
+ public MetricUnit unit() {
+ return this.unit;
+ }
+
+ /**
+ * Get the metric aggregation type. Possible values include: 'Average', 'Count', 'Total'.
+ *
+ * @return the aggregationType value
+ */
+ public MetricAggregationType aggregationType() {
+ return this.aggregationType;
+ }
+
+ /**
+ * Get the metric dimensions.
+ *
+ * @return the dimensions value
+ */
+ public List dimensions() {
+ return this.dimensions;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricAggregationType.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricAggregationType.java
new file mode 100644
index 000000000000..bd8f316efff9
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricAggregationType.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for MetricAggregationType.
+ */
+public final class MetricAggregationType extends ExpandableStringEnum {
+ /** Static value Average for MetricAggregationType. */
+ public static final MetricAggregationType AVERAGE = fromString("Average");
+
+ /** Static value Count for MetricAggregationType. */
+ public static final MetricAggregationType COUNT = fromString("Count");
+
+ /** Static value Total for MetricAggregationType. */
+ public static final MetricAggregationType TOTAL = fromString("Total");
+
+ /**
+ * Creates or finds a MetricAggregationType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding MetricAggregationType
+ */
+ @JsonCreator
+ public static MetricAggregationType fromString(String name) {
+ return fromString(name, MetricAggregationType.class);
+ }
+
+ /**
+ * @return known MetricAggregationType values
+ */
+ public static Collection values() {
+ return values(MetricAggregationType.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricDimension.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricDimension.java
new file mode 100644
index 000000000000..e85c2d093e60
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricDimension.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A metric dimension.
+ */
+public class MetricDimension {
+ /**
+ * The metric dimension name.
+ */
+ @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /**
+ * The display name for the dimension.
+ */
+ @JsonProperty(value = "displayName", access = JsonProperty.Access.WRITE_ONLY)
+ private String displayName;
+
+ /**
+ * Whether to export metric to shoebox.
+ */
+ @JsonProperty(value = "toBeExportedForShoebox", access = JsonProperty.Access.WRITE_ONLY)
+ private boolean toBeExportedForShoebox;
+
+ /**
+ * Get the metric dimension name.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the display name for the dimension.
+ *
+ * @return the displayName value
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Get whether to export metric to shoebox.
+ *
+ * @return the toBeExportedForShoebox value
+ */
+ public boolean toBeExportedForShoebox() {
+ return this.toBeExportedForShoebox;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricProperties.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricProperties.java
new file mode 100644
index 000000000000..c7d934dc5246
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricProperties.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Metric properties.
+ */
+public class MetricProperties {
+ /**
+ * The service specifications.
+ */
+ @JsonProperty(value = "serviceSpecification", access = JsonProperty.Access.WRITE_ONLY)
+ private ServiceSpecification serviceSpecification;
+
+ /**
+ * Get the service specifications.
+ *
+ * @return the serviceSpecification value
+ */
+ public ServiceSpecification serviceSpecification() {
+ return this.serviceSpecification;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricUnit.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricUnit.java
new file mode 100644
index 000000000000..01504e7ac67c
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MetricUnit.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for MetricUnit.
+ */
+public final class MetricUnit extends ExpandableStringEnum {
+ /** Static value Bytes for MetricUnit. */
+ public static final MetricUnit BYTES = fromString("Bytes");
+
+ /** Static value Count for MetricUnit. */
+ public static final MetricUnit COUNT = fromString("Count");
+
+ /** Static value Milliseconds for MetricUnit. */
+ public static final MetricUnit MILLISECONDS = fromString("Milliseconds");
+
+ /**
+ * Creates or finds a MetricUnit from its string representation.
+ * @param name a name to look for
+ * @return the corresponding MetricUnit
+ */
+ @JsonCreator
+ public static MetricUnit fromString(String name) {
+ return fromString(name, MetricUnit.class);
+ }
+
+ /**
+ * @return known MetricUnit values
+ */
+ public static Collection values() {
+ return values(MetricUnit.class);
+ }
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Mp4Format.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Mp4Format.java
new file mode 100644
index 000000000000..3172b0839b78
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/Mp4Format.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Describes the properties for an output ISO MP4 file.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.Mp4Format")
+public class Mp4Format extends MultiBitrateFormat {
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MultiBitrateFormat.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MultiBitrateFormat.java
new file mode 100644
index 000000000000..9d8bbce0919d
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/MultiBitrateFormat.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Describes the properties for producing a collection of GOP aligned
+ * multi-bitrate files. The default behavior is to produce one output file for
+ * each video layer which is muxed together with all the audios. The exact
+ * output files produced can be controlled by specifying the outputFiles
+ * collection.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@odata.type")
+@JsonTypeName("#Microsoft.Media.MultiBitrateFormat")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "#Microsoft.Media.Mp4Format", value = Mp4Format.class),
+ @JsonSubTypes.Type(name = "#Microsoft.Media.TransportStreamFormat", value = TransportStreamFormat.class)
+})
+public class MultiBitrateFormat extends Format {
+ /**
+ * The list of output files to produce. Each entry in the list is a set of
+ * audio and video layer labels to be muxed together .
+ */
+ @JsonProperty(value = "outputFiles")
+ private List outputFiles;
+
+ /**
+ * Get the list of output files to produce. Each entry in the list is a set of audio and video layer labels to be muxed together .
+ *
+ * @return the outputFiles value
+ */
+ public List outputFiles() {
+ return this.outputFiles;
+ }
+
+ /**
+ * Set the list of output files to produce. Each entry in the list is a set of audio and video layer labels to be muxed together .
+ *
+ * @param outputFiles the outputFiles value to set
+ * @return the MultiBitrateFormat object itself.
+ */
+ public MultiBitrateFormat withOutputFiles(List outputFiles) {
+ this.outputFiles = outputFiles;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/NoEncryption.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/NoEncryption.java
new file mode 100644
index 000000000000..8d6fe24c0d7a
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/NoEncryption.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Class for NoEncryption scheme.
+ */
+public class NoEncryption {
+ /**
+ * Representing supported protocols.
+ */
+ @JsonProperty(value = "enabledProtocols")
+ private EnabledProtocols enabledProtocols;
+
+ /**
+ * Get representing supported protocols.
+ *
+ * @return the enabledProtocols value
+ */
+ public EnabledProtocols enabledProtocols() {
+ return this.enabledProtocols;
+ }
+
+ /**
+ * Set representing supported protocols.
+ *
+ * @param enabledProtocols the enabledProtocols value to set
+ * @return the NoEncryption object itself.
+ */
+ public NoEncryption withEnabledProtocols(EnabledProtocols enabledProtocols) {
+ this.enabledProtocols = enabledProtocols;
+ return this;
+ }
+
+}
diff --git a/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ODataError.java b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ODataError.java
new file mode 100644
index 000000000000..4db986757dd3
--- /dev/null
+++ b/mediaservices/resource-manager/v2019_05_01_preview/src/main/java/com/microsoft/azure/management/mediaservices/v2019_05_01_preview/ODataError.java
@@ -0,0 +1,123 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.mediaservices.v2019_05_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Information about an error.
+ */
+public class ODataError {
+ /**
+ * A language-independent error name.
+ */
+ @JsonProperty(value = "code")
+ private String code;
+
+ /**
+ * The error message.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * The target of the error (for example, the name of the property in
+ * error).
+ */
+ @JsonProperty(value = "target")
+ private String target;
+
+ /**
+ * The error details.
+ */
+ @JsonProperty(value = "details")
+ private List