diff --git a/sdk/logic/mgmt-v2019_05_01/pom.xml b/sdk/logic/mgmt-v2019_05_01/pom.xml
new file mode 100644
index 000000000000..805a818c3a3a
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/pom.xml
@@ -0,0 +1,135 @@
+
+
+ 4.0.0
+ com.microsoft.azure.logic.v2019_05_01
+
+ com.microsoft.azure
+ azure-arm-parent
+ 1.1.0
+ ../../../pom.management.xml
+
+ azure-mgmt-logic
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for Logic Management
+ This package contains Microsoft Logic 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
+
+ 1.6.5
+
+
+
+
+
+ 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/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2AcknowledgementConnectionSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2AcknowledgementConnectionSettings.java
new file mode 100644
index 000000000000..8daf40e77d70
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2AcknowledgementConnectionSettings.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The AS2 agreement acknowledgement connection settings.
+ */
+public class AS2AcknowledgementConnectionSettings {
+ /**
+ * Indicates whether to ignore mismatch in certificate name.
+ */
+ @JsonProperty(value = "ignoreCertificateNameMismatch", required = true)
+ private boolean ignoreCertificateNameMismatch;
+
+ /**
+ * Indicates whether to support HTTP status code 'CONTINUE'.
+ */
+ @JsonProperty(value = "supportHttpStatusCodeContinue", required = true)
+ private boolean supportHttpStatusCodeContinue;
+
+ /**
+ * Indicates whether to keep the connection alive.
+ */
+ @JsonProperty(value = "keepHttpConnectionAlive", required = true)
+ private boolean keepHttpConnectionAlive;
+
+ /**
+ * Indicates whether to unfold the HTTP headers.
+ */
+ @JsonProperty(value = "unfoldHttpHeaders", required = true)
+ private boolean unfoldHttpHeaders;
+
+ /**
+ * Get indicates whether to ignore mismatch in certificate name.
+ *
+ * @return the ignoreCertificateNameMismatch value
+ */
+ public boolean ignoreCertificateNameMismatch() {
+ return this.ignoreCertificateNameMismatch;
+ }
+
+ /**
+ * Set indicates whether to ignore mismatch in certificate name.
+ *
+ * @param ignoreCertificateNameMismatch the ignoreCertificateNameMismatch value to set
+ * @return the AS2AcknowledgementConnectionSettings object itself.
+ */
+ public AS2AcknowledgementConnectionSettings withIgnoreCertificateNameMismatch(boolean ignoreCertificateNameMismatch) {
+ this.ignoreCertificateNameMismatch = ignoreCertificateNameMismatch;
+ return this;
+ }
+
+ /**
+ * Get indicates whether to support HTTP status code 'CONTINUE'.
+ *
+ * @return the supportHttpStatusCodeContinue value
+ */
+ public boolean supportHttpStatusCodeContinue() {
+ return this.supportHttpStatusCodeContinue;
+ }
+
+ /**
+ * Set indicates whether to support HTTP status code 'CONTINUE'.
+ *
+ * @param supportHttpStatusCodeContinue the supportHttpStatusCodeContinue value to set
+ * @return the AS2AcknowledgementConnectionSettings object itself.
+ */
+ public AS2AcknowledgementConnectionSettings withSupportHttpStatusCodeContinue(boolean supportHttpStatusCodeContinue) {
+ this.supportHttpStatusCodeContinue = supportHttpStatusCodeContinue;
+ return this;
+ }
+
+ /**
+ * Get indicates whether to keep the connection alive.
+ *
+ * @return the keepHttpConnectionAlive value
+ */
+ public boolean keepHttpConnectionAlive() {
+ return this.keepHttpConnectionAlive;
+ }
+
+ /**
+ * Set indicates whether to keep the connection alive.
+ *
+ * @param keepHttpConnectionAlive the keepHttpConnectionAlive value to set
+ * @return the AS2AcknowledgementConnectionSettings object itself.
+ */
+ public AS2AcknowledgementConnectionSettings withKeepHttpConnectionAlive(boolean keepHttpConnectionAlive) {
+ this.keepHttpConnectionAlive = keepHttpConnectionAlive;
+ return this;
+ }
+
+ /**
+ * Get indicates whether to unfold the HTTP headers.
+ *
+ * @return the unfoldHttpHeaders value
+ */
+ public boolean unfoldHttpHeaders() {
+ return this.unfoldHttpHeaders;
+ }
+
+ /**
+ * Set indicates whether to unfold the HTTP headers.
+ *
+ * @param unfoldHttpHeaders the unfoldHttpHeaders value to set
+ * @return the AS2AcknowledgementConnectionSettings object itself.
+ */
+ public AS2AcknowledgementConnectionSettings withUnfoldHttpHeaders(boolean unfoldHttpHeaders) {
+ this.unfoldHttpHeaders = unfoldHttpHeaders;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2AgreementContent.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2AgreementContent.java
new file mode 100644
index 000000000000..8a5670d47eb5
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2AgreementContent.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account AS2 agreement content.
+ */
+public class AS2AgreementContent {
+ /**
+ * The AS2 one-way receive agreement.
+ */
+ @JsonProperty(value = "receiveAgreement", required = true)
+ private AS2OneWayAgreement receiveAgreement;
+
+ /**
+ * The AS2 one-way send agreement.
+ */
+ @JsonProperty(value = "sendAgreement", required = true)
+ private AS2OneWayAgreement sendAgreement;
+
+ /**
+ * Get the AS2 one-way receive agreement.
+ *
+ * @return the receiveAgreement value
+ */
+ public AS2OneWayAgreement receiveAgreement() {
+ return this.receiveAgreement;
+ }
+
+ /**
+ * Set the AS2 one-way receive agreement.
+ *
+ * @param receiveAgreement the receiveAgreement value to set
+ * @return the AS2AgreementContent object itself.
+ */
+ public AS2AgreementContent withReceiveAgreement(AS2OneWayAgreement receiveAgreement) {
+ this.receiveAgreement = receiveAgreement;
+ return this;
+ }
+
+ /**
+ * Get the AS2 one-way send agreement.
+ *
+ * @return the sendAgreement value
+ */
+ public AS2OneWayAgreement sendAgreement() {
+ return this.sendAgreement;
+ }
+
+ /**
+ * Set the AS2 one-way send agreement.
+ *
+ * @param sendAgreement the sendAgreement value to set
+ * @return the AS2AgreementContent object itself.
+ */
+ public AS2AgreementContent withSendAgreement(AS2OneWayAgreement sendAgreement) {
+ this.sendAgreement = sendAgreement;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2EnvelopeSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2EnvelopeSettings.java
new file mode 100644
index 000000000000..c500723ece08
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2EnvelopeSettings.java
@@ -0,0 +1,148 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The AS2 agreement envelope settings.
+ */
+public class AS2EnvelopeSettings {
+ /**
+ * The message content type.
+ */
+ @JsonProperty(value = "messageContentType", required = true)
+ private String messageContentType;
+
+ /**
+ * The value indicating whether to transmit file name in mime header.
+ */
+ @JsonProperty(value = "transmitFileNameInMimeHeader", required = true)
+ private boolean transmitFileNameInMimeHeader;
+
+ /**
+ * The template for file name.
+ */
+ @JsonProperty(value = "fileNameTemplate", required = true)
+ private String fileNameTemplate;
+
+ /**
+ * The value indicating whether to suspend message on file name generation
+ * error.
+ */
+ @JsonProperty(value = "suspendMessageOnFileNameGenerationError", required = true)
+ private boolean suspendMessageOnFileNameGenerationError;
+
+ /**
+ * The value indicating whether to auto generate file name.
+ */
+ @JsonProperty(value = "autogenerateFileName", required = true)
+ private boolean autogenerateFileName;
+
+ /**
+ * Get the message content type.
+ *
+ * @return the messageContentType value
+ */
+ public String messageContentType() {
+ return this.messageContentType;
+ }
+
+ /**
+ * Set the message content type.
+ *
+ * @param messageContentType the messageContentType value to set
+ * @return the AS2EnvelopeSettings object itself.
+ */
+ public AS2EnvelopeSettings withMessageContentType(String messageContentType) {
+ this.messageContentType = messageContentType;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to transmit file name in mime header.
+ *
+ * @return the transmitFileNameInMimeHeader value
+ */
+ public boolean transmitFileNameInMimeHeader() {
+ return this.transmitFileNameInMimeHeader;
+ }
+
+ /**
+ * Set the value indicating whether to transmit file name in mime header.
+ *
+ * @param transmitFileNameInMimeHeader the transmitFileNameInMimeHeader value to set
+ * @return the AS2EnvelopeSettings object itself.
+ */
+ public AS2EnvelopeSettings withTransmitFileNameInMimeHeader(boolean transmitFileNameInMimeHeader) {
+ this.transmitFileNameInMimeHeader = transmitFileNameInMimeHeader;
+ return this;
+ }
+
+ /**
+ * Get the template for file name.
+ *
+ * @return the fileNameTemplate value
+ */
+ public String fileNameTemplate() {
+ return this.fileNameTemplate;
+ }
+
+ /**
+ * Set the template for file name.
+ *
+ * @param fileNameTemplate the fileNameTemplate value to set
+ * @return the AS2EnvelopeSettings object itself.
+ */
+ public AS2EnvelopeSettings withFileNameTemplate(String fileNameTemplate) {
+ this.fileNameTemplate = fileNameTemplate;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to suspend message on file name generation error.
+ *
+ * @return the suspendMessageOnFileNameGenerationError value
+ */
+ public boolean suspendMessageOnFileNameGenerationError() {
+ return this.suspendMessageOnFileNameGenerationError;
+ }
+
+ /**
+ * Set the value indicating whether to suspend message on file name generation error.
+ *
+ * @param suspendMessageOnFileNameGenerationError the suspendMessageOnFileNameGenerationError value to set
+ * @return the AS2EnvelopeSettings object itself.
+ */
+ public AS2EnvelopeSettings withSuspendMessageOnFileNameGenerationError(boolean suspendMessageOnFileNameGenerationError) {
+ this.suspendMessageOnFileNameGenerationError = suspendMessageOnFileNameGenerationError;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to auto generate file name.
+ *
+ * @return the autogenerateFileName value
+ */
+ public boolean autogenerateFileName() {
+ return this.autogenerateFileName;
+ }
+
+ /**
+ * Set the value indicating whether to auto generate file name.
+ *
+ * @param autogenerateFileName the autogenerateFileName value to set
+ * @return the AS2EnvelopeSettings object itself.
+ */
+ public AS2EnvelopeSettings withAutogenerateFileName(boolean autogenerateFileName) {
+ this.autogenerateFileName = autogenerateFileName;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ErrorSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ErrorSettings.java
new file mode 100644
index 000000000000..b9af0fc569f8
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ErrorSettings.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The AS2 agreement error settings.
+ */
+public class AS2ErrorSettings {
+ /**
+ * The value indicating whether to suspend duplicate message.
+ */
+ @JsonProperty(value = "suspendDuplicateMessage", required = true)
+ private boolean suspendDuplicateMessage;
+
+ /**
+ * The value indicating whether to resend message If MDN is not received.
+ */
+ @JsonProperty(value = "resendIfMDNNotReceived", required = true)
+ private boolean resendIfMDNNotReceived;
+
+ /**
+ * Get the value indicating whether to suspend duplicate message.
+ *
+ * @return the suspendDuplicateMessage value
+ */
+ public boolean suspendDuplicateMessage() {
+ return this.suspendDuplicateMessage;
+ }
+
+ /**
+ * Set the value indicating whether to suspend duplicate message.
+ *
+ * @param suspendDuplicateMessage the suspendDuplicateMessage value to set
+ * @return the AS2ErrorSettings object itself.
+ */
+ public AS2ErrorSettings withSuspendDuplicateMessage(boolean suspendDuplicateMessage) {
+ this.suspendDuplicateMessage = suspendDuplicateMessage;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to resend message If MDN is not received.
+ *
+ * @return the resendIfMDNNotReceived value
+ */
+ public boolean resendIfMDNNotReceived() {
+ return this.resendIfMDNNotReceived;
+ }
+
+ /**
+ * Set the value indicating whether to resend message If MDN is not received.
+ *
+ * @param resendIfMDNNotReceived the resendIfMDNNotReceived value to set
+ * @return the AS2ErrorSettings object itself.
+ */
+ public AS2ErrorSettings withResendIfMDNNotReceived(boolean resendIfMDNNotReceived) {
+ this.resendIfMDNNotReceived = resendIfMDNNotReceived;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2MdnSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2MdnSettings.java
new file mode 100644
index 000000000000..de38905ae57e
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2MdnSettings.java
@@ -0,0 +1,252 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The AS2 agreement mdn settings.
+ */
+public class AS2MdnSettings {
+ /**
+ * The value indicating whether to send or request a MDN.
+ */
+ @JsonProperty(value = "needMDN", required = true)
+ private boolean needMDN;
+
+ /**
+ * The value indicating whether the MDN needs to be signed or not.
+ */
+ @JsonProperty(value = "signMDN", required = true)
+ private boolean signMDN;
+
+ /**
+ * The value indicating whether to send the asynchronous MDN.
+ */
+ @JsonProperty(value = "sendMDNAsynchronously", required = true)
+ private boolean sendMDNAsynchronously;
+
+ /**
+ * The receipt delivery URL.
+ */
+ @JsonProperty(value = "receiptDeliveryUrl")
+ private String receiptDeliveryUrl;
+
+ /**
+ * The disposition notification to header value.
+ */
+ @JsonProperty(value = "dispositionNotificationTo")
+ private String dispositionNotificationTo;
+
+ /**
+ * The value indicating whether to sign the outbound MDN if optional.
+ */
+ @JsonProperty(value = "signOutboundMDNIfOptional", required = true)
+ private boolean signOutboundMDNIfOptional;
+
+ /**
+ * The MDN text.
+ */
+ @JsonProperty(value = "mdnText")
+ private String mdnText;
+
+ /**
+ * The value indicating whether to send inbound MDN to message box.
+ */
+ @JsonProperty(value = "sendInboundMDNToMessageBox", required = true)
+ private boolean sendInboundMDNToMessageBox;
+
+ /**
+ * The signing or hashing algorithm. Possible values include:
+ * 'NotSpecified', 'None', 'MD5', 'SHA1', 'SHA2256', 'SHA2384', 'SHA2512'.
+ */
+ @JsonProperty(value = "micHashingAlgorithm", required = true)
+ private HashingAlgorithm micHashingAlgorithm;
+
+ /**
+ * Get the value indicating whether to send or request a MDN.
+ *
+ * @return the needMDN value
+ */
+ public boolean needMDN() {
+ return this.needMDN;
+ }
+
+ /**
+ * Set the value indicating whether to send or request a MDN.
+ *
+ * @param needMDN the needMDN value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withNeedMDN(boolean needMDN) {
+ this.needMDN = needMDN;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether the MDN needs to be signed or not.
+ *
+ * @return the signMDN value
+ */
+ public boolean signMDN() {
+ return this.signMDN;
+ }
+
+ /**
+ * Set the value indicating whether the MDN needs to be signed or not.
+ *
+ * @param signMDN the signMDN value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withSignMDN(boolean signMDN) {
+ this.signMDN = signMDN;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to send the asynchronous MDN.
+ *
+ * @return the sendMDNAsynchronously value
+ */
+ public boolean sendMDNAsynchronously() {
+ return this.sendMDNAsynchronously;
+ }
+
+ /**
+ * Set the value indicating whether to send the asynchronous MDN.
+ *
+ * @param sendMDNAsynchronously the sendMDNAsynchronously value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withSendMDNAsynchronously(boolean sendMDNAsynchronously) {
+ this.sendMDNAsynchronously = sendMDNAsynchronously;
+ return this;
+ }
+
+ /**
+ * Get the receipt delivery URL.
+ *
+ * @return the receiptDeliveryUrl value
+ */
+ public String receiptDeliveryUrl() {
+ return this.receiptDeliveryUrl;
+ }
+
+ /**
+ * Set the receipt delivery URL.
+ *
+ * @param receiptDeliveryUrl the receiptDeliveryUrl value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withReceiptDeliveryUrl(String receiptDeliveryUrl) {
+ this.receiptDeliveryUrl = receiptDeliveryUrl;
+ return this;
+ }
+
+ /**
+ * Get the disposition notification to header value.
+ *
+ * @return the dispositionNotificationTo value
+ */
+ public String dispositionNotificationTo() {
+ return this.dispositionNotificationTo;
+ }
+
+ /**
+ * Set the disposition notification to header value.
+ *
+ * @param dispositionNotificationTo the dispositionNotificationTo value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withDispositionNotificationTo(String dispositionNotificationTo) {
+ this.dispositionNotificationTo = dispositionNotificationTo;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to sign the outbound MDN if optional.
+ *
+ * @return the signOutboundMDNIfOptional value
+ */
+ public boolean signOutboundMDNIfOptional() {
+ return this.signOutboundMDNIfOptional;
+ }
+
+ /**
+ * Set the value indicating whether to sign the outbound MDN if optional.
+ *
+ * @param signOutboundMDNIfOptional the signOutboundMDNIfOptional value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withSignOutboundMDNIfOptional(boolean signOutboundMDNIfOptional) {
+ this.signOutboundMDNIfOptional = signOutboundMDNIfOptional;
+ return this;
+ }
+
+ /**
+ * Get the MDN text.
+ *
+ * @return the mdnText value
+ */
+ public String mdnText() {
+ return this.mdnText;
+ }
+
+ /**
+ * Set the MDN text.
+ *
+ * @param mdnText the mdnText value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withMdnText(String mdnText) {
+ this.mdnText = mdnText;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to send inbound MDN to message box.
+ *
+ * @return the sendInboundMDNToMessageBox value
+ */
+ public boolean sendInboundMDNToMessageBox() {
+ return this.sendInboundMDNToMessageBox;
+ }
+
+ /**
+ * Set the value indicating whether to send inbound MDN to message box.
+ *
+ * @param sendInboundMDNToMessageBox the sendInboundMDNToMessageBox value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withSendInboundMDNToMessageBox(boolean sendInboundMDNToMessageBox) {
+ this.sendInboundMDNToMessageBox = sendInboundMDNToMessageBox;
+ return this;
+ }
+
+ /**
+ * Get the signing or hashing algorithm. Possible values include: 'NotSpecified', 'None', 'MD5', 'SHA1', 'SHA2256', 'SHA2384', 'SHA2512'.
+ *
+ * @return the micHashingAlgorithm value
+ */
+ public HashingAlgorithm micHashingAlgorithm() {
+ return this.micHashingAlgorithm;
+ }
+
+ /**
+ * Set the signing or hashing algorithm. Possible values include: 'NotSpecified', 'None', 'MD5', 'SHA1', 'SHA2256', 'SHA2384', 'SHA2512'.
+ *
+ * @param micHashingAlgorithm the micHashingAlgorithm value to set
+ * @return the AS2MdnSettings object itself.
+ */
+ public AS2MdnSettings withMicHashingAlgorithm(HashingAlgorithm micHashingAlgorithm) {
+ this.micHashingAlgorithm = micHashingAlgorithm;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2MessageConnectionSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2MessageConnectionSettings.java
new file mode 100644
index 000000000000..382843affe12
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2MessageConnectionSettings.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The AS2 agreement message connection settings.
+ */
+public class AS2MessageConnectionSettings {
+ /**
+ * The value indicating whether to ignore mismatch in certificate name.
+ */
+ @JsonProperty(value = "ignoreCertificateNameMismatch", required = true)
+ private boolean ignoreCertificateNameMismatch;
+
+ /**
+ * The value indicating whether to support HTTP status code 'CONTINUE'.
+ */
+ @JsonProperty(value = "supportHttpStatusCodeContinue", required = true)
+ private boolean supportHttpStatusCodeContinue;
+
+ /**
+ * The value indicating whether to keep the connection alive.
+ */
+ @JsonProperty(value = "keepHttpConnectionAlive", required = true)
+ private boolean keepHttpConnectionAlive;
+
+ /**
+ * The value indicating whether to unfold the HTTP headers.
+ */
+ @JsonProperty(value = "unfoldHttpHeaders", required = true)
+ private boolean unfoldHttpHeaders;
+
+ /**
+ * Get the value indicating whether to ignore mismatch in certificate name.
+ *
+ * @return the ignoreCertificateNameMismatch value
+ */
+ public boolean ignoreCertificateNameMismatch() {
+ return this.ignoreCertificateNameMismatch;
+ }
+
+ /**
+ * Set the value indicating whether to ignore mismatch in certificate name.
+ *
+ * @param ignoreCertificateNameMismatch the ignoreCertificateNameMismatch value to set
+ * @return the AS2MessageConnectionSettings object itself.
+ */
+ public AS2MessageConnectionSettings withIgnoreCertificateNameMismatch(boolean ignoreCertificateNameMismatch) {
+ this.ignoreCertificateNameMismatch = ignoreCertificateNameMismatch;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to support HTTP status code 'CONTINUE'.
+ *
+ * @return the supportHttpStatusCodeContinue value
+ */
+ public boolean supportHttpStatusCodeContinue() {
+ return this.supportHttpStatusCodeContinue;
+ }
+
+ /**
+ * Set the value indicating whether to support HTTP status code 'CONTINUE'.
+ *
+ * @param supportHttpStatusCodeContinue the supportHttpStatusCodeContinue value to set
+ * @return the AS2MessageConnectionSettings object itself.
+ */
+ public AS2MessageConnectionSettings withSupportHttpStatusCodeContinue(boolean supportHttpStatusCodeContinue) {
+ this.supportHttpStatusCodeContinue = supportHttpStatusCodeContinue;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to keep the connection alive.
+ *
+ * @return the keepHttpConnectionAlive value
+ */
+ public boolean keepHttpConnectionAlive() {
+ return this.keepHttpConnectionAlive;
+ }
+
+ /**
+ * Set the value indicating whether to keep the connection alive.
+ *
+ * @param keepHttpConnectionAlive the keepHttpConnectionAlive value to set
+ * @return the AS2MessageConnectionSettings object itself.
+ */
+ public AS2MessageConnectionSettings withKeepHttpConnectionAlive(boolean keepHttpConnectionAlive) {
+ this.keepHttpConnectionAlive = keepHttpConnectionAlive;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to unfold the HTTP headers.
+ *
+ * @return the unfoldHttpHeaders value
+ */
+ public boolean unfoldHttpHeaders() {
+ return this.unfoldHttpHeaders;
+ }
+
+ /**
+ * Set the value indicating whether to unfold the HTTP headers.
+ *
+ * @param unfoldHttpHeaders the unfoldHttpHeaders value to set
+ * @return the AS2MessageConnectionSettings object itself.
+ */
+ public AS2MessageConnectionSettings withUnfoldHttpHeaders(boolean unfoldHttpHeaders) {
+ this.unfoldHttpHeaders = unfoldHttpHeaders;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2OneWayAgreement.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2OneWayAgreement.java
new file mode 100644
index 000000000000..93dcd5e9f0a1
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2OneWayAgreement.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account AS2 one-way agreement.
+ */
+public class AS2OneWayAgreement {
+ /**
+ * The sender business identity.
+ */
+ @JsonProperty(value = "senderBusinessIdentity", required = true)
+ private BusinessIdentity senderBusinessIdentity;
+
+ /**
+ * The receiver business identity.
+ */
+ @JsonProperty(value = "receiverBusinessIdentity", required = true)
+ private BusinessIdentity receiverBusinessIdentity;
+
+ /**
+ * The AS2 protocol settings.
+ */
+ @JsonProperty(value = "protocolSettings", required = true)
+ private AS2ProtocolSettings protocolSettings;
+
+ /**
+ * Get the sender business identity.
+ *
+ * @return the senderBusinessIdentity value
+ */
+ public BusinessIdentity senderBusinessIdentity() {
+ return this.senderBusinessIdentity;
+ }
+
+ /**
+ * Set the sender business identity.
+ *
+ * @param senderBusinessIdentity the senderBusinessIdentity value to set
+ * @return the AS2OneWayAgreement object itself.
+ */
+ public AS2OneWayAgreement withSenderBusinessIdentity(BusinessIdentity senderBusinessIdentity) {
+ this.senderBusinessIdentity = senderBusinessIdentity;
+ return this;
+ }
+
+ /**
+ * Get the receiver business identity.
+ *
+ * @return the receiverBusinessIdentity value
+ */
+ public BusinessIdentity receiverBusinessIdentity() {
+ return this.receiverBusinessIdentity;
+ }
+
+ /**
+ * Set the receiver business identity.
+ *
+ * @param receiverBusinessIdentity the receiverBusinessIdentity value to set
+ * @return the AS2OneWayAgreement object itself.
+ */
+ public AS2OneWayAgreement withReceiverBusinessIdentity(BusinessIdentity receiverBusinessIdentity) {
+ this.receiverBusinessIdentity = receiverBusinessIdentity;
+ return this;
+ }
+
+ /**
+ * Get the AS2 protocol settings.
+ *
+ * @return the protocolSettings value
+ */
+ public AS2ProtocolSettings protocolSettings() {
+ return this.protocolSettings;
+ }
+
+ /**
+ * Set the AS2 protocol settings.
+ *
+ * @param protocolSettings the protocolSettings value to set
+ * @return the AS2OneWayAgreement object itself.
+ */
+ public AS2OneWayAgreement withProtocolSettings(AS2ProtocolSettings protocolSettings) {
+ this.protocolSettings = protocolSettings;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ProtocolSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ProtocolSettings.java
new file mode 100644
index 000000000000..c29bc833ff9b
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ProtocolSettings.java
@@ -0,0 +1,199 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The AS2 agreement protocol settings.
+ */
+public class AS2ProtocolSettings {
+ /**
+ * The message connection settings.
+ */
+ @JsonProperty(value = "messageConnectionSettings", required = true)
+ private AS2MessageConnectionSettings messageConnectionSettings;
+
+ /**
+ * The acknowledgement connection settings.
+ */
+ @JsonProperty(value = "acknowledgementConnectionSettings", required = true)
+ private AS2AcknowledgementConnectionSettings acknowledgementConnectionSettings;
+
+ /**
+ * The MDN settings.
+ */
+ @JsonProperty(value = "mdnSettings", required = true)
+ private AS2MdnSettings mdnSettings;
+
+ /**
+ * The security settings.
+ */
+ @JsonProperty(value = "securitySettings", required = true)
+ private AS2SecuritySettings securitySettings;
+
+ /**
+ * The validation settings.
+ */
+ @JsonProperty(value = "validationSettings", required = true)
+ private AS2ValidationSettings validationSettings;
+
+ /**
+ * The envelope settings.
+ */
+ @JsonProperty(value = "envelopeSettings", required = true)
+ private AS2EnvelopeSettings envelopeSettings;
+
+ /**
+ * The error settings.
+ */
+ @JsonProperty(value = "errorSettings", required = true)
+ private AS2ErrorSettings errorSettings;
+
+ /**
+ * Get the message connection settings.
+ *
+ * @return the messageConnectionSettings value
+ */
+ public AS2MessageConnectionSettings messageConnectionSettings() {
+ return this.messageConnectionSettings;
+ }
+
+ /**
+ * Set the message connection settings.
+ *
+ * @param messageConnectionSettings the messageConnectionSettings value to set
+ * @return the AS2ProtocolSettings object itself.
+ */
+ public AS2ProtocolSettings withMessageConnectionSettings(AS2MessageConnectionSettings messageConnectionSettings) {
+ this.messageConnectionSettings = messageConnectionSettings;
+ return this;
+ }
+
+ /**
+ * Get the acknowledgement connection settings.
+ *
+ * @return the acknowledgementConnectionSettings value
+ */
+ public AS2AcknowledgementConnectionSettings acknowledgementConnectionSettings() {
+ return this.acknowledgementConnectionSettings;
+ }
+
+ /**
+ * Set the acknowledgement connection settings.
+ *
+ * @param acknowledgementConnectionSettings the acknowledgementConnectionSettings value to set
+ * @return the AS2ProtocolSettings object itself.
+ */
+ public AS2ProtocolSettings withAcknowledgementConnectionSettings(AS2AcknowledgementConnectionSettings acknowledgementConnectionSettings) {
+ this.acknowledgementConnectionSettings = acknowledgementConnectionSettings;
+ return this;
+ }
+
+ /**
+ * Get the MDN settings.
+ *
+ * @return the mdnSettings value
+ */
+ public AS2MdnSettings mdnSettings() {
+ return this.mdnSettings;
+ }
+
+ /**
+ * Set the MDN settings.
+ *
+ * @param mdnSettings the mdnSettings value to set
+ * @return the AS2ProtocolSettings object itself.
+ */
+ public AS2ProtocolSettings withMdnSettings(AS2MdnSettings mdnSettings) {
+ this.mdnSettings = mdnSettings;
+ return this;
+ }
+
+ /**
+ * Get the security settings.
+ *
+ * @return the securitySettings value
+ */
+ public AS2SecuritySettings securitySettings() {
+ return this.securitySettings;
+ }
+
+ /**
+ * Set the security settings.
+ *
+ * @param securitySettings the securitySettings value to set
+ * @return the AS2ProtocolSettings object itself.
+ */
+ public AS2ProtocolSettings withSecuritySettings(AS2SecuritySettings securitySettings) {
+ this.securitySettings = securitySettings;
+ return this;
+ }
+
+ /**
+ * Get the validation settings.
+ *
+ * @return the validationSettings value
+ */
+ public AS2ValidationSettings validationSettings() {
+ return this.validationSettings;
+ }
+
+ /**
+ * Set the validation settings.
+ *
+ * @param validationSettings the validationSettings value to set
+ * @return the AS2ProtocolSettings object itself.
+ */
+ public AS2ProtocolSettings withValidationSettings(AS2ValidationSettings validationSettings) {
+ this.validationSettings = validationSettings;
+ return this;
+ }
+
+ /**
+ * Get the envelope settings.
+ *
+ * @return the envelopeSettings value
+ */
+ public AS2EnvelopeSettings envelopeSettings() {
+ return this.envelopeSettings;
+ }
+
+ /**
+ * Set the envelope settings.
+ *
+ * @param envelopeSettings the envelopeSettings value to set
+ * @return the AS2ProtocolSettings object itself.
+ */
+ public AS2ProtocolSettings withEnvelopeSettings(AS2EnvelopeSettings envelopeSettings) {
+ this.envelopeSettings = envelopeSettings;
+ return this;
+ }
+
+ /**
+ * Get the error settings.
+ *
+ * @return the errorSettings value
+ */
+ public AS2ErrorSettings errorSettings() {
+ return this.errorSettings;
+ }
+
+ /**
+ * Set the error settings.
+ *
+ * @param errorSettings the errorSettings value to set
+ * @return the AS2ProtocolSettings object itself.
+ */
+ public AS2ProtocolSettings withErrorSettings(AS2ErrorSettings errorSettings) {
+ this.errorSettings = errorSettings;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2SecuritySettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2SecuritySettings.java
new file mode 100644
index 000000000000..5a2da47ced6f
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2SecuritySettings.java
@@ -0,0 +1,280 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The AS2 agreement security settings.
+ */
+public class AS2SecuritySettings {
+ /**
+ * The value indicating whether to send or request a MDN.
+ */
+ @JsonProperty(value = "overrideGroupSigningCertificate", required = true)
+ private boolean overrideGroupSigningCertificate;
+
+ /**
+ * The name of the signing certificate.
+ */
+ @JsonProperty(value = "signingCertificateName")
+ private String signingCertificateName;
+
+ /**
+ * The name of the encryption certificate.
+ */
+ @JsonProperty(value = "encryptionCertificateName")
+ private String encryptionCertificateName;
+
+ /**
+ * The value indicating whether to enable NRR for inbound encoded messages.
+ */
+ @JsonProperty(value = "enableNRRForInboundEncodedMessages", required = true)
+ private boolean enableNRRForInboundEncodedMessages;
+
+ /**
+ * The value indicating whether to enable NRR for inbound decoded messages.
+ */
+ @JsonProperty(value = "enableNRRForInboundDecodedMessages", required = true)
+ private boolean enableNRRForInboundDecodedMessages;
+
+ /**
+ * The value indicating whether to enable NRR for outbound MDN.
+ */
+ @JsonProperty(value = "enableNRRForOutboundMDN", required = true)
+ private boolean enableNRRForOutboundMDN;
+
+ /**
+ * The value indicating whether to enable NRR for outbound encoded
+ * messages.
+ */
+ @JsonProperty(value = "enableNRRForOutboundEncodedMessages", required = true)
+ private boolean enableNRRForOutboundEncodedMessages;
+
+ /**
+ * The value indicating whether to enable NRR for outbound decoded
+ * messages.
+ */
+ @JsonProperty(value = "enableNRRForOutboundDecodedMessages", required = true)
+ private boolean enableNRRForOutboundDecodedMessages;
+
+ /**
+ * The value indicating whether to enable NRR for inbound MDN.
+ */
+ @JsonProperty(value = "enableNRRForInboundMDN", required = true)
+ private boolean enableNRRForInboundMDN;
+
+ /**
+ * The Sha2 algorithm format. Valid values are Sha2, ShaHashSize,
+ * ShaHyphenHashSize, Sha2UnderscoreHashSize.
+ */
+ @JsonProperty(value = "sha2AlgorithmFormat")
+ private String sha2AlgorithmFormat;
+
+ /**
+ * Get the value indicating whether to send or request a MDN.
+ *
+ * @return the overrideGroupSigningCertificate value
+ */
+ public boolean overrideGroupSigningCertificate() {
+ return this.overrideGroupSigningCertificate;
+ }
+
+ /**
+ * Set the value indicating whether to send or request a MDN.
+ *
+ * @param overrideGroupSigningCertificate the overrideGroupSigningCertificate value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withOverrideGroupSigningCertificate(boolean overrideGroupSigningCertificate) {
+ this.overrideGroupSigningCertificate = overrideGroupSigningCertificate;
+ return this;
+ }
+
+ /**
+ * Get the name of the signing certificate.
+ *
+ * @return the signingCertificateName value
+ */
+ public String signingCertificateName() {
+ return this.signingCertificateName;
+ }
+
+ /**
+ * Set the name of the signing certificate.
+ *
+ * @param signingCertificateName the signingCertificateName value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withSigningCertificateName(String signingCertificateName) {
+ this.signingCertificateName = signingCertificateName;
+ return this;
+ }
+
+ /**
+ * Get the name of the encryption certificate.
+ *
+ * @return the encryptionCertificateName value
+ */
+ public String encryptionCertificateName() {
+ return this.encryptionCertificateName;
+ }
+
+ /**
+ * Set the name of the encryption certificate.
+ *
+ * @param encryptionCertificateName the encryptionCertificateName value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withEncryptionCertificateName(String encryptionCertificateName) {
+ this.encryptionCertificateName = encryptionCertificateName;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to enable NRR for inbound encoded messages.
+ *
+ * @return the enableNRRForInboundEncodedMessages value
+ */
+ public boolean enableNRRForInboundEncodedMessages() {
+ return this.enableNRRForInboundEncodedMessages;
+ }
+
+ /**
+ * Set the value indicating whether to enable NRR for inbound encoded messages.
+ *
+ * @param enableNRRForInboundEncodedMessages the enableNRRForInboundEncodedMessages value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withEnableNRRForInboundEncodedMessages(boolean enableNRRForInboundEncodedMessages) {
+ this.enableNRRForInboundEncodedMessages = enableNRRForInboundEncodedMessages;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to enable NRR for inbound decoded messages.
+ *
+ * @return the enableNRRForInboundDecodedMessages value
+ */
+ public boolean enableNRRForInboundDecodedMessages() {
+ return this.enableNRRForInboundDecodedMessages;
+ }
+
+ /**
+ * Set the value indicating whether to enable NRR for inbound decoded messages.
+ *
+ * @param enableNRRForInboundDecodedMessages the enableNRRForInboundDecodedMessages value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withEnableNRRForInboundDecodedMessages(boolean enableNRRForInboundDecodedMessages) {
+ this.enableNRRForInboundDecodedMessages = enableNRRForInboundDecodedMessages;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to enable NRR for outbound MDN.
+ *
+ * @return the enableNRRForOutboundMDN value
+ */
+ public boolean enableNRRForOutboundMDN() {
+ return this.enableNRRForOutboundMDN;
+ }
+
+ /**
+ * Set the value indicating whether to enable NRR for outbound MDN.
+ *
+ * @param enableNRRForOutboundMDN the enableNRRForOutboundMDN value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withEnableNRRForOutboundMDN(boolean enableNRRForOutboundMDN) {
+ this.enableNRRForOutboundMDN = enableNRRForOutboundMDN;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to enable NRR for outbound encoded messages.
+ *
+ * @return the enableNRRForOutboundEncodedMessages value
+ */
+ public boolean enableNRRForOutboundEncodedMessages() {
+ return this.enableNRRForOutboundEncodedMessages;
+ }
+
+ /**
+ * Set the value indicating whether to enable NRR for outbound encoded messages.
+ *
+ * @param enableNRRForOutboundEncodedMessages the enableNRRForOutboundEncodedMessages value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withEnableNRRForOutboundEncodedMessages(boolean enableNRRForOutboundEncodedMessages) {
+ this.enableNRRForOutboundEncodedMessages = enableNRRForOutboundEncodedMessages;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to enable NRR for outbound decoded messages.
+ *
+ * @return the enableNRRForOutboundDecodedMessages value
+ */
+ public boolean enableNRRForOutboundDecodedMessages() {
+ return this.enableNRRForOutboundDecodedMessages;
+ }
+
+ /**
+ * Set the value indicating whether to enable NRR for outbound decoded messages.
+ *
+ * @param enableNRRForOutboundDecodedMessages the enableNRRForOutboundDecodedMessages value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withEnableNRRForOutboundDecodedMessages(boolean enableNRRForOutboundDecodedMessages) {
+ this.enableNRRForOutboundDecodedMessages = enableNRRForOutboundDecodedMessages;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to enable NRR for inbound MDN.
+ *
+ * @return the enableNRRForInboundMDN value
+ */
+ public boolean enableNRRForInboundMDN() {
+ return this.enableNRRForInboundMDN;
+ }
+
+ /**
+ * Set the value indicating whether to enable NRR for inbound MDN.
+ *
+ * @param enableNRRForInboundMDN the enableNRRForInboundMDN value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withEnableNRRForInboundMDN(boolean enableNRRForInboundMDN) {
+ this.enableNRRForInboundMDN = enableNRRForInboundMDN;
+ return this;
+ }
+
+ /**
+ * Get the Sha2 algorithm format. Valid values are Sha2, ShaHashSize, ShaHyphenHashSize, Sha2UnderscoreHashSize.
+ *
+ * @return the sha2AlgorithmFormat value
+ */
+ public String sha2AlgorithmFormat() {
+ return this.sha2AlgorithmFormat;
+ }
+
+ /**
+ * Set the Sha2 algorithm format. Valid values are Sha2, ShaHashSize, ShaHyphenHashSize, Sha2UnderscoreHashSize.
+ *
+ * @param sha2AlgorithmFormat the sha2AlgorithmFormat value to set
+ * @return the AS2SecuritySettings object itself.
+ */
+ public AS2SecuritySettings withSha2AlgorithmFormat(String sha2AlgorithmFormat) {
+ this.sha2AlgorithmFormat = sha2AlgorithmFormat;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ValidationSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ValidationSettings.java
new file mode 100644
index 000000000000..86dafac17bce
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AS2ValidationSettings.java
@@ -0,0 +1,282 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The AS2 agreement validation settings.
+ */
+public class AS2ValidationSettings {
+ /**
+ * The value indicating whether to override incoming message properties
+ * with those in agreement.
+ */
+ @JsonProperty(value = "overrideMessageProperties", required = true)
+ private boolean overrideMessageProperties;
+
+ /**
+ * The value indicating whether the message has to be encrypted.
+ */
+ @JsonProperty(value = "encryptMessage", required = true)
+ private boolean encryptMessage;
+
+ /**
+ * The value indicating whether the message has to be signed.
+ */
+ @JsonProperty(value = "signMessage", required = true)
+ private boolean signMessage;
+
+ /**
+ * The value indicating whether the message has to be compressed.
+ */
+ @JsonProperty(value = "compressMessage", required = true)
+ private boolean compressMessage;
+
+ /**
+ * The value indicating whether to check for duplicate message.
+ */
+ @JsonProperty(value = "checkDuplicateMessage", required = true)
+ private boolean checkDuplicateMessage;
+
+ /**
+ * The number of days to look back for duplicate interchange.
+ */
+ @JsonProperty(value = "interchangeDuplicatesValidityDays", required = true)
+ private int interchangeDuplicatesValidityDays;
+
+ /**
+ * The value indicating whether to check for certificate revocation list on
+ * send.
+ */
+ @JsonProperty(value = "checkCertificateRevocationListOnSend", required = true)
+ private boolean checkCertificateRevocationListOnSend;
+
+ /**
+ * The value indicating whether to check for certificate revocation list on
+ * receive.
+ */
+ @JsonProperty(value = "checkCertificateRevocationListOnReceive", required = true)
+ private boolean checkCertificateRevocationListOnReceive;
+
+ /**
+ * The encryption algorithm. Possible values include: 'NotSpecified',
+ * 'None', 'DES3', 'RC2', 'AES128', 'AES192', 'AES256'.
+ */
+ @JsonProperty(value = "encryptionAlgorithm", required = true)
+ private EncryptionAlgorithm encryptionAlgorithm;
+
+ /**
+ * The signing algorithm. Possible values include: 'NotSpecified',
+ * 'Default', 'SHA1', 'SHA2256', 'SHA2384', 'SHA2512'.
+ */
+ @JsonProperty(value = "signingAlgorithm")
+ private SigningAlgorithm signingAlgorithm;
+
+ /**
+ * Get the value indicating whether to override incoming message properties with those in agreement.
+ *
+ * @return the overrideMessageProperties value
+ */
+ public boolean overrideMessageProperties() {
+ return this.overrideMessageProperties;
+ }
+
+ /**
+ * Set the value indicating whether to override incoming message properties with those in agreement.
+ *
+ * @param overrideMessageProperties the overrideMessageProperties value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withOverrideMessageProperties(boolean overrideMessageProperties) {
+ this.overrideMessageProperties = overrideMessageProperties;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether the message has to be encrypted.
+ *
+ * @return the encryptMessage value
+ */
+ public boolean encryptMessage() {
+ return this.encryptMessage;
+ }
+
+ /**
+ * Set the value indicating whether the message has to be encrypted.
+ *
+ * @param encryptMessage the encryptMessage value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withEncryptMessage(boolean encryptMessage) {
+ this.encryptMessage = encryptMessage;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether the message has to be signed.
+ *
+ * @return the signMessage value
+ */
+ public boolean signMessage() {
+ return this.signMessage;
+ }
+
+ /**
+ * Set the value indicating whether the message has to be signed.
+ *
+ * @param signMessage the signMessage value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withSignMessage(boolean signMessage) {
+ this.signMessage = signMessage;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether the message has to be compressed.
+ *
+ * @return the compressMessage value
+ */
+ public boolean compressMessage() {
+ return this.compressMessage;
+ }
+
+ /**
+ * Set the value indicating whether the message has to be compressed.
+ *
+ * @param compressMessage the compressMessage value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withCompressMessage(boolean compressMessage) {
+ this.compressMessage = compressMessage;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to check for duplicate message.
+ *
+ * @return the checkDuplicateMessage value
+ */
+ public boolean checkDuplicateMessage() {
+ return this.checkDuplicateMessage;
+ }
+
+ /**
+ * Set the value indicating whether to check for duplicate message.
+ *
+ * @param checkDuplicateMessage the checkDuplicateMessage value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withCheckDuplicateMessage(boolean checkDuplicateMessage) {
+ this.checkDuplicateMessage = checkDuplicateMessage;
+ return this;
+ }
+
+ /**
+ * Get the number of days to look back for duplicate interchange.
+ *
+ * @return the interchangeDuplicatesValidityDays value
+ */
+ public int interchangeDuplicatesValidityDays() {
+ return this.interchangeDuplicatesValidityDays;
+ }
+
+ /**
+ * Set the number of days to look back for duplicate interchange.
+ *
+ * @param interchangeDuplicatesValidityDays the interchangeDuplicatesValidityDays value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withInterchangeDuplicatesValidityDays(int interchangeDuplicatesValidityDays) {
+ this.interchangeDuplicatesValidityDays = interchangeDuplicatesValidityDays;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to check for certificate revocation list on send.
+ *
+ * @return the checkCertificateRevocationListOnSend value
+ */
+ public boolean checkCertificateRevocationListOnSend() {
+ return this.checkCertificateRevocationListOnSend;
+ }
+
+ /**
+ * Set the value indicating whether to check for certificate revocation list on send.
+ *
+ * @param checkCertificateRevocationListOnSend the checkCertificateRevocationListOnSend value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withCheckCertificateRevocationListOnSend(boolean checkCertificateRevocationListOnSend) {
+ this.checkCertificateRevocationListOnSend = checkCertificateRevocationListOnSend;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to check for certificate revocation list on receive.
+ *
+ * @return the checkCertificateRevocationListOnReceive value
+ */
+ public boolean checkCertificateRevocationListOnReceive() {
+ return this.checkCertificateRevocationListOnReceive;
+ }
+
+ /**
+ * Set the value indicating whether to check for certificate revocation list on receive.
+ *
+ * @param checkCertificateRevocationListOnReceive the checkCertificateRevocationListOnReceive value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withCheckCertificateRevocationListOnReceive(boolean checkCertificateRevocationListOnReceive) {
+ this.checkCertificateRevocationListOnReceive = checkCertificateRevocationListOnReceive;
+ return this;
+ }
+
+ /**
+ * Get the encryption algorithm. Possible values include: 'NotSpecified', 'None', 'DES3', 'RC2', 'AES128', 'AES192', 'AES256'.
+ *
+ * @return the encryptionAlgorithm value
+ */
+ public EncryptionAlgorithm encryptionAlgorithm() {
+ return this.encryptionAlgorithm;
+ }
+
+ /**
+ * Set the encryption algorithm. Possible values include: 'NotSpecified', 'None', 'DES3', 'RC2', 'AES128', 'AES192', 'AES256'.
+ *
+ * @param encryptionAlgorithm the encryptionAlgorithm value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withEncryptionAlgorithm(EncryptionAlgorithm encryptionAlgorithm) {
+ this.encryptionAlgorithm = encryptionAlgorithm;
+ return this;
+ }
+
+ /**
+ * Get the signing algorithm. Possible values include: 'NotSpecified', 'Default', 'SHA1', 'SHA2256', 'SHA2384', 'SHA2512'.
+ *
+ * @return the signingAlgorithm value
+ */
+ public SigningAlgorithm signingAlgorithm() {
+ return this.signingAlgorithm;
+ }
+
+ /**
+ * Set the signing algorithm. Possible values include: 'NotSpecified', 'Default', 'SHA1', 'SHA2256', 'SHA2384', 'SHA2512'.
+ *
+ * @param signingAlgorithm the signingAlgorithm value to set
+ * @return the AS2ValidationSettings object itself.
+ */
+ public AS2ValidationSettings withSigningAlgorithm(SigningAlgorithm signingAlgorithm) {
+ this.signingAlgorithm = signingAlgorithm;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowRequestHistory.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowRequestHistory.java
new file mode 100644
index 000000000000..c9be8c5d062c
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowRequestHistory.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.RequestHistoryInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+
+/**
+ * Type representing ActionRunWorkflowRequestHistory.
+ */
+public interface ActionRunWorkflowRequestHistory extends HasInner, Indexable, Refreshable, HasManager {
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the properties value.
+ */
+ RequestHistoryProperties properties();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowWorkflowRunActionRepetitionDefinition.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowWorkflowRunActionRepetitionDefinition.java
new file mode 100644
index 000000000000..9bd2a9fa216c
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowWorkflowRunActionRepetitionDefinition.java
@@ -0,0 +1,125 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.WorkflowRunActionRepetitionDefinitionInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.LogicManager;
+import org.joda.time.DateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Type representing ActionRunWorkflowWorkflowRunActionRepetitionDefinition.
+ */
+public interface ActionRunWorkflowWorkflowRunActionRepetitionDefinition extends HasInner, Indexable, Refreshable, HasManager {
+ /**
+ * @return the code value.
+ */
+ String code();
+
+ /**
+ * @return the correlation value.
+ */
+ RunActionCorrelation correlation();
+
+ /**
+ * @return the endTime value.
+ */
+ DateTime endTime();
+
+ /**
+ * @return the error value.
+ */
+ Object error();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the inputs value.
+ */
+ Object inputs();
+
+ /**
+ * @return the inputsLink value.
+ */
+ ContentLink inputsLink();
+
+ /**
+ * @return the iterationCount value.
+ */
+ Integer iterationCount();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the outputs value.
+ */
+ Object outputs();
+
+ /**
+ * @return the outputsLink value.
+ */
+ ContentLink outputsLink();
+
+ /**
+ * @return the repetitionIndexes value.
+ */
+ List repetitionIndexes();
+
+ /**
+ * @return the retryHistory value.
+ */
+ List retryHistory();
+
+ /**
+ * @return the startTime value.
+ */
+ DateTime startTime();
+
+ /**
+ * @return the status value.
+ */
+ WorkflowStatus status();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the trackedProperties value.
+ */
+ Object trackedProperties();
+
+ /**
+ * @return the trackingId value.
+ */
+ String trackingId();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowWorkflowRunActionRepetitionDefinitionModel.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowWorkflowRunActionRepetitionDefinitionModel.java
new file mode 100644
index 000000000000..9838e9974f09
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ActionRunWorkflowWorkflowRunActionRepetitionDefinitionModel.java
@@ -0,0 +1,125 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.WorkflowRunActionRepetitionDefinitionInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.LogicManager;
+import org.joda.time.DateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Type representing ActionRunWorkflowWorkflowRunActionRepetitionDefinitionModel.
+ */
+public interface ActionRunWorkflowWorkflowRunActionRepetitionDefinitionModel extends HasInner, Indexable, Refreshable, HasManager {
+ /**
+ * @return the code value.
+ */
+ String code();
+
+ /**
+ * @return the correlation value.
+ */
+ RunActionCorrelation correlation();
+
+ /**
+ * @return the endTime value.
+ */
+ DateTime endTime();
+
+ /**
+ * @return the error value.
+ */
+ Object error();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the inputs value.
+ */
+ Object inputs();
+
+ /**
+ * @return the inputsLink value.
+ */
+ ContentLink inputsLink();
+
+ /**
+ * @return the iterationCount value.
+ */
+ Integer iterationCount();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the outputs value.
+ */
+ Object outputs();
+
+ /**
+ * @return the outputsLink value.
+ */
+ ContentLink outputsLink();
+
+ /**
+ * @return the repetitionIndexes value.
+ */
+ List repetitionIndexes();
+
+ /**
+ * @return the retryHistory value.
+ */
+ List retryHistory();
+
+ /**
+ * @return the startTime value.
+ */
+ DateTime startTime();
+
+ /**
+ * @return the status value.
+ */
+ WorkflowStatus status();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the trackedProperties value.
+ */
+ Object trackedProperties();
+
+ /**
+ * @return the trackingId value.
+ */
+ String trackingId();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AgreementContent.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AgreementContent.java
new file mode 100644
index 000000000000..64974e595297
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AgreementContent.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account agreement content.
+ */
+public class AgreementContent {
+ /**
+ * The AS2 agreement content.
+ */
+ @JsonProperty(value = "aS2")
+ private AS2AgreementContent aS2;
+
+ /**
+ * The X12 agreement content.
+ */
+ @JsonProperty(value = "x12")
+ private X12AgreementContent x12;
+
+ /**
+ * The EDIFACT agreement content.
+ */
+ @JsonProperty(value = "edifact")
+ private EdifactAgreementContent edifact;
+
+ /**
+ * Get the AS2 agreement content.
+ *
+ * @return the aS2 value
+ */
+ public AS2AgreementContent aS2() {
+ return this.aS2;
+ }
+
+ /**
+ * Set the AS2 agreement content.
+ *
+ * @param aS2 the aS2 value to set
+ * @return the AgreementContent object itself.
+ */
+ public AgreementContent withAS2(AS2AgreementContent aS2) {
+ this.aS2 = aS2;
+ return this;
+ }
+
+ /**
+ * Get the X12 agreement content.
+ *
+ * @return the x12 value
+ */
+ public X12AgreementContent x12() {
+ return this.x12;
+ }
+
+ /**
+ * Set the X12 agreement content.
+ *
+ * @param x12 the x12 value to set
+ * @return the AgreementContent object itself.
+ */
+ public AgreementContent withX12(X12AgreementContent x12) {
+ this.x12 = x12;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT agreement content.
+ *
+ * @return the edifact value
+ */
+ public EdifactAgreementContent edifact() {
+ return this.edifact;
+ }
+
+ /**
+ * Set the EDIFACT agreement content.
+ *
+ * @param edifact the edifact value to set
+ * @return the AgreementContent object itself.
+ */
+ public AgreementContent withEdifact(EdifactAgreementContent edifact) {
+ this.edifact = edifact;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AgreementType.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AgreementType.java
new file mode 100644
index 000000000000..bf3227cded35
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AgreementType.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for AgreementType.
+ */
+public enum AgreementType {
+ /** Enum value NotSpecified. */
+ NOT_SPECIFIED("NotSpecified"),
+
+ /** Enum value AS2. */
+ AS2("AS2"),
+
+ /** Enum value X12. */
+ X12("X12"),
+
+ /** Enum value Edifact. */
+ EDIFACT("Edifact");
+
+ /** The actual serialized value for a AgreementType instance. */
+ private String value;
+
+ AgreementType(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a AgreementType instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed AgreementType object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static AgreementType fromString(String value) {
+ AgreementType[] items = AgreementType.values();
+ for (AgreementType item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterMetadata.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterMetadata.java
new file mode 100644
index 000000000000..e6a45e534ebf
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterMetadata.java
@@ -0,0 +1,148 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The API deployment parameter metadata.
+ */
+public class ApiDeploymentParameterMetadata {
+ /**
+ * The type.
+ */
+ @JsonProperty(value = "type")
+ private String type;
+
+ /**
+ * Indicates whether its required.
+ */
+ @JsonProperty(value = "isRequired")
+ private Boolean isRequired;
+
+ /**
+ * The display name.
+ */
+ @JsonProperty(value = "displayName")
+ private String displayName;
+
+ /**
+ * The description.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /**
+ * The visibility. Possible values include: 'NotSpecified', 'Default',
+ * 'Internal'.
+ */
+ @JsonProperty(value = "visibility")
+ private ApiDeploymentParameterVisibility visibility;
+
+ /**
+ * Get the type.
+ *
+ * @return the type value
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Set the type.
+ *
+ * @param type the type value to set
+ * @return the ApiDeploymentParameterMetadata object itself.
+ */
+ public ApiDeploymentParameterMetadata withType(String type) {
+ this.type = type;
+ return this;
+ }
+
+ /**
+ * Get indicates whether its required.
+ *
+ * @return the isRequired value
+ */
+ public Boolean isRequired() {
+ return this.isRequired;
+ }
+
+ /**
+ * Set indicates whether its required.
+ *
+ * @param isRequired the isRequired value to set
+ * @return the ApiDeploymentParameterMetadata object itself.
+ */
+ public ApiDeploymentParameterMetadata withIsRequired(Boolean isRequired) {
+ this.isRequired = isRequired;
+ return this;
+ }
+
+ /**
+ * Get the display name.
+ *
+ * @return the displayName value
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Set the display name.
+ *
+ * @param displayName the displayName value to set
+ * @return the ApiDeploymentParameterMetadata object itself.
+ */
+ public ApiDeploymentParameterMetadata withDisplayName(String displayName) {
+ this.displayName = displayName;
+ return this;
+ }
+
+ /**
+ * Get the description.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description.
+ *
+ * @param description the description value to set
+ * @return the ApiDeploymentParameterMetadata object itself.
+ */
+ public ApiDeploymentParameterMetadata withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the visibility. Possible values include: 'NotSpecified', 'Default', 'Internal'.
+ *
+ * @return the visibility value
+ */
+ public ApiDeploymentParameterVisibility visibility() {
+ return this.visibility;
+ }
+
+ /**
+ * Set the visibility. Possible values include: 'NotSpecified', 'Default', 'Internal'.
+ *
+ * @param visibility the visibility value to set
+ * @return the ApiDeploymentParameterMetadata object itself.
+ */
+ public ApiDeploymentParameterMetadata withVisibility(ApiDeploymentParameterVisibility visibility) {
+ this.visibility = visibility;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterMetadataSet.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterMetadataSet.java
new file mode 100644
index 000000000000..1b76f2e62db7
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterMetadataSet.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The API deployment parameters metadata.
+ */
+public class ApiDeploymentParameterMetadataSet {
+ /**
+ * The package content link parameter.
+ */
+ @JsonProperty(value = "packageContentLink")
+ private ApiDeploymentParameterMetadata packageContentLink;
+
+ /**
+ * The package content link parameter.
+ */
+ @JsonProperty(value = "redisCacheConnectionString")
+ private ApiDeploymentParameterMetadata redisCacheConnectionString;
+
+ /**
+ * Get the package content link parameter.
+ *
+ * @return the packageContentLink value
+ */
+ public ApiDeploymentParameterMetadata packageContentLink() {
+ return this.packageContentLink;
+ }
+
+ /**
+ * Set the package content link parameter.
+ *
+ * @param packageContentLink the packageContentLink value to set
+ * @return the ApiDeploymentParameterMetadataSet object itself.
+ */
+ public ApiDeploymentParameterMetadataSet withPackageContentLink(ApiDeploymentParameterMetadata packageContentLink) {
+ this.packageContentLink = packageContentLink;
+ return this;
+ }
+
+ /**
+ * Get the package content link parameter.
+ *
+ * @return the redisCacheConnectionString value
+ */
+ public ApiDeploymentParameterMetadata redisCacheConnectionString() {
+ return this.redisCacheConnectionString;
+ }
+
+ /**
+ * Set the package content link parameter.
+ *
+ * @param redisCacheConnectionString the redisCacheConnectionString value to set
+ * @return the ApiDeploymentParameterMetadataSet object itself.
+ */
+ public ApiDeploymentParameterMetadataSet withRedisCacheConnectionString(ApiDeploymentParameterMetadata redisCacheConnectionString) {
+ this.redisCacheConnectionString = redisCacheConnectionString;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterVisibility.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterVisibility.java
new file mode 100644
index 000000000000..330cd25d6788
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiDeploymentParameterVisibility.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ApiDeploymentParameterVisibility.
+ */
+public final class ApiDeploymentParameterVisibility extends ExpandableStringEnum {
+ /** Static value NotSpecified for ApiDeploymentParameterVisibility. */
+ public static final ApiDeploymentParameterVisibility NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value Default for ApiDeploymentParameterVisibility. */
+ public static final ApiDeploymentParameterVisibility DEFAULT = fromString("Default");
+
+ /** Static value Internal for ApiDeploymentParameterVisibility. */
+ public static final ApiDeploymentParameterVisibility INTERNAL = fromString("Internal");
+
+ /**
+ * Creates or finds a ApiDeploymentParameterVisibility from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ApiDeploymentParameterVisibility
+ */
+ @JsonCreator
+ public static ApiDeploymentParameterVisibility fromString(String name) {
+ return fromString(name, ApiDeploymentParameterVisibility.class);
+ }
+
+ /**
+ * @return known ApiDeploymentParameterVisibility values
+ */
+ public static Collection values() {
+ return values(ApiDeploymentParameterVisibility.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperation.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperation.java
new file mode 100644
index 000000000000..9e826949d1f1
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperation.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.ApiOperationInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+
+/**
+ * Type representing ApiOperation.
+ */
+public interface ApiOperation extends HasInner, HasManager {
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the properties value.
+ */
+ ApiOperationPropertiesDefinition properties();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperationAnnotation.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperationAnnotation.java
new file mode 100644
index 000000000000..8e81c24b806f
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperationAnnotation.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Api Operation Annotation.
+ */
+public class ApiOperationAnnotation {
+ /**
+ * Possible values include: 'NotSpecified', 'Preview', 'Production'.
+ */
+ @JsonProperty(value = "status")
+ private StatusAnnotation status;
+
+ /**
+ * The family.
+ */
+ @JsonProperty(value = "family")
+ private String family;
+
+ /**
+ * The revision.
+ */
+ @JsonProperty(value = "revision")
+ private Integer revision;
+
+ /**
+ * Get possible values include: 'NotSpecified', 'Preview', 'Production'.
+ *
+ * @return the status value
+ */
+ public StatusAnnotation status() {
+ return this.status;
+ }
+
+ /**
+ * Set possible values include: 'NotSpecified', 'Preview', 'Production'.
+ *
+ * @param status the status value to set
+ * @return the ApiOperationAnnotation object itself.
+ */
+ public ApiOperationAnnotation withStatus(StatusAnnotation status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the family.
+ *
+ * @return the family value
+ */
+ public String family() {
+ return this.family;
+ }
+
+ /**
+ * Set the family.
+ *
+ * @param family the family value to set
+ * @return the ApiOperationAnnotation object itself.
+ */
+ public ApiOperationAnnotation withFamily(String family) {
+ this.family = family;
+ return this;
+ }
+
+ /**
+ * Get the revision.
+ *
+ * @return the revision value
+ */
+ public Integer revision() {
+ return this.revision;
+ }
+
+ /**
+ * Set the revision.
+ *
+ * @param revision the revision value to set
+ * @return the ApiOperationAnnotation object itself.
+ */
+ public ApiOperationAnnotation withRevision(Integer revision) {
+ this.revision = revision;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperationPropertiesDefinition.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperationPropertiesDefinition.java
new file mode 100644
index 000000000000..fdd364491dd6
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiOperationPropertiesDefinition.java
@@ -0,0 +1,330 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The api operations properties.
+ */
+public class ApiOperationPropertiesDefinition {
+ /**
+ * The summary of the api operation.
+ */
+ @JsonProperty(value = "summary")
+ private String summary;
+
+ /**
+ * The description of the api operation.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /**
+ * The visibility of the api operation.
+ */
+ @JsonProperty(value = "visibility")
+ private String visibility;
+
+ /**
+ * The trigger type of api operation.
+ */
+ @JsonProperty(value = "trigger")
+ private String trigger;
+
+ /**
+ * The trigger hint for the api operation.
+ */
+ @JsonProperty(value = "triggerHint")
+ private String triggerHint;
+
+ /**
+ * Indicates whether the api operation is pageable.
+ */
+ @JsonProperty(value = "pageable")
+ private Boolean pageable;
+
+ /**
+ * The annotation of api operation.
+ */
+ @JsonProperty(value = "annotation")
+ private ApiOperationAnnotation annotation;
+
+ /**
+ * The api reference.
+ */
+ @JsonProperty(value = "api")
+ private ApiReference api;
+
+ /**
+ * The operation inputs definition schema.
+ */
+ @JsonProperty(value = "inputsDefinition")
+ private SwaggerSchema inputsDefinition;
+
+ /**
+ * The operation responses definition schemas.
+ */
+ @JsonProperty(value = "responsesDefinition")
+ private Map responsesDefinition;
+
+ /**
+ * Indicates whether the API operation is webhook or not.
+ */
+ @JsonProperty(value = "isWebhook")
+ private Boolean isWebhook;
+
+ /**
+ * Indicates whether the API operation is notification or not.
+ */
+ @JsonProperty(value = "isNotification")
+ private Boolean isNotification;
+
+ /**
+ * Get the summary of the api operation.
+ *
+ * @return the summary value
+ */
+ public String summary() {
+ return this.summary;
+ }
+
+ /**
+ * Set the summary of the api operation.
+ *
+ * @param summary the summary value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withSummary(String summary) {
+ this.summary = summary;
+ return this;
+ }
+
+ /**
+ * Get the description of the api operation.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description of the api operation.
+ *
+ * @param description the description value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the visibility of the api operation.
+ *
+ * @return the visibility value
+ */
+ public String visibility() {
+ return this.visibility;
+ }
+
+ /**
+ * Set the visibility of the api operation.
+ *
+ * @param visibility the visibility value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withVisibility(String visibility) {
+ this.visibility = visibility;
+ return this;
+ }
+
+ /**
+ * Get the trigger type of api operation.
+ *
+ * @return the trigger value
+ */
+ public String trigger() {
+ return this.trigger;
+ }
+
+ /**
+ * Set the trigger type of api operation.
+ *
+ * @param trigger the trigger value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withTrigger(String trigger) {
+ this.trigger = trigger;
+ return this;
+ }
+
+ /**
+ * Get the trigger hint for the api operation.
+ *
+ * @return the triggerHint value
+ */
+ public String triggerHint() {
+ return this.triggerHint;
+ }
+
+ /**
+ * Set the trigger hint for the api operation.
+ *
+ * @param triggerHint the triggerHint value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withTriggerHint(String triggerHint) {
+ this.triggerHint = triggerHint;
+ return this;
+ }
+
+ /**
+ * Get indicates whether the api operation is pageable.
+ *
+ * @return the pageable value
+ */
+ public Boolean pageable() {
+ return this.pageable;
+ }
+
+ /**
+ * Set indicates whether the api operation is pageable.
+ *
+ * @param pageable the pageable value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withPageable(Boolean pageable) {
+ this.pageable = pageable;
+ return this;
+ }
+
+ /**
+ * Get the annotation of api operation.
+ *
+ * @return the annotation value
+ */
+ public ApiOperationAnnotation annotation() {
+ return this.annotation;
+ }
+
+ /**
+ * Set the annotation of api operation.
+ *
+ * @param annotation the annotation value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withAnnotation(ApiOperationAnnotation annotation) {
+ this.annotation = annotation;
+ return this;
+ }
+
+ /**
+ * Get the api reference.
+ *
+ * @return the api value
+ */
+ public ApiReference api() {
+ return this.api;
+ }
+
+ /**
+ * Set the api reference.
+ *
+ * @param api the api value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withApi(ApiReference api) {
+ this.api = api;
+ return this;
+ }
+
+ /**
+ * Get the operation inputs definition schema.
+ *
+ * @return the inputsDefinition value
+ */
+ public SwaggerSchema inputsDefinition() {
+ return this.inputsDefinition;
+ }
+
+ /**
+ * Set the operation inputs definition schema.
+ *
+ * @param inputsDefinition the inputsDefinition value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withInputsDefinition(SwaggerSchema inputsDefinition) {
+ this.inputsDefinition = inputsDefinition;
+ return this;
+ }
+
+ /**
+ * Get the operation responses definition schemas.
+ *
+ * @return the responsesDefinition value
+ */
+ public Map responsesDefinition() {
+ return this.responsesDefinition;
+ }
+
+ /**
+ * Set the operation responses definition schemas.
+ *
+ * @param responsesDefinition the responsesDefinition value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withResponsesDefinition(Map responsesDefinition) {
+ this.responsesDefinition = responsesDefinition;
+ return this;
+ }
+
+ /**
+ * Get indicates whether the API operation is webhook or not.
+ *
+ * @return the isWebhook value
+ */
+ public Boolean isWebhook() {
+ return this.isWebhook;
+ }
+
+ /**
+ * Set indicates whether the API operation is webhook or not.
+ *
+ * @param isWebhook the isWebhook value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withIsWebhook(Boolean isWebhook) {
+ this.isWebhook = isWebhook;
+ return this;
+ }
+
+ /**
+ * Get indicates whether the API operation is notification or not.
+ *
+ * @return the isNotification value
+ */
+ public Boolean isNotification() {
+ return this.isNotification;
+ }
+
+ /**
+ * Set indicates whether the API operation is notification or not.
+ *
+ * @param isNotification the isNotification value to set
+ * @return the ApiOperationPropertiesDefinition object itself.
+ */
+ public ApiOperationPropertiesDefinition withIsNotification(Boolean isNotification) {
+ this.isNotification = isNotification;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiReference.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiReference.java
new file mode 100644
index 000000000000..8bc2211c4d5a
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiReference.java
@@ -0,0 +1,200 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Api reference.
+ */
+public class ApiReference extends ResourceReference {
+ /**
+ * The display name of the api.
+ */
+ @JsonProperty(value = "displayName")
+ private String displayName;
+
+ /**
+ * The description of the api.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /**
+ * The icon uri of the api.
+ */
+ @JsonProperty(value = "iconUri")
+ private String iconUri;
+
+ /**
+ * The swagger of the api.
+ */
+ @JsonProperty(value = "swagger")
+ private Object swagger;
+
+ /**
+ * The brand color of the api.
+ */
+ @JsonProperty(value = "brandColor")
+ private String brandColor;
+
+ /**
+ * The tier. Possible values include: 'NotSpecified', 'Enterprise',
+ * 'Standard', 'Premium'.
+ */
+ @JsonProperty(value = "category")
+ private ApiTier category;
+
+ /**
+ * The integration service environment reference.
+ */
+ @JsonProperty(value = "integrationServiceEnvironment")
+ private ResourceReference integrationServiceEnvironment;
+
+ /**
+ * Get the display name of the api.
+ *
+ * @return the displayName value
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Set the display name of the api.
+ *
+ * @param displayName the displayName value to set
+ * @return the ApiReference object itself.
+ */
+ public ApiReference withDisplayName(String displayName) {
+ this.displayName = displayName;
+ return this;
+ }
+
+ /**
+ * Get the description of the api.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description of the api.
+ *
+ * @param description the description value to set
+ * @return the ApiReference object itself.
+ */
+ public ApiReference withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the icon uri of the api.
+ *
+ * @return the iconUri value
+ */
+ public String iconUri() {
+ return this.iconUri;
+ }
+
+ /**
+ * Set the icon uri of the api.
+ *
+ * @param iconUri the iconUri value to set
+ * @return the ApiReference object itself.
+ */
+ public ApiReference withIconUri(String iconUri) {
+ this.iconUri = iconUri;
+ return this;
+ }
+
+ /**
+ * Get the swagger of the api.
+ *
+ * @return the swagger value
+ */
+ public Object swagger() {
+ return this.swagger;
+ }
+
+ /**
+ * Set the swagger of the api.
+ *
+ * @param swagger the swagger value to set
+ * @return the ApiReference object itself.
+ */
+ public ApiReference withSwagger(Object swagger) {
+ this.swagger = swagger;
+ return this;
+ }
+
+ /**
+ * Get the brand color of the api.
+ *
+ * @return the brandColor value
+ */
+ public String brandColor() {
+ return this.brandColor;
+ }
+
+ /**
+ * Set the brand color of the api.
+ *
+ * @param brandColor the brandColor value to set
+ * @return the ApiReference object itself.
+ */
+ public ApiReference withBrandColor(String brandColor) {
+ this.brandColor = brandColor;
+ return this;
+ }
+
+ /**
+ * Get the tier. Possible values include: 'NotSpecified', 'Enterprise', 'Standard', 'Premium'.
+ *
+ * @return the category value
+ */
+ public ApiTier category() {
+ return this.category;
+ }
+
+ /**
+ * Set the tier. Possible values include: 'NotSpecified', 'Enterprise', 'Standard', 'Premium'.
+ *
+ * @param category the category value to set
+ * @return the ApiReference object itself.
+ */
+ public ApiReference withCategory(ApiTier category) {
+ this.category = category;
+ return this;
+ }
+
+ /**
+ * Get the integration service environment reference.
+ *
+ * @return the integrationServiceEnvironment value
+ */
+ public ResourceReference integrationServiceEnvironment() {
+ return this.integrationServiceEnvironment;
+ }
+
+ /**
+ * Set the integration service environment reference.
+ *
+ * @param integrationServiceEnvironment the integrationServiceEnvironment value to set
+ * @return the ApiReference object itself.
+ */
+ public ApiReference withIntegrationServiceEnvironment(ResourceReference integrationServiceEnvironment) {
+ this.integrationServiceEnvironment = integrationServiceEnvironment;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceBackendService.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceBackendService.java
new file mode 100644
index 000000000000..34cb401c8acd
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceBackendService.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The API backend service.
+ */
+public class ApiResourceBackendService {
+ /**
+ * The service URL.
+ */
+ @JsonProperty(value = "serviceUrl")
+ private String serviceUrl;
+
+ /**
+ * Get the service URL.
+ *
+ * @return the serviceUrl value
+ */
+ public String serviceUrl() {
+ return this.serviceUrl;
+ }
+
+ /**
+ * Set the service URL.
+ *
+ * @param serviceUrl the serviceUrl value to set
+ * @return the ApiResourceBackendService object itself.
+ */
+ public ApiResourceBackendService withServiceUrl(String serviceUrl) {
+ this.serviceUrl = serviceUrl;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceDefinitions.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceDefinitions.java
new file mode 100644
index 000000000000..dc1100999995
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceDefinitions.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Api resource definition.
+ */
+public class ApiResourceDefinitions {
+ /**
+ * The original swagger url.
+ */
+ @JsonProperty(value = "originalSwaggerUrl")
+ private String originalSwaggerUrl;
+
+ /**
+ * The modified swagger url.
+ */
+ @JsonProperty(value = "modifiedSwaggerUrl")
+ private String modifiedSwaggerUrl;
+
+ /**
+ * Get the original swagger url.
+ *
+ * @return the originalSwaggerUrl value
+ */
+ public String originalSwaggerUrl() {
+ return this.originalSwaggerUrl;
+ }
+
+ /**
+ * Set the original swagger url.
+ *
+ * @param originalSwaggerUrl the originalSwaggerUrl value to set
+ * @return the ApiResourceDefinitions object itself.
+ */
+ public ApiResourceDefinitions withOriginalSwaggerUrl(String originalSwaggerUrl) {
+ this.originalSwaggerUrl = originalSwaggerUrl;
+ return this;
+ }
+
+ /**
+ * Get the modified swagger url.
+ *
+ * @return the modifiedSwaggerUrl value
+ */
+ public String modifiedSwaggerUrl() {
+ return this.modifiedSwaggerUrl;
+ }
+
+ /**
+ * Set the modified swagger url.
+ *
+ * @param modifiedSwaggerUrl the modifiedSwaggerUrl value to set
+ * @return the ApiResourceDefinitions object itself.
+ */
+ public ApiResourceDefinitions withModifiedSwaggerUrl(String modifiedSwaggerUrl) {
+ this.modifiedSwaggerUrl = modifiedSwaggerUrl;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceGeneralInformation.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceGeneralInformation.java
new file mode 100644
index 000000000000..7581cdb5ab31
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceGeneralInformation.java
@@ -0,0 +1,174 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The API general information.
+ */
+public class ApiResourceGeneralInformation {
+ /**
+ * The icon url.
+ */
+ @JsonProperty(value = "iconUrl")
+ private String iconUrl;
+
+ /**
+ * The display name.
+ */
+ @JsonProperty(value = "displayName")
+ private String displayName;
+
+ /**
+ * The description.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /**
+ * The terms of use url.
+ */
+ @JsonProperty(value = "termsOfUseUrl")
+ private String termsOfUseUrl;
+
+ /**
+ * The release tag.
+ */
+ @JsonProperty(value = "releaseTag")
+ private String releaseTag;
+
+ /**
+ * The tier. Possible values include: 'NotSpecified', 'Enterprise',
+ * 'Standard', 'Premium'.
+ */
+ @JsonProperty(value = "tier")
+ private ApiTier tier;
+
+ /**
+ * Get the icon url.
+ *
+ * @return the iconUrl value
+ */
+ public String iconUrl() {
+ return this.iconUrl;
+ }
+
+ /**
+ * Set the icon url.
+ *
+ * @param iconUrl the iconUrl value to set
+ * @return the ApiResourceGeneralInformation object itself.
+ */
+ public ApiResourceGeneralInformation withIconUrl(String iconUrl) {
+ this.iconUrl = iconUrl;
+ return this;
+ }
+
+ /**
+ * Get the display name.
+ *
+ * @return the displayName value
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Set the display name.
+ *
+ * @param displayName the displayName value to set
+ * @return the ApiResourceGeneralInformation object itself.
+ */
+ public ApiResourceGeneralInformation withDisplayName(String displayName) {
+ this.displayName = displayName;
+ return this;
+ }
+
+ /**
+ * Get the description.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description.
+ *
+ * @param description the description value to set
+ * @return the ApiResourceGeneralInformation object itself.
+ */
+ public ApiResourceGeneralInformation withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the terms of use url.
+ *
+ * @return the termsOfUseUrl value
+ */
+ public String termsOfUseUrl() {
+ return this.termsOfUseUrl;
+ }
+
+ /**
+ * Set the terms of use url.
+ *
+ * @param termsOfUseUrl the termsOfUseUrl value to set
+ * @return the ApiResourceGeneralInformation object itself.
+ */
+ public ApiResourceGeneralInformation withTermsOfUseUrl(String termsOfUseUrl) {
+ this.termsOfUseUrl = termsOfUseUrl;
+ return this;
+ }
+
+ /**
+ * Get the release tag.
+ *
+ * @return the releaseTag value
+ */
+ public String releaseTag() {
+ return this.releaseTag;
+ }
+
+ /**
+ * Set the release tag.
+ *
+ * @param releaseTag the releaseTag value to set
+ * @return the ApiResourceGeneralInformation object itself.
+ */
+ public ApiResourceGeneralInformation withReleaseTag(String releaseTag) {
+ this.releaseTag = releaseTag;
+ return this;
+ }
+
+ /**
+ * Get the tier. Possible values include: 'NotSpecified', 'Enterprise', 'Standard', 'Premium'.
+ *
+ * @return the tier value
+ */
+ public ApiTier tier() {
+ return this.tier;
+ }
+
+ /**
+ * Set the tier. Possible values include: 'NotSpecified', 'Enterprise', 'Standard', 'Premium'.
+ *
+ * @param tier the tier value to set
+ * @return the ApiResourceGeneralInformation object itself.
+ */
+ public ApiResourceGeneralInformation withTier(ApiTier tier) {
+ this.tier = tier;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceMetadata.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceMetadata.java
new file mode 100644
index 000000000000..d55ad933dc88
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceMetadata.java
@@ -0,0 +1,283 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The api resource metadata.
+ */
+public class ApiResourceMetadata {
+ /**
+ * The source.
+ */
+ @JsonProperty(value = "source")
+ private String source;
+
+ /**
+ * The brand color.
+ */
+ @JsonProperty(value = "brandColor")
+ private String brandColor;
+
+ /**
+ * The hide key.
+ */
+ @JsonProperty(value = "hideKey")
+ private String hideKey;
+
+ /**
+ * The tags.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * The api type. Possible values include: 'NotSpecified', 'Rest', 'Soap'.
+ */
+ @JsonProperty(value = "ApiType")
+ private ApiType apiType;
+
+ /**
+ * The WSDL service.
+ */
+ @JsonProperty(value = "wsdlService")
+ private WsdlService wsdlService;
+
+ /**
+ * The WSDL import method. Possible values include: 'NotSpecified',
+ * 'SoapToRest', 'SoapPassThrough'.
+ */
+ @JsonProperty(value = "wsdlImportMethod")
+ private WsdlImportMethod wsdlImportMethod;
+
+ /**
+ * The connection type.
+ */
+ @JsonProperty(value = "connectionType")
+ private String connectionType;
+
+ /**
+ * The provisioning state. Possible values include: 'NotSpecified',
+ * 'Accepted', 'Running', 'Ready', 'Creating', 'Created', 'Deleting',
+ * 'Deleted', 'Canceled', 'Failed', 'Succeeded', 'Moving', 'Updating',
+ * 'Registering', 'Registered', 'Unregistering', 'Unregistered',
+ * 'Completed', 'Renewing', 'Pending', 'Waiting', 'InProgress'.
+ */
+ @JsonProperty(value = "provisioningState")
+ private WorkflowProvisioningState provisioningState;
+
+ /**
+ * The connector deployment parameters metadata.
+ */
+ @JsonProperty(value = "deploymentParameters")
+ private ApiDeploymentParameterMetadataSet deploymentParameters;
+
+ /**
+ * Get the source.
+ *
+ * @return the source value
+ */
+ public String source() {
+ return this.source;
+ }
+
+ /**
+ * Set the source.
+ *
+ * @param source the source value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withSource(String source) {
+ this.source = source;
+ return this;
+ }
+
+ /**
+ * Get the brand color.
+ *
+ * @return the brandColor value
+ */
+ public String brandColor() {
+ return this.brandColor;
+ }
+
+ /**
+ * Set the brand color.
+ *
+ * @param brandColor the brandColor value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withBrandColor(String brandColor) {
+ this.brandColor = brandColor;
+ return this;
+ }
+
+ /**
+ * Get the hide key.
+ *
+ * @return the hideKey value
+ */
+ public String hideKey() {
+ return this.hideKey;
+ }
+
+ /**
+ * Set the hide key.
+ *
+ * @param hideKey the hideKey value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withHideKey(String hideKey) {
+ this.hideKey = hideKey;
+ return this;
+ }
+
+ /**
+ * Get the tags.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set the tags.
+ *
+ * @param tags the tags value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+ /**
+ * Get the api type. Possible values include: 'NotSpecified', 'Rest', 'Soap'.
+ *
+ * @return the apiType value
+ */
+ public ApiType apiType() {
+ return this.apiType;
+ }
+
+ /**
+ * Set the api type. Possible values include: 'NotSpecified', 'Rest', 'Soap'.
+ *
+ * @param apiType the apiType value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withApiType(ApiType apiType) {
+ this.apiType = apiType;
+ return this;
+ }
+
+ /**
+ * Get the WSDL service.
+ *
+ * @return the wsdlService value
+ */
+ public WsdlService wsdlService() {
+ return this.wsdlService;
+ }
+
+ /**
+ * Set the WSDL service.
+ *
+ * @param wsdlService the wsdlService value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withWsdlService(WsdlService wsdlService) {
+ this.wsdlService = wsdlService;
+ return this;
+ }
+
+ /**
+ * Get the WSDL import method. Possible values include: 'NotSpecified', 'SoapToRest', 'SoapPassThrough'.
+ *
+ * @return the wsdlImportMethod value
+ */
+ public WsdlImportMethod wsdlImportMethod() {
+ return this.wsdlImportMethod;
+ }
+
+ /**
+ * Set the WSDL import method. Possible values include: 'NotSpecified', 'SoapToRest', 'SoapPassThrough'.
+ *
+ * @param wsdlImportMethod the wsdlImportMethod value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withWsdlImportMethod(WsdlImportMethod wsdlImportMethod) {
+ this.wsdlImportMethod = wsdlImportMethod;
+ return this;
+ }
+
+ /**
+ * Get the connection type.
+ *
+ * @return the connectionType value
+ */
+ public String connectionType() {
+ return this.connectionType;
+ }
+
+ /**
+ * Set the connection type.
+ *
+ * @param connectionType the connectionType value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withConnectionType(String connectionType) {
+ this.connectionType = connectionType;
+ return this;
+ }
+
+ /**
+ * Get the provisioning state. Possible values include: 'NotSpecified', 'Accepted', 'Running', 'Ready', 'Creating', 'Created', 'Deleting', 'Deleted', 'Canceled', 'Failed', 'Succeeded', 'Moving', 'Updating', 'Registering', 'Registered', 'Unregistering', 'Unregistered', 'Completed', 'Renewing', 'Pending', 'Waiting', 'InProgress'.
+ *
+ * @return the provisioningState value
+ */
+ public WorkflowProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Set the provisioning state. Possible values include: 'NotSpecified', 'Accepted', 'Running', 'Ready', 'Creating', 'Created', 'Deleting', 'Deleted', 'Canceled', 'Failed', 'Succeeded', 'Moving', 'Updating', 'Registering', 'Registered', 'Unregistering', 'Unregistered', 'Completed', 'Renewing', 'Pending', 'Waiting', 'InProgress'.
+ *
+ * @param provisioningState the provisioningState value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withProvisioningState(WorkflowProvisioningState provisioningState) {
+ this.provisioningState = provisioningState;
+ return this;
+ }
+
+ /**
+ * Get the connector deployment parameters metadata.
+ *
+ * @return the deploymentParameters value
+ */
+ public ApiDeploymentParameterMetadataSet deploymentParameters() {
+ return this.deploymentParameters;
+ }
+
+ /**
+ * Set the connector deployment parameters metadata.
+ *
+ * @param deploymentParameters the deploymentParameters value to set
+ * @return the ApiResourceMetadata object itself.
+ */
+ public ApiResourceMetadata withDeploymentParameters(ApiDeploymentParameterMetadataSet deploymentParameters) {
+ this.deploymentParameters = deploymentParameters;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourcePolicies.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourcePolicies.java
new file mode 100644
index 000000000000..d0e9cdf810a9
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourcePolicies.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The API resource policies.
+ */
+public class ApiResourcePolicies {
+ /**
+ * The API level only policies XML as embedded content.
+ */
+ @JsonProperty(value = "content")
+ private String content;
+
+ /**
+ * The content link to the policies.
+ */
+ @JsonProperty(value = "contentLink")
+ private String contentLink;
+
+ /**
+ * Get the API level only policies XML as embedded content.
+ *
+ * @return the content value
+ */
+ public String content() {
+ return this.content;
+ }
+
+ /**
+ * Set the API level only policies XML as embedded content.
+ *
+ * @param content the content value to set
+ * @return the ApiResourcePolicies object itself.
+ */
+ public ApiResourcePolicies withContent(String content) {
+ this.content = content;
+ return this;
+ }
+
+ /**
+ * Get the content link to the policies.
+ *
+ * @return the contentLink value
+ */
+ public String contentLink() {
+ return this.contentLink;
+ }
+
+ /**
+ * Set the content link to the policies.
+ *
+ * @param contentLink the contentLink value to set
+ * @return the ApiResourcePolicies object itself.
+ */
+ public ApiResourcePolicies withContentLink(String contentLink) {
+ this.contentLink = contentLink;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceProperties.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceProperties.java
new file mode 100644
index 000000000000..af84df84603e
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiResourceProperties.java
@@ -0,0 +1,362 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import java.util.Map;
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The API resource properties.
+ */
+public class ApiResourceProperties {
+ /**
+ * The name.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The connection parameters.
+ */
+ @JsonProperty(value = "connectionParameters")
+ private Map connectionParameters;
+
+ /**
+ * The metadata.
+ */
+ @JsonProperty(value = "metadata")
+ private ApiResourceMetadata metadata;
+
+ /**
+ * The runtime urls.
+ */
+ @JsonProperty(value = "runtimeUrls")
+ private List runtimeUrls;
+
+ /**
+ * The api general information.
+ */
+ @JsonProperty(value = "generalInformation")
+ private ApiResourceGeneralInformation generalInformation;
+
+ /**
+ * The capabilities.
+ */
+ @JsonProperty(value = "capabilities")
+ private List capabilities;
+
+ /**
+ * The backend service.
+ */
+ @JsonProperty(value = "backendService")
+ private ApiResourceBackendService backendService;
+
+ /**
+ * The policies for the API.
+ */
+ @JsonProperty(value = "policies")
+ private ApiResourcePolicies policies;
+
+ /**
+ * The API definition.
+ */
+ @JsonProperty(value = "apiDefinitionUrl")
+ private String apiDefinitionUrl;
+
+ /**
+ * The api definitions.
+ */
+ @JsonProperty(value = "apiDefinitions")
+ private ApiResourceDefinitions apiDefinitions;
+
+ /**
+ * The integration service environment reference.
+ */
+ @JsonProperty(value = "integrationServiceEnvironment")
+ private ResourceReference integrationServiceEnvironment;
+
+ /**
+ * The provisioning state. Possible values include: 'NotSpecified',
+ * 'Accepted', 'Running', 'Ready', 'Creating', 'Created', 'Deleting',
+ * 'Deleted', 'Canceled', 'Failed', 'Succeeded', 'Moving', 'Updating',
+ * 'Registering', 'Registered', 'Unregistering', 'Unregistered',
+ * 'Completed', 'Renewing', 'Pending', 'Waiting', 'InProgress'.
+ */
+ @JsonProperty(value = "provisioningState")
+ private WorkflowProvisioningState provisioningState;
+
+ /**
+ * The category. Possible values include: 'NotSpecified', 'Enterprise',
+ * 'Standard', 'Premium'.
+ */
+ @JsonProperty(value = "category")
+ private ApiTier category;
+
+ /**
+ * Get the name.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name.
+ *
+ * @param name the name value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the connection parameters.
+ *
+ * @return the connectionParameters value
+ */
+ public Map connectionParameters() {
+ return this.connectionParameters;
+ }
+
+ /**
+ * Set the connection parameters.
+ *
+ * @param connectionParameters the connectionParameters value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withConnectionParameters(Map connectionParameters) {
+ this.connectionParameters = connectionParameters;
+ return this;
+ }
+
+ /**
+ * Get the metadata.
+ *
+ * @return the metadata value
+ */
+ public ApiResourceMetadata metadata() {
+ return this.metadata;
+ }
+
+ /**
+ * Set the metadata.
+ *
+ * @param metadata the metadata value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withMetadata(ApiResourceMetadata metadata) {
+ this.metadata = metadata;
+ return this;
+ }
+
+ /**
+ * Get the runtime urls.
+ *
+ * @return the runtimeUrls value
+ */
+ public List runtimeUrls() {
+ return this.runtimeUrls;
+ }
+
+ /**
+ * Set the runtime urls.
+ *
+ * @param runtimeUrls the runtimeUrls value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withRuntimeUrls(List runtimeUrls) {
+ this.runtimeUrls = runtimeUrls;
+ return this;
+ }
+
+ /**
+ * Get the api general information.
+ *
+ * @return the generalInformation value
+ */
+ public ApiResourceGeneralInformation generalInformation() {
+ return this.generalInformation;
+ }
+
+ /**
+ * Set the api general information.
+ *
+ * @param generalInformation the generalInformation value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withGeneralInformation(ApiResourceGeneralInformation generalInformation) {
+ this.generalInformation = generalInformation;
+ return this;
+ }
+
+ /**
+ * Get the capabilities.
+ *
+ * @return the capabilities value
+ */
+ public List capabilities() {
+ return this.capabilities;
+ }
+
+ /**
+ * Set the capabilities.
+ *
+ * @param capabilities the capabilities value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withCapabilities(List capabilities) {
+ this.capabilities = capabilities;
+ return this;
+ }
+
+ /**
+ * Get the backend service.
+ *
+ * @return the backendService value
+ */
+ public ApiResourceBackendService backendService() {
+ return this.backendService;
+ }
+
+ /**
+ * Set the backend service.
+ *
+ * @param backendService the backendService value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withBackendService(ApiResourceBackendService backendService) {
+ this.backendService = backendService;
+ return this;
+ }
+
+ /**
+ * Get the policies for the API.
+ *
+ * @return the policies value
+ */
+ public ApiResourcePolicies policies() {
+ return this.policies;
+ }
+
+ /**
+ * Set the policies for the API.
+ *
+ * @param policies the policies value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withPolicies(ApiResourcePolicies policies) {
+ this.policies = policies;
+ return this;
+ }
+
+ /**
+ * Get the API definition.
+ *
+ * @return the apiDefinitionUrl value
+ */
+ public String apiDefinitionUrl() {
+ return this.apiDefinitionUrl;
+ }
+
+ /**
+ * Set the API definition.
+ *
+ * @param apiDefinitionUrl the apiDefinitionUrl value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withApiDefinitionUrl(String apiDefinitionUrl) {
+ this.apiDefinitionUrl = apiDefinitionUrl;
+ return this;
+ }
+
+ /**
+ * Get the api definitions.
+ *
+ * @return the apiDefinitions value
+ */
+ public ApiResourceDefinitions apiDefinitions() {
+ return this.apiDefinitions;
+ }
+
+ /**
+ * Set the api definitions.
+ *
+ * @param apiDefinitions the apiDefinitions value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withApiDefinitions(ApiResourceDefinitions apiDefinitions) {
+ this.apiDefinitions = apiDefinitions;
+ return this;
+ }
+
+ /**
+ * Get the integration service environment reference.
+ *
+ * @return the integrationServiceEnvironment value
+ */
+ public ResourceReference integrationServiceEnvironment() {
+ return this.integrationServiceEnvironment;
+ }
+
+ /**
+ * Set the integration service environment reference.
+ *
+ * @param integrationServiceEnvironment the integrationServiceEnvironment value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withIntegrationServiceEnvironment(ResourceReference integrationServiceEnvironment) {
+ this.integrationServiceEnvironment = integrationServiceEnvironment;
+ return this;
+ }
+
+ /**
+ * Get the provisioning state. Possible values include: 'NotSpecified', 'Accepted', 'Running', 'Ready', 'Creating', 'Created', 'Deleting', 'Deleted', 'Canceled', 'Failed', 'Succeeded', 'Moving', 'Updating', 'Registering', 'Registered', 'Unregistering', 'Unregistered', 'Completed', 'Renewing', 'Pending', 'Waiting', 'InProgress'.
+ *
+ * @return the provisioningState value
+ */
+ public WorkflowProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Set the provisioning state. Possible values include: 'NotSpecified', 'Accepted', 'Running', 'Ready', 'Creating', 'Created', 'Deleting', 'Deleted', 'Canceled', 'Failed', 'Succeeded', 'Moving', 'Updating', 'Registering', 'Registered', 'Unregistering', 'Unregistered', 'Completed', 'Renewing', 'Pending', 'Waiting', 'InProgress'.
+ *
+ * @param provisioningState the provisioningState value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withProvisioningState(WorkflowProvisioningState provisioningState) {
+ this.provisioningState = provisioningState;
+ return this;
+ }
+
+ /**
+ * Get the category. Possible values include: 'NotSpecified', 'Enterprise', 'Standard', 'Premium'.
+ *
+ * @return the category value
+ */
+ public ApiTier category() {
+ return this.category;
+ }
+
+ /**
+ * Set the category. Possible values include: 'NotSpecified', 'Enterprise', 'Standard', 'Premium'.
+ *
+ * @param category the category value to set
+ * @return the ApiResourceProperties object itself.
+ */
+ public ApiResourceProperties withCategory(ApiTier category) {
+ this.category = category;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiTier.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiTier.java
new file mode 100644
index 000000000000..47cc6aa1c2e7
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiTier.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ApiTier.
+ */
+public final class ApiTier extends ExpandableStringEnum {
+ /** Static value NotSpecified for ApiTier. */
+ public static final ApiTier NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value Enterprise for ApiTier. */
+ public static final ApiTier ENTERPRISE = fromString("Enterprise");
+
+ /** Static value Standard for ApiTier. */
+ public static final ApiTier STANDARD = fromString("Standard");
+
+ /** Static value Premium for ApiTier. */
+ public static final ApiTier PREMIUM = fromString("Premium");
+
+ /**
+ * Creates or finds a ApiTier from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ApiTier
+ */
+ @JsonCreator
+ public static ApiTier fromString(String name) {
+ return fromString(name, ApiTier.class);
+ }
+
+ /**
+ * @return known ApiTier values
+ */
+ public static Collection values() {
+ return values(ApiTier.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiType.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiType.java
new file mode 100644
index 000000000000..950117aab547
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ApiType.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ApiType.
+ */
+public final class ApiType extends ExpandableStringEnum {
+ /** Static value NotSpecified for ApiType. */
+ public static final ApiType NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value Rest for ApiType. */
+ public static final ApiType REST = fromString("Rest");
+
+ /** Static value Soap for ApiType. */
+ public static final ApiType SOAP = fromString("Soap");
+
+ /**
+ * Creates or finds a ApiType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ApiType
+ */
+ @JsonCreator
+ public static ApiType fromString(String name) {
+ return fromString(name, ApiType.class);
+ }
+
+ /**
+ * @return known ApiType values
+ */
+ public static Collection values() {
+ return values(ApiType.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ArtifactContentPropertiesDefinition.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ArtifactContentPropertiesDefinition.java
new file mode 100644
index 000000000000..78b707f7cf83
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ArtifactContentPropertiesDefinition.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The artifact content properties definition.
+ */
+public class ArtifactContentPropertiesDefinition extends ArtifactProperties {
+ /**
+ * The content property.
+ */
+ @JsonProperty(value = "content")
+ private Object content;
+
+ /**
+ * The content type.
+ */
+ @JsonProperty(value = "contentType")
+ private String contentType;
+
+ /**
+ * The content link.
+ */
+ @JsonProperty(value = "contentLink")
+ private ContentLink contentLink;
+
+ /**
+ * Get the content value.
+ *
+ * @return the content value
+ */
+ public Object content() {
+ return this.content;
+ }
+
+ /**
+ * Set the content value.
+ *
+ * @param content the content value to set
+ * @return the ArtifactContentPropertiesDefinition object itself.
+ */
+ public ArtifactContentPropertiesDefinition withContent(Object content) {
+ this.content = content;
+ return this;
+ }
+
+ /**
+ * Get the content type.
+ *
+ * @return the contentType value
+ */
+ public String contentType() {
+ return this.contentType;
+ }
+
+ /**
+ * Set the content type.
+ *
+ * @param contentType the contentType value to set
+ * @return the ArtifactContentPropertiesDefinition object itself.
+ */
+ public ArtifactContentPropertiesDefinition withContentType(String contentType) {
+ this.contentType = contentType;
+ return this;
+ }
+
+ /**
+ * Get the content link.
+ *
+ * @return the contentLink value
+ */
+ public ContentLink contentLink() {
+ return this.contentLink;
+ }
+
+ /**
+ * Set the content link.
+ *
+ * @param contentLink the contentLink value to set
+ * @return the ArtifactContentPropertiesDefinition object itself.
+ */
+ public ArtifactContentPropertiesDefinition withContentLink(ContentLink contentLink) {
+ this.contentLink = contentLink;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ArtifactProperties.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ArtifactProperties.java
new file mode 100644
index 000000000000..8da62581eb93
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ArtifactProperties.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.logic.v2019_05_01;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The artifact properties definition.
+ */
+public class ArtifactProperties {
+ /**
+ * The artifact creation time.
+ */
+ @JsonProperty(value = "createdTime")
+ private DateTime createdTime;
+
+ /**
+ * The artifact changed time.
+ */
+ @JsonProperty(value = "changedTime")
+ private DateTime changedTime;
+
+ /**
+ * The metadata property.
+ */
+ @JsonProperty(value = "metadata")
+ private Object metadata;
+
+ /**
+ * Get the artifact creation time.
+ *
+ * @return the createdTime value
+ */
+ public DateTime createdTime() {
+ return this.createdTime;
+ }
+
+ /**
+ * Set the artifact creation time.
+ *
+ * @param createdTime the createdTime value to set
+ * @return the ArtifactProperties object itself.
+ */
+ public ArtifactProperties withCreatedTime(DateTime createdTime) {
+ this.createdTime = createdTime;
+ return this;
+ }
+
+ /**
+ * Get the artifact changed time.
+ *
+ * @return the changedTime value
+ */
+ public DateTime changedTime() {
+ return this.changedTime;
+ }
+
+ /**
+ * Set the artifact changed time.
+ *
+ * @param changedTime the changedTime value to set
+ * @return the ArtifactProperties object itself.
+ */
+ public ArtifactProperties withChangedTime(DateTime changedTime) {
+ this.changedTime = changedTime;
+ return this;
+ }
+
+ /**
+ * Get the metadata value.
+ *
+ * @return the metadata value
+ */
+ public Object metadata() {
+ return this.metadata;
+ }
+
+ /**
+ * Set the metadata value.
+ *
+ * @param metadata the metadata value to set
+ * @return the ArtifactProperties object itself.
+ */
+ public ArtifactProperties withMetadata(Object metadata) {
+ this.metadata = metadata;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AssemblyDefinition.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AssemblyDefinition.java
new file mode 100644
index 000000000000..b6d325afc4b2
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AssemblyDefinition.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.AssemblyDefinitionInner;
+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.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+
+/**
+ * Type representing AssemblyDefinition.
+ */
+public interface AssemblyDefinition extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the properties value.
+ */
+ AssemblyProperties properties();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the AssemblyDefinition definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithIntegrationAccount, DefinitionStages.WithProperties, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of AssemblyDefinition definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a AssemblyDefinition definition.
+ */
+ interface Blank extends WithIntegrationAccount {
+ }
+
+ /**
+ * The stage of the assemblydefinition definition allowing to specify IntegrationAccount.
+ */
+ interface WithIntegrationAccount {
+ /**
+ * Specifies resourceGroupName, integrationAccountName.
+ * @param resourceGroupName The resource group name
+ * @param integrationAccountName The integration account name
+ * @return the next definition stage
+ */
+ WithProperties withExistingIntegrationAccount(String resourceGroupName, String integrationAccountName);
+ }
+
+ /**
+ * The stage of the assemblydefinition definition allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The assembly properties
+ * @return the next definition stage
+ */
+ WithCreate withProperties(AssemblyProperties properties);
+ }
+
+ /**
+ * The stage of the assemblydefinition definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the assemblydefinition definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * 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.WithLocation, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a AssemblyDefinition update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithLocation, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of AssemblyDefinition update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the assemblydefinition update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the assemblydefinition update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AssemblyProperties.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AssemblyProperties.java
new file mode 100644
index 000000000000..25331bd69b27
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AssemblyProperties.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The assembly properties definition.
+ */
+public class AssemblyProperties extends ArtifactContentPropertiesDefinition {
+ /**
+ * The assembly name.
+ */
+ @JsonProperty(value = "assemblyName", required = true)
+ private String assemblyName;
+
+ /**
+ * The assembly version.
+ */
+ @JsonProperty(value = "assemblyVersion")
+ private String assemblyVersion;
+
+ /**
+ * The assembly culture.
+ */
+ @JsonProperty(value = "assemblyCulture")
+ private String assemblyCulture;
+
+ /**
+ * The assembly public key token.
+ */
+ @JsonProperty(value = "assemblyPublicKeyToken")
+ private String assemblyPublicKeyToken;
+
+ /**
+ * Get the assembly name.
+ *
+ * @return the assemblyName value
+ */
+ public String assemblyName() {
+ return this.assemblyName;
+ }
+
+ /**
+ * Set the assembly name.
+ *
+ * @param assemblyName the assemblyName value to set
+ * @return the AssemblyProperties object itself.
+ */
+ public AssemblyProperties withAssemblyName(String assemblyName) {
+ this.assemblyName = assemblyName;
+ return this;
+ }
+
+ /**
+ * Get the assembly version.
+ *
+ * @return the assemblyVersion value
+ */
+ public String assemblyVersion() {
+ return this.assemblyVersion;
+ }
+
+ /**
+ * Set the assembly version.
+ *
+ * @param assemblyVersion the assemblyVersion value to set
+ * @return the AssemblyProperties object itself.
+ */
+ public AssemblyProperties withAssemblyVersion(String assemblyVersion) {
+ this.assemblyVersion = assemblyVersion;
+ return this;
+ }
+
+ /**
+ * Get the assembly culture.
+ *
+ * @return the assemblyCulture value
+ */
+ public String assemblyCulture() {
+ return this.assemblyCulture;
+ }
+
+ /**
+ * Set the assembly culture.
+ *
+ * @param assemblyCulture the assemblyCulture value to set
+ * @return the AssemblyProperties object itself.
+ */
+ public AssemblyProperties withAssemblyCulture(String assemblyCulture) {
+ this.assemblyCulture = assemblyCulture;
+ return this;
+ }
+
+ /**
+ * Get the assembly public key token.
+ *
+ * @return the assemblyPublicKeyToken value
+ */
+ public String assemblyPublicKeyToken() {
+ return this.assemblyPublicKeyToken;
+ }
+
+ /**
+ * Set the assembly public key token.
+ *
+ * @param assemblyPublicKeyToken the assemblyPublicKeyToken value to set
+ * @return the AssemblyProperties object itself.
+ */
+ public AssemblyProperties withAssemblyPublicKeyToken(String assemblyPublicKeyToken) {
+ this.assemblyPublicKeyToken = assemblyPublicKeyToken;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AzureAsyncOperationState.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AzureAsyncOperationState.java
new file mode 100644
index 000000000000..9fadd2420d9a
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AzureAsyncOperationState.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for AzureAsyncOperationState.
+ */
+public final class AzureAsyncOperationState extends ExpandableStringEnum {
+ /** Static value Failed for AzureAsyncOperationState. */
+ public static final AzureAsyncOperationState FAILED = fromString("Failed");
+
+ /** Static value Succeeded for AzureAsyncOperationState. */
+ public static final AzureAsyncOperationState SUCCEEDED = fromString("Succeeded");
+
+ /** Static value Pending for AzureAsyncOperationState. */
+ public static final AzureAsyncOperationState PENDING = fromString("Pending");
+
+ /** Static value Canceled for AzureAsyncOperationState. */
+ public static final AzureAsyncOperationState CANCELED = fromString("Canceled");
+
+ /**
+ * Creates or finds a AzureAsyncOperationState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding AzureAsyncOperationState
+ */
+ @JsonCreator
+ public static AzureAsyncOperationState fromString(String name) {
+ return fromString(name, AzureAsyncOperationState.class);
+ }
+
+ /**
+ * @return known AzureAsyncOperationState values
+ */
+ public static Collection values() {
+ return values(AzureAsyncOperationState.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AzureResourceErrorInfo.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AzureResourceErrorInfo.java
new file mode 100644
index 000000000000..34d60a3ed8a9
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/AzureResourceErrorInfo.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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The azure resource error info.
+ */
+public class AzureResourceErrorInfo extends ErrorInfo {
+ /**
+ * The error message.
+ */
+ @JsonProperty(value = "message", required = true)
+ private String message;
+
+ /**
+ * The error details.
+ */
+ @JsonProperty(value = "details")
+ private List details;
+
+ /**
+ * Get the error message.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set the error message.
+ *
+ * @param message the message value to set
+ * @return the AzureResourceErrorInfo object itself.
+ */
+ public AzureResourceErrorInfo withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get the error details.
+ *
+ * @return the details value
+ */
+ public List details() {
+ return this.details;
+ }
+
+ /**
+ * Set the error details.
+ *
+ * @param details the details value to set
+ * @return the AzureResourceErrorInfo object itself.
+ */
+ public AzureResourceErrorInfo withDetails(List details) {
+ this.details = details;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/B2BPartnerContent.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/B2BPartnerContent.java
new file mode 100644
index 000000000000..05b606efbca2
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/B2BPartnerContent.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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The B2B partner content.
+ */
+public class B2BPartnerContent {
+ /**
+ * The list of partner business identities.
+ */
+ @JsonProperty(value = "businessIdentities")
+ private List businessIdentities;
+
+ /**
+ * Get the list of partner business identities.
+ *
+ * @return the businessIdentities value
+ */
+ public List businessIdentities() {
+ return this.businessIdentities;
+ }
+
+ /**
+ * Set the list of partner business identities.
+ *
+ * @param businessIdentities the businessIdentities value to set
+ * @return the B2BPartnerContent object itself.
+ */
+ public B2BPartnerContent withBusinessIdentities(List businessIdentities) {
+ this.businessIdentities = businessIdentities;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchConfiguration.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchConfiguration.java
new file mode 100644
index 000000000000..5009c1f59811
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchConfiguration.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.BatchConfigurationInner;
+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.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+
+/**
+ * Type representing BatchConfiguration.
+ */
+public interface BatchConfiguration extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the properties value.
+ */
+ BatchConfigurationProperties properties();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the BatchConfiguration definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithIntegrationAccount, DefinitionStages.WithProperties, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of BatchConfiguration definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a BatchConfiguration definition.
+ */
+ interface Blank extends WithIntegrationAccount {
+ }
+
+ /**
+ * The stage of the batchconfiguration definition allowing to specify IntegrationAccount.
+ */
+ interface WithIntegrationAccount {
+ /**
+ * Specifies resourceGroupName, integrationAccountName.
+ * @param resourceGroupName The resource group name
+ * @param integrationAccountName The integration account name
+ * @return the next definition stage
+ */
+ WithProperties withExistingIntegrationAccount(String resourceGroupName, String integrationAccountName);
+ }
+
+ /**
+ * The stage of the batchconfiguration definition allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The batch configuration properties
+ * @return the next definition stage
+ */
+ WithCreate withProperties(BatchConfigurationProperties properties);
+ }
+
+ /**
+ * The stage of the batchconfiguration definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the batchconfiguration definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * 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.WithLocation, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a BatchConfiguration update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithLocation, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of BatchConfiguration update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the batchconfiguration update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the batchconfiguration update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchConfigurationProperties.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchConfigurationProperties.java
new file mode 100644
index 000000000000..c88a8638411d
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchConfigurationProperties.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The batch configuration properties definition.
+ */
+public class BatchConfigurationProperties extends ArtifactProperties {
+ /**
+ * The name of the batch group.
+ */
+ @JsonProperty(value = "batchGroupName", required = true)
+ private String batchGroupName;
+
+ /**
+ * The batch release criteria.
+ */
+ @JsonProperty(value = "releaseCriteria", required = true)
+ private BatchReleaseCriteria releaseCriteria;
+
+ /**
+ * Get the name of the batch group.
+ *
+ * @return the batchGroupName value
+ */
+ public String batchGroupName() {
+ return this.batchGroupName;
+ }
+
+ /**
+ * Set the name of the batch group.
+ *
+ * @param batchGroupName the batchGroupName value to set
+ * @return the BatchConfigurationProperties object itself.
+ */
+ public BatchConfigurationProperties withBatchGroupName(String batchGroupName) {
+ this.batchGroupName = batchGroupName;
+ return this;
+ }
+
+ /**
+ * Get the batch release criteria.
+ *
+ * @return the releaseCriteria value
+ */
+ public BatchReleaseCriteria releaseCriteria() {
+ return this.releaseCriteria;
+ }
+
+ /**
+ * Set the batch release criteria.
+ *
+ * @param releaseCriteria the releaseCriteria value to set
+ * @return the BatchConfigurationProperties object itself.
+ */
+ public BatchConfigurationProperties withReleaseCriteria(BatchReleaseCriteria releaseCriteria) {
+ this.releaseCriteria = releaseCriteria;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchReleaseCriteria.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchReleaseCriteria.java
new file mode 100644
index 000000000000..7ac561f07cf4
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BatchReleaseCriteria.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The batch release criteria.
+ */
+public class BatchReleaseCriteria {
+ /**
+ * The message count.
+ */
+ @JsonProperty(value = "messageCount")
+ private Integer messageCount;
+
+ /**
+ * The batch size in bytes.
+ */
+ @JsonProperty(value = "batchSize")
+ private Integer batchSize;
+
+ /**
+ * The recurrence.
+ */
+ @JsonProperty(value = "recurrence")
+ private WorkflowTriggerRecurrence recurrence;
+
+ /**
+ * Get the message count.
+ *
+ * @return the messageCount value
+ */
+ public Integer messageCount() {
+ return this.messageCount;
+ }
+
+ /**
+ * Set the message count.
+ *
+ * @param messageCount the messageCount value to set
+ * @return the BatchReleaseCriteria object itself.
+ */
+ public BatchReleaseCriteria withMessageCount(Integer messageCount) {
+ this.messageCount = messageCount;
+ return this;
+ }
+
+ /**
+ * Get the batch size in bytes.
+ *
+ * @return the batchSize value
+ */
+ public Integer batchSize() {
+ return this.batchSize;
+ }
+
+ /**
+ * Set the batch size in bytes.
+ *
+ * @param batchSize the batchSize value to set
+ * @return the BatchReleaseCriteria object itself.
+ */
+ public BatchReleaseCriteria withBatchSize(Integer batchSize) {
+ this.batchSize = batchSize;
+ return this;
+ }
+
+ /**
+ * Get the recurrence.
+ *
+ * @return the recurrence value
+ */
+ public WorkflowTriggerRecurrence recurrence() {
+ return this.recurrence;
+ }
+
+ /**
+ * Set the recurrence.
+ *
+ * @param recurrence the recurrence value to set
+ * @return the BatchReleaseCriteria object itself.
+ */
+ public BatchReleaseCriteria withRecurrence(WorkflowTriggerRecurrence recurrence) {
+ this.recurrence = recurrence;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BusinessIdentity.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BusinessIdentity.java
new file mode 100644
index 000000000000..8a50b2f3a271
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/BusinessIdentity.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account partner's business identity.
+ */
+public class BusinessIdentity {
+ /**
+ * The business identity qualifier e.g. as2identity, ZZ, ZZZ, 31, 32.
+ */
+ @JsonProperty(value = "qualifier", required = true)
+ private String qualifier;
+
+ /**
+ * The user defined business identity value.
+ */
+ @JsonProperty(value = "value", required = true)
+ private String value;
+
+ /**
+ * Get the business identity qualifier e.g. as2identity, ZZ, ZZZ, 31, 32.
+ *
+ * @return the qualifier value
+ */
+ public String qualifier() {
+ return this.qualifier;
+ }
+
+ /**
+ * Set the business identity qualifier e.g. as2identity, ZZ, ZZZ, 31, 32.
+ *
+ * @param qualifier the qualifier value to set
+ * @return the BusinessIdentity object itself.
+ */
+ public BusinessIdentity withQualifier(String qualifier) {
+ this.qualifier = qualifier;
+ return this;
+ }
+
+ /**
+ * Get the user defined business identity value.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the user defined business identity value.
+ *
+ * @param value the value value to set
+ * @return the BusinessIdentity object itself.
+ */
+ public BusinessIdentity withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/CallbackUrl.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/CallbackUrl.java
new file mode 100644
index 000000000000..958ea72237f0
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/CallbackUrl.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.LogicManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.CallbackUrlInner;
+
+/**
+ * Type representing CallbackUrl.
+ */
+public interface CallbackUrl extends HasInner, HasManager {
+ /**
+ * @return the value value.
+ */
+ String value();
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ContentHash.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ContentHash.java
new file mode 100644
index 000000000000..810c9567dc82
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ContentHash.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The content hash.
+ */
+public class ContentHash {
+ /**
+ * The algorithm of the content hash.
+ */
+ @JsonProperty(value = "algorithm")
+ private String algorithm;
+
+ /**
+ * The value of the content hash.
+ */
+ @JsonProperty(value = "value")
+ private String value;
+
+ /**
+ * Get the algorithm of the content hash.
+ *
+ * @return the algorithm value
+ */
+ public String algorithm() {
+ return this.algorithm;
+ }
+
+ /**
+ * Set the algorithm of the content hash.
+ *
+ * @param algorithm the algorithm value to set
+ * @return the ContentHash object itself.
+ */
+ public ContentHash withAlgorithm(String algorithm) {
+ this.algorithm = algorithm;
+ return this;
+ }
+
+ /**
+ * Get the value of the content hash.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value of the content hash.
+ *
+ * @param value the value value to set
+ * @return the ContentHash object itself.
+ */
+ public ContentHash withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ContentLink.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ContentLink.java
new file mode 100644
index 000000000000..64b03b66cff9
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ContentLink.java
@@ -0,0 +1,147 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The content link.
+ */
+public class ContentLink {
+ /**
+ * The content link URI.
+ */
+ @JsonProperty(value = "uri")
+ private String uri;
+
+ /**
+ * The content version.
+ */
+ @JsonProperty(value = "contentVersion")
+ private String contentVersion;
+
+ /**
+ * The content size.
+ */
+ @JsonProperty(value = "contentSize")
+ private Long contentSize;
+
+ /**
+ * The content hash.
+ */
+ @JsonProperty(value = "contentHash")
+ private ContentHash contentHash;
+
+ /**
+ * The metadata.
+ */
+ @JsonProperty(value = "metadata")
+ private Object metadata;
+
+ /**
+ * Get the content link URI.
+ *
+ * @return the uri value
+ */
+ public String uri() {
+ return this.uri;
+ }
+
+ /**
+ * Set the content link URI.
+ *
+ * @param uri the uri value to set
+ * @return the ContentLink object itself.
+ */
+ public ContentLink withUri(String uri) {
+ this.uri = uri;
+ return this;
+ }
+
+ /**
+ * Get the content version.
+ *
+ * @return the contentVersion value
+ */
+ public String contentVersion() {
+ return this.contentVersion;
+ }
+
+ /**
+ * Set the content version.
+ *
+ * @param contentVersion the contentVersion value to set
+ * @return the ContentLink object itself.
+ */
+ public ContentLink withContentVersion(String contentVersion) {
+ this.contentVersion = contentVersion;
+ return this;
+ }
+
+ /**
+ * Get the content size.
+ *
+ * @return the contentSize value
+ */
+ public Long contentSize() {
+ return this.contentSize;
+ }
+
+ /**
+ * Set the content size.
+ *
+ * @param contentSize the contentSize value to set
+ * @return the ContentLink object itself.
+ */
+ public ContentLink withContentSize(Long contentSize) {
+ this.contentSize = contentSize;
+ return this;
+ }
+
+ /**
+ * Get the content hash.
+ *
+ * @return the contentHash value
+ */
+ public ContentHash contentHash() {
+ return this.contentHash;
+ }
+
+ /**
+ * Set the content hash.
+ *
+ * @param contentHash the contentHash value to set
+ * @return the ContentLink object itself.
+ */
+ public ContentLink withContentHash(ContentHash contentHash) {
+ this.contentHash = contentHash;
+ return this;
+ }
+
+ /**
+ * Get the metadata.
+ *
+ * @return the metadata value
+ */
+ public Object metadata() {
+ return this.metadata;
+ }
+
+ /**
+ * Set the metadata.
+ *
+ * @param metadata the metadata value to set
+ * @return the ContentLink object itself.
+ */
+ public ContentLink withMetadata(Object metadata) {
+ this.metadata = metadata;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/Correlation.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/Correlation.java
new file mode 100644
index 000000000000..62fd4c12cb5d
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/Correlation.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The correlation property.
+ */
+public class Correlation {
+ /**
+ * The client tracking id.
+ */
+ @JsonProperty(value = "clientTrackingId")
+ private String clientTrackingId;
+
+ /**
+ * Get the client tracking id.
+ *
+ * @return the clientTrackingId value
+ */
+ public String clientTrackingId() {
+ return this.clientTrackingId;
+ }
+
+ /**
+ * Set the client tracking id.
+ *
+ * @param clientTrackingId the clientTrackingId value to set
+ * @return the Correlation object itself.
+ */
+ public Correlation withClientTrackingId(String clientTrackingId) {
+ this.clientTrackingId = clientTrackingId;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/DayOfWeek.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/DayOfWeek.java
new file mode 100644
index 000000000000..fc90196f28c0
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/DayOfWeek.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for DayOfWeek.
+ */
+public enum DayOfWeek {
+ /** Enum value Sunday. */
+ SUNDAY("Sunday"),
+
+ /** Enum value Monday. */
+ MONDAY("Monday"),
+
+ /** Enum value Tuesday. */
+ TUESDAY("Tuesday"),
+
+ /** Enum value Wednesday. */
+ WEDNESDAY("Wednesday"),
+
+ /** Enum value Thursday. */
+ THURSDAY("Thursday"),
+
+ /** Enum value Friday. */
+ FRIDAY("Friday"),
+
+ /** Enum value Saturday. */
+ SATURDAY("Saturday");
+
+ /** The actual serialized value for a DayOfWeek instance. */
+ private String value;
+
+ DayOfWeek(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a DayOfWeek instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed DayOfWeek object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static DayOfWeek fromString(String value) {
+ DayOfWeek[] items = DayOfWeek.values();
+ for (DayOfWeek item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/DaysOfWeek.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/DaysOfWeek.java
new file mode 100644
index 000000000000..e69a8ac2c49f
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/DaysOfWeek.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for DaysOfWeek.
+ */
+public enum DaysOfWeek {
+ /** Enum value Sunday. */
+ SUNDAY("Sunday"),
+
+ /** Enum value Monday. */
+ MONDAY("Monday"),
+
+ /** Enum value Tuesday. */
+ TUESDAY("Tuesday"),
+
+ /** Enum value Wednesday. */
+ WEDNESDAY("Wednesday"),
+
+ /** Enum value Thursday. */
+ THURSDAY("Thursday"),
+
+ /** Enum value Friday. */
+ FRIDAY("Friday"),
+
+ /** Enum value Saturday. */
+ SATURDAY("Saturday");
+
+ /** The actual serialized value for a DaysOfWeek instance. */
+ private String value;
+
+ DaysOfWeek(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a DaysOfWeek instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed DaysOfWeek object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static DaysOfWeek fromString(String value) {
+ DaysOfWeek[] items = DaysOfWeek.values();
+ for (DaysOfWeek item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactAcknowledgementSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactAcknowledgementSettings.java
new file mode 100644
index 000000000000..12e1147db3e2
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactAcknowledgementSettings.java
@@ -0,0 +1,303 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact agreement acknowledgement settings.
+ */
+public class EdifactAcknowledgementSettings {
+ /**
+ * The value indicating whether technical acknowledgement is needed.
+ */
+ @JsonProperty(value = "needTechnicalAcknowledgement", required = true)
+ private boolean needTechnicalAcknowledgement;
+
+ /**
+ * The value indicating whether to batch the technical acknowledgements.
+ */
+ @JsonProperty(value = "batchTechnicalAcknowledgements", required = true)
+ private boolean batchTechnicalAcknowledgements;
+
+ /**
+ * The value indicating whether functional acknowledgement is needed.
+ */
+ @JsonProperty(value = "needFunctionalAcknowledgement", required = true)
+ private boolean needFunctionalAcknowledgement;
+
+ /**
+ * The value indicating whether to batch functional acknowledgements.
+ */
+ @JsonProperty(value = "batchFunctionalAcknowledgements", required = true)
+ private boolean batchFunctionalAcknowledgements;
+
+ /**
+ * The value indicating whether a loop is needed for valid messages.
+ */
+ @JsonProperty(value = "needLoopForValidMessages", required = true)
+ private boolean needLoopForValidMessages;
+
+ /**
+ * The value indicating whether to send synchronous acknowledgement.
+ */
+ @JsonProperty(value = "sendSynchronousAcknowledgement", required = true)
+ private boolean sendSynchronousAcknowledgement;
+
+ /**
+ * The acknowledgement control number prefix.
+ */
+ @JsonProperty(value = "acknowledgementControlNumberPrefix")
+ private String acknowledgementControlNumberPrefix;
+
+ /**
+ * The acknowledgement control number suffix.
+ */
+ @JsonProperty(value = "acknowledgementControlNumberSuffix")
+ private String acknowledgementControlNumberSuffix;
+
+ /**
+ * The acknowledgement control number lower bound.
+ */
+ @JsonProperty(value = "acknowledgementControlNumberLowerBound", required = true)
+ private int acknowledgementControlNumberLowerBound;
+
+ /**
+ * The acknowledgement control number upper bound.
+ */
+ @JsonProperty(value = "acknowledgementControlNumberUpperBound", required = true)
+ private int acknowledgementControlNumberUpperBound;
+
+ /**
+ * The value indicating whether to rollover acknowledgement control number.
+ */
+ @JsonProperty(value = "rolloverAcknowledgementControlNumber", required = true)
+ private boolean rolloverAcknowledgementControlNumber;
+
+ /**
+ * Get the value indicating whether technical acknowledgement is needed.
+ *
+ * @return the needTechnicalAcknowledgement value
+ */
+ public boolean needTechnicalAcknowledgement() {
+ return this.needTechnicalAcknowledgement;
+ }
+
+ /**
+ * Set the value indicating whether technical acknowledgement is needed.
+ *
+ * @param needTechnicalAcknowledgement the needTechnicalAcknowledgement value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withNeedTechnicalAcknowledgement(boolean needTechnicalAcknowledgement) {
+ this.needTechnicalAcknowledgement = needTechnicalAcknowledgement;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to batch the technical acknowledgements.
+ *
+ * @return the batchTechnicalAcknowledgements value
+ */
+ public boolean batchTechnicalAcknowledgements() {
+ return this.batchTechnicalAcknowledgements;
+ }
+
+ /**
+ * Set the value indicating whether to batch the technical acknowledgements.
+ *
+ * @param batchTechnicalAcknowledgements the batchTechnicalAcknowledgements value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withBatchTechnicalAcknowledgements(boolean batchTechnicalAcknowledgements) {
+ this.batchTechnicalAcknowledgements = batchTechnicalAcknowledgements;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether functional acknowledgement is needed.
+ *
+ * @return the needFunctionalAcknowledgement value
+ */
+ public boolean needFunctionalAcknowledgement() {
+ return this.needFunctionalAcknowledgement;
+ }
+
+ /**
+ * Set the value indicating whether functional acknowledgement is needed.
+ *
+ * @param needFunctionalAcknowledgement the needFunctionalAcknowledgement value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withNeedFunctionalAcknowledgement(boolean needFunctionalAcknowledgement) {
+ this.needFunctionalAcknowledgement = needFunctionalAcknowledgement;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to batch functional acknowledgements.
+ *
+ * @return the batchFunctionalAcknowledgements value
+ */
+ public boolean batchFunctionalAcknowledgements() {
+ return this.batchFunctionalAcknowledgements;
+ }
+
+ /**
+ * Set the value indicating whether to batch functional acknowledgements.
+ *
+ * @param batchFunctionalAcknowledgements the batchFunctionalAcknowledgements value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withBatchFunctionalAcknowledgements(boolean batchFunctionalAcknowledgements) {
+ this.batchFunctionalAcknowledgements = batchFunctionalAcknowledgements;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether a loop is needed for valid messages.
+ *
+ * @return the needLoopForValidMessages value
+ */
+ public boolean needLoopForValidMessages() {
+ return this.needLoopForValidMessages;
+ }
+
+ /**
+ * Set the value indicating whether a loop is needed for valid messages.
+ *
+ * @param needLoopForValidMessages the needLoopForValidMessages value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withNeedLoopForValidMessages(boolean needLoopForValidMessages) {
+ this.needLoopForValidMessages = needLoopForValidMessages;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to send synchronous acknowledgement.
+ *
+ * @return the sendSynchronousAcknowledgement value
+ */
+ public boolean sendSynchronousAcknowledgement() {
+ return this.sendSynchronousAcknowledgement;
+ }
+
+ /**
+ * Set the value indicating whether to send synchronous acknowledgement.
+ *
+ * @param sendSynchronousAcknowledgement the sendSynchronousAcknowledgement value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withSendSynchronousAcknowledgement(boolean sendSynchronousAcknowledgement) {
+ this.sendSynchronousAcknowledgement = sendSynchronousAcknowledgement;
+ return this;
+ }
+
+ /**
+ * Get the acknowledgement control number prefix.
+ *
+ * @return the acknowledgementControlNumberPrefix value
+ */
+ public String acknowledgementControlNumberPrefix() {
+ return this.acknowledgementControlNumberPrefix;
+ }
+
+ /**
+ * Set the acknowledgement control number prefix.
+ *
+ * @param acknowledgementControlNumberPrefix the acknowledgementControlNumberPrefix value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withAcknowledgementControlNumberPrefix(String acknowledgementControlNumberPrefix) {
+ this.acknowledgementControlNumberPrefix = acknowledgementControlNumberPrefix;
+ return this;
+ }
+
+ /**
+ * Get the acknowledgement control number suffix.
+ *
+ * @return the acknowledgementControlNumberSuffix value
+ */
+ public String acknowledgementControlNumberSuffix() {
+ return this.acknowledgementControlNumberSuffix;
+ }
+
+ /**
+ * Set the acknowledgement control number suffix.
+ *
+ * @param acknowledgementControlNumberSuffix the acknowledgementControlNumberSuffix value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withAcknowledgementControlNumberSuffix(String acknowledgementControlNumberSuffix) {
+ this.acknowledgementControlNumberSuffix = acknowledgementControlNumberSuffix;
+ return this;
+ }
+
+ /**
+ * Get the acknowledgement control number lower bound.
+ *
+ * @return the acknowledgementControlNumberLowerBound value
+ */
+ public int acknowledgementControlNumberLowerBound() {
+ return this.acknowledgementControlNumberLowerBound;
+ }
+
+ /**
+ * Set the acknowledgement control number lower bound.
+ *
+ * @param acknowledgementControlNumberLowerBound the acknowledgementControlNumberLowerBound value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withAcknowledgementControlNumberLowerBound(int acknowledgementControlNumberLowerBound) {
+ this.acknowledgementControlNumberLowerBound = acknowledgementControlNumberLowerBound;
+ return this;
+ }
+
+ /**
+ * Get the acknowledgement control number upper bound.
+ *
+ * @return the acknowledgementControlNumberUpperBound value
+ */
+ public int acknowledgementControlNumberUpperBound() {
+ return this.acknowledgementControlNumberUpperBound;
+ }
+
+ /**
+ * Set the acknowledgement control number upper bound.
+ *
+ * @param acknowledgementControlNumberUpperBound the acknowledgementControlNumberUpperBound value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withAcknowledgementControlNumberUpperBound(int acknowledgementControlNumberUpperBound) {
+ this.acknowledgementControlNumberUpperBound = acknowledgementControlNumberUpperBound;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to rollover acknowledgement control number.
+ *
+ * @return the rolloverAcknowledgementControlNumber value
+ */
+ public boolean rolloverAcknowledgementControlNumber() {
+ return this.rolloverAcknowledgementControlNumber;
+ }
+
+ /**
+ * Set the value indicating whether to rollover acknowledgement control number.
+ *
+ * @param rolloverAcknowledgementControlNumber the rolloverAcknowledgementControlNumber value to set
+ * @return the EdifactAcknowledgementSettings object itself.
+ */
+ public EdifactAcknowledgementSettings withRolloverAcknowledgementControlNumber(boolean rolloverAcknowledgementControlNumber) {
+ this.rolloverAcknowledgementControlNumber = rolloverAcknowledgementControlNumber;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactAgreementContent.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactAgreementContent.java
new file mode 100644
index 000000000000..ec396d7c02c0
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactAgreementContent.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact agreement content.
+ */
+public class EdifactAgreementContent {
+ /**
+ * The EDIFACT one-way receive agreement.
+ */
+ @JsonProperty(value = "receiveAgreement", required = true)
+ private EdifactOneWayAgreement receiveAgreement;
+
+ /**
+ * The EDIFACT one-way send agreement.
+ */
+ @JsonProperty(value = "sendAgreement", required = true)
+ private EdifactOneWayAgreement sendAgreement;
+
+ /**
+ * Get the EDIFACT one-way receive agreement.
+ *
+ * @return the receiveAgreement value
+ */
+ public EdifactOneWayAgreement receiveAgreement() {
+ return this.receiveAgreement;
+ }
+
+ /**
+ * Set the EDIFACT one-way receive agreement.
+ *
+ * @param receiveAgreement the receiveAgreement value to set
+ * @return the EdifactAgreementContent object itself.
+ */
+ public EdifactAgreementContent withReceiveAgreement(EdifactOneWayAgreement receiveAgreement) {
+ this.receiveAgreement = receiveAgreement;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT one-way send agreement.
+ *
+ * @return the sendAgreement value
+ */
+ public EdifactOneWayAgreement sendAgreement() {
+ return this.sendAgreement;
+ }
+
+ /**
+ * Set the EDIFACT one-way send agreement.
+ *
+ * @param sendAgreement the sendAgreement value to set
+ * @return the EdifactAgreementContent object itself.
+ */
+ public EdifactAgreementContent withSendAgreement(EdifactOneWayAgreement sendAgreement) {
+ this.sendAgreement = sendAgreement;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactCharacterSet.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactCharacterSet.java
new file mode 100644
index 000000000000..07548563c335
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactCharacterSet.java
@@ -0,0 +1,80 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for EdifactCharacterSet.
+ */
+public final class EdifactCharacterSet extends ExpandableStringEnum {
+ /** Static value NotSpecified for EdifactCharacterSet. */
+ public static final EdifactCharacterSet NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value UNOB for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOB = fromString("UNOB");
+
+ /** Static value UNOA for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOA = fromString("UNOA");
+
+ /** Static value UNOC for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOC = fromString("UNOC");
+
+ /** Static value UNOD for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOD = fromString("UNOD");
+
+ /** Static value UNOE for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOE = fromString("UNOE");
+
+ /** Static value UNOF for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOF = fromString("UNOF");
+
+ /** Static value UNOG for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOG = fromString("UNOG");
+
+ /** Static value UNOH for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOH = fromString("UNOH");
+
+ /** Static value UNOI for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOI = fromString("UNOI");
+
+ /** Static value UNOJ for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOJ = fromString("UNOJ");
+
+ /** Static value UNOK for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOK = fromString("UNOK");
+
+ /** Static value UNOX for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOX = fromString("UNOX");
+
+ /** Static value UNOY for EdifactCharacterSet. */
+ public static final EdifactCharacterSet UNOY = fromString("UNOY");
+
+ /** Static value KECA for EdifactCharacterSet. */
+ public static final EdifactCharacterSet KECA = fromString("KECA");
+
+ /**
+ * Creates or finds a EdifactCharacterSet from its string representation.
+ * @param name a name to look for
+ * @return the corresponding EdifactCharacterSet
+ */
+ @JsonCreator
+ public static EdifactCharacterSet fromString(String name) {
+ return fromString(name, EdifactCharacterSet.class);
+ }
+
+ /**
+ * @return known EdifactCharacterSet values
+ */
+ public static Collection values() {
+ return values(EdifactCharacterSet.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactDecimalIndicator.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactDecimalIndicator.java
new file mode 100644
index 000000000000..9cd737141701
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactDecimalIndicator.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for EdifactDecimalIndicator.
+ */
+public enum EdifactDecimalIndicator {
+ /** Enum value NotSpecified. */
+ NOT_SPECIFIED("NotSpecified"),
+
+ /** Enum value Comma. */
+ COMMA("Comma"),
+
+ /** Enum value Decimal. */
+ DECIMAL("Decimal");
+
+ /** The actual serialized value for a EdifactDecimalIndicator instance. */
+ private String value;
+
+ EdifactDecimalIndicator(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a EdifactDecimalIndicator instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed EdifactDecimalIndicator object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static EdifactDecimalIndicator fromString(String value) {
+ EdifactDecimalIndicator[] items = EdifactDecimalIndicator.values();
+ for (EdifactDecimalIndicator item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactDelimiterOverride.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactDelimiterOverride.java
new file mode 100644
index 000000000000..35a2e36ee57d
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactDelimiterOverride.java
@@ -0,0 +1,331 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact delimiter override settings.
+ */
+public class EdifactDelimiterOverride {
+ /**
+ * The message id.
+ */
+ @JsonProperty(value = "messageId")
+ private String messageId;
+
+ /**
+ * The message version.
+ */
+ @JsonProperty(value = "messageVersion")
+ private String messageVersion;
+
+ /**
+ * The message release.
+ */
+ @JsonProperty(value = "messageRelease")
+ private String messageRelease;
+
+ /**
+ * The data element separator.
+ */
+ @JsonProperty(value = "dataElementSeparator", required = true)
+ private int dataElementSeparator;
+
+ /**
+ * The component separator.
+ */
+ @JsonProperty(value = "componentSeparator", required = true)
+ private int componentSeparator;
+
+ /**
+ * The segment terminator.
+ */
+ @JsonProperty(value = "segmentTerminator", required = true)
+ private int segmentTerminator;
+
+ /**
+ * The repetition separator.
+ */
+ @JsonProperty(value = "repetitionSeparator", required = true)
+ private int repetitionSeparator;
+
+ /**
+ * The segment terminator suffix. Possible values include: 'NotSpecified',
+ * 'None', 'CR', 'LF', 'CRLF'.
+ */
+ @JsonProperty(value = "segmentTerminatorSuffix", required = true)
+ private SegmentTerminatorSuffix segmentTerminatorSuffix;
+
+ /**
+ * The decimal point indicator. Possible values include: 'NotSpecified',
+ * 'Comma', 'Decimal'.
+ */
+ @JsonProperty(value = "decimalPointIndicator", required = true)
+ private EdifactDecimalIndicator decimalPointIndicator;
+
+ /**
+ * The release indicator.
+ */
+ @JsonProperty(value = "releaseIndicator", required = true)
+ private int releaseIndicator;
+
+ /**
+ * The message association assigned code.
+ */
+ @JsonProperty(value = "messageAssociationAssignedCode")
+ private String messageAssociationAssignedCode;
+
+ /**
+ * The target namespace on which this delimiter settings has to be applied.
+ */
+ @JsonProperty(value = "targetNamespace")
+ private String targetNamespace;
+
+ /**
+ * Get the message id.
+ *
+ * @return the messageId value
+ */
+ public String messageId() {
+ return this.messageId;
+ }
+
+ /**
+ * Set the message id.
+ *
+ * @param messageId the messageId value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withMessageId(String messageId) {
+ this.messageId = messageId;
+ return this;
+ }
+
+ /**
+ * Get the message version.
+ *
+ * @return the messageVersion value
+ */
+ public String messageVersion() {
+ return this.messageVersion;
+ }
+
+ /**
+ * Set the message version.
+ *
+ * @param messageVersion the messageVersion value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withMessageVersion(String messageVersion) {
+ this.messageVersion = messageVersion;
+ return this;
+ }
+
+ /**
+ * Get the message release.
+ *
+ * @return the messageRelease value
+ */
+ public String messageRelease() {
+ return this.messageRelease;
+ }
+
+ /**
+ * Set the message release.
+ *
+ * @param messageRelease the messageRelease value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withMessageRelease(String messageRelease) {
+ this.messageRelease = messageRelease;
+ return this;
+ }
+
+ /**
+ * Get the data element separator.
+ *
+ * @return the dataElementSeparator value
+ */
+ public int dataElementSeparator() {
+ return this.dataElementSeparator;
+ }
+
+ /**
+ * Set the data element separator.
+ *
+ * @param dataElementSeparator the dataElementSeparator value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withDataElementSeparator(int dataElementSeparator) {
+ this.dataElementSeparator = dataElementSeparator;
+ return this;
+ }
+
+ /**
+ * Get the component separator.
+ *
+ * @return the componentSeparator value
+ */
+ public int componentSeparator() {
+ return this.componentSeparator;
+ }
+
+ /**
+ * Set the component separator.
+ *
+ * @param componentSeparator the componentSeparator value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withComponentSeparator(int componentSeparator) {
+ this.componentSeparator = componentSeparator;
+ return this;
+ }
+
+ /**
+ * Get the segment terminator.
+ *
+ * @return the segmentTerminator value
+ */
+ public int segmentTerminator() {
+ return this.segmentTerminator;
+ }
+
+ /**
+ * Set the segment terminator.
+ *
+ * @param segmentTerminator the segmentTerminator value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withSegmentTerminator(int segmentTerminator) {
+ this.segmentTerminator = segmentTerminator;
+ return this;
+ }
+
+ /**
+ * Get the repetition separator.
+ *
+ * @return the repetitionSeparator value
+ */
+ public int repetitionSeparator() {
+ return this.repetitionSeparator;
+ }
+
+ /**
+ * Set the repetition separator.
+ *
+ * @param repetitionSeparator the repetitionSeparator value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withRepetitionSeparator(int repetitionSeparator) {
+ this.repetitionSeparator = repetitionSeparator;
+ return this;
+ }
+
+ /**
+ * Get the segment terminator suffix. Possible values include: 'NotSpecified', 'None', 'CR', 'LF', 'CRLF'.
+ *
+ * @return the segmentTerminatorSuffix value
+ */
+ public SegmentTerminatorSuffix segmentTerminatorSuffix() {
+ return this.segmentTerminatorSuffix;
+ }
+
+ /**
+ * Set the segment terminator suffix. Possible values include: 'NotSpecified', 'None', 'CR', 'LF', 'CRLF'.
+ *
+ * @param segmentTerminatorSuffix the segmentTerminatorSuffix value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withSegmentTerminatorSuffix(SegmentTerminatorSuffix segmentTerminatorSuffix) {
+ this.segmentTerminatorSuffix = segmentTerminatorSuffix;
+ return this;
+ }
+
+ /**
+ * Get the decimal point indicator. Possible values include: 'NotSpecified', 'Comma', 'Decimal'.
+ *
+ * @return the decimalPointIndicator value
+ */
+ public EdifactDecimalIndicator decimalPointIndicator() {
+ return this.decimalPointIndicator;
+ }
+
+ /**
+ * Set the decimal point indicator. Possible values include: 'NotSpecified', 'Comma', 'Decimal'.
+ *
+ * @param decimalPointIndicator the decimalPointIndicator value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withDecimalPointIndicator(EdifactDecimalIndicator decimalPointIndicator) {
+ this.decimalPointIndicator = decimalPointIndicator;
+ return this;
+ }
+
+ /**
+ * Get the release indicator.
+ *
+ * @return the releaseIndicator value
+ */
+ public int releaseIndicator() {
+ return this.releaseIndicator;
+ }
+
+ /**
+ * Set the release indicator.
+ *
+ * @param releaseIndicator the releaseIndicator value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withReleaseIndicator(int releaseIndicator) {
+ this.releaseIndicator = releaseIndicator;
+ return this;
+ }
+
+ /**
+ * Get the message association assigned code.
+ *
+ * @return the messageAssociationAssignedCode value
+ */
+ public String messageAssociationAssignedCode() {
+ return this.messageAssociationAssignedCode;
+ }
+
+ /**
+ * Set the message association assigned code.
+ *
+ * @param messageAssociationAssignedCode the messageAssociationAssignedCode value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withMessageAssociationAssignedCode(String messageAssociationAssignedCode) {
+ this.messageAssociationAssignedCode = messageAssociationAssignedCode;
+ return this;
+ }
+
+ /**
+ * Get the target namespace on which this delimiter settings has to be applied.
+ *
+ * @return the targetNamespace value
+ */
+ public String targetNamespace() {
+ return this.targetNamespace;
+ }
+
+ /**
+ * Set the target namespace on which this delimiter settings has to be applied.
+ *
+ * @param targetNamespace the targetNamespace value to set
+ * @return the EdifactDelimiterOverride object itself.
+ */
+ public EdifactDelimiterOverride withTargetNamespace(String targetNamespace) {
+ this.targetNamespace = targetNamespace;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactEnvelopeOverride.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactEnvelopeOverride.java
new file mode 100644
index 000000000000..6c9f30ac0967
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactEnvelopeOverride.java
@@ -0,0 +1,408 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact envelope override settings.
+ */
+public class EdifactEnvelopeOverride {
+ /**
+ * The message id on which this envelope settings has to be applied.
+ */
+ @JsonProperty(value = "messageId")
+ private String messageId;
+
+ /**
+ * The message version on which this envelope settings has to be applied.
+ */
+ @JsonProperty(value = "messageVersion")
+ private String messageVersion;
+
+ /**
+ * The message release version on which this envelope settings has to be
+ * applied.
+ */
+ @JsonProperty(value = "messageRelease")
+ private String messageRelease;
+
+ /**
+ * The message association assigned code.
+ */
+ @JsonProperty(value = "messageAssociationAssignedCode")
+ private String messageAssociationAssignedCode;
+
+ /**
+ * The target namespace on which this envelope settings has to be applied.
+ */
+ @JsonProperty(value = "targetNamespace")
+ private String targetNamespace;
+
+ /**
+ * The functional group id.
+ */
+ @JsonProperty(value = "functionalGroupId")
+ private String functionalGroupId;
+
+ /**
+ * The sender application qualifier.
+ */
+ @JsonProperty(value = "senderApplicationQualifier")
+ private String senderApplicationQualifier;
+
+ /**
+ * The sender application id.
+ */
+ @JsonProperty(value = "senderApplicationId")
+ private String senderApplicationId;
+
+ /**
+ * The receiver application qualifier.
+ */
+ @JsonProperty(value = "receiverApplicationQualifier")
+ private String receiverApplicationQualifier;
+
+ /**
+ * The receiver application id.
+ */
+ @JsonProperty(value = "receiverApplicationId")
+ private String receiverApplicationId;
+
+ /**
+ * The controlling agency code.
+ */
+ @JsonProperty(value = "controllingAgencyCode")
+ private String controllingAgencyCode;
+
+ /**
+ * The group header message version.
+ */
+ @JsonProperty(value = "groupHeaderMessageVersion")
+ private String groupHeaderMessageVersion;
+
+ /**
+ * The group header message release.
+ */
+ @JsonProperty(value = "groupHeaderMessageRelease")
+ private String groupHeaderMessageRelease;
+
+ /**
+ * The association assigned code.
+ */
+ @JsonProperty(value = "associationAssignedCode")
+ private String associationAssignedCode;
+
+ /**
+ * The application password.
+ */
+ @JsonProperty(value = "applicationPassword")
+ private String applicationPassword;
+
+ /**
+ * Get the message id on which this envelope settings has to be applied.
+ *
+ * @return the messageId value
+ */
+ public String messageId() {
+ return this.messageId;
+ }
+
+ /**
+ * Set the message id on which this envelope settings has to be applied.
+ *
+ * @param messageId the messageId value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withMessageId(String messageId) {
+ this.messageId = messageId;
+ return this;
+ }
+
+ /**
+ * Get the message version on which this envelope settings has to be applied.
+ *
+ * @return the messageVersion value
+ */
+ public String messageVersion() {
+ return this.messageVersion;
+ }
+
+ /**
+ * Set the message version on which this envelope settings has to be applied.
+ *
+ * @param messageVersion the messageVersion value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withMessageVersion(String messageVersion) {
+ this.messageVersion = messageVersion;
+ return this;
+ }
+
+ /**
+ * Get the message release version on which this envelope settings has to be applied.
+ *
+ * @return the messageRelease value
+ */
+ public String messageRelease() {
+ return this.messageRelease;
+ }
+
+ /**
+ * Set the message release version on which this envelope settings has to be applied.
+ *
+ * @param messageRelease the messageRelease value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withMessageRelease(String messageRelease) {
+ this.messageRelease = messageRelease;
+ return this;
+ }
+
+ /**
+ * Get the message association assigned code.
+ *
+ * @return the messageAssociationAssignedCode value
+ */
+ public String messageAssociationAssignedCode() {
+ return this.messageAssociationAssignedCode;
+ }
+
+ /**
+ * Set the message association assigned code.
+ *
+ * @param messageAssociationAssignedCode the messageAssociationAssignedCode value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withMessageAssociationAssignedCode(String messageAssociationAssignedCode) {
+ this.messageAssociationAssignedCode = messageAssociationAssignedCode;
+ return this;
+ }
+
+ /**
+ * Get the target namespace on which this envelope settings has to be applied.
+ *
+ * @return the targetNamespace value
+ */
+ public String targetNamespace() {
+ return this.targetNamespace;
+ }
+
+ /**
+ * Set the target namespace on which this envelope settings has to be applied.
+ *
+ * @param targetNamespace the targetNamespace value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withTargetNamespace(String targetNamespace) {
+ this.targetNamespace = targetNamespace;
+ return this;
+ }
+
+ /**
+ * Get the functional group id.
+ *
+ * @return the functionalGroupId value
+ */
+ public String functionalGroupId() {
+ return this.functionalGroupId;
+ }
+
+ /**
+ * Set the functional group id.
+ *
+ * @param functionalGroupId the functionalGroupId value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withFunctionalGroupId(String functionalGroupId) {
+ this.functionalGroupId = functionalGroupId;
+ return this;
+ }
+
+ /**
+ * Get the sender application qualifier.
+ *
+ * @return the senderApplicationQualifier value
+ */
+ public String senderApplicationQualifier() {
+ return this.senderApplicationQualifier;
+ }
+
+ /**
+ * Set the sender application qualifier.
+ *
+ * @param senderApplicationQualifier the senderApplicationQualifier value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withSenderApplicationQualifier(String senderApplicationQualifier) {
+ this.senderApplicationQualifier = senderApplicationQualifier;
+ return this;
+ }
+
+ /**
+ * Get the sender application id.
+ *
+ * @return the senderApplicationId value
+ */
+ public String senderApplicationId() {
+ return this.senderApplicationId;
+ }
+
+ /**
+ * Set the sender application id.
+ *
+ * @param senderApplicationId the senderApplicationId value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withSenderApplicationId(String senderApplicationId) {
+ this.senderApplicationId = senderApplicationId;
+ return this;
+ }
+
+ /**
+ * Get the receiver application qualifier.
+ *
+ * @return the receiverApplicationQualifier value
+ */
+ public String receiverApplicationQualifier() {
+ return this.receiverApplicationQualifier;
+ }
+
+ /**
+ * Set the receiver application qualifier.
+ *
+ * @param receiverApplicationQualifier the receiverApplicationQualifier value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withReceiverApplicationQualifier(String receiverApplicationQualifier) {
+ this.receiverApplicationQualifier = receiverApplicationQualifier;
+ return this;
+ }
+
+ /**
+ * Get the receiver application id.
+ *
+ * @return the receiverApplicationId value
+ */
+ public String receiverApplicationId() {
+ return this.receiverApplicationId;
+ }
+
+ /**
+ * Set the receiver application id.
+ *
+ * @param receiverApplicationId the receiverApplicationId value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withReceiverApplicationId(String receiverApplicationId) {
+ this.receiverApplicationId = receiverApplicationId;
+ return this;
+ }
+
+ /**
+ * Get the controlling agency code.
+ *
+ * @return the controllingAgencyCode value
+ */
+ public String controllingAgencyCode() {
+ return this.controllingAgencyCode;
+ }
+
+ /**
+ * Set the controlling agency code.
+ *
+ * @param controllingAgencyCode the controllingAgencyCode value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withControllingAgencyCode(String controllingAgencyCode) {
+ this.controllingAgencyCode = controllingAgencyCode;
+ return this;
+ }
+
+ /**
+ * Get the group header message version.
+ *
+ * @return the groupHeaderMessageVersion value
+ */
+ public String groupHeaderMessageVersion() {
+ return this.groupHeaderMessageVersion;
+ }
+
+ /**
+ * Set the group header message version.
+ *
+ * @param groupHeaderMessageVersion the groupHeaderMessageVersion value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withGroupHeaderMessageVersion(String groupHeaderMessageVersion) {
+ this.groupHeaderMessageVersion = groupHeaderMessageVersion;
+ return this;
+ }
+
+ /**
+ * Get the group header message release.
+ *
+ * @return the groupHeaderMessageRelease value
+ */
+ public String groupHeaderMessageRelease() {
+ return this.groupHeaderMessageRelease;
+ }
+
+ /**
+ * Set the group header message release.
+ *
+ * @param groupHeaderMessageRelease the groupHeaderMessageRelease value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withGroupHeaderMessageRelease(String groupHeaderMessageRelease) {
+ this.groupHeaderMessageRelease = groupHeaderMessageRelease;
+ return this;
+ }
+
+ /**
+ * Get the association assigned code.
+ *
+ * @return the associationAssignedCode value
+ */
+ public String associationAssignedCode() {
+ return this.associationAssignedCode;
+ }
+
+ /**
+ * Set the association assigned code.
+ *
+ * @param associationAssignedCode the associationAssignedCode value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withAssociationAssignedCode(String associationAssignedCode) {
+ this.associationAssignedCode = associationAssignedCode;
+ return this;
+ }
+
+ /**
+ * Get the application password.
+ *
+ * @return the applicationPassword value
+ */
+ public String applicationPassword() {
+ return this.applicationPassword;
+ }
+
+ /**
+ * Set the application password.
+ *
+ * @param applicationPassword the applicationPassword value to set
+ * @return the EdifactEnvelopeOverride object itself.
+ */
+ public EdifactEnvelopeOverride withApplicationPassword(String applicationPassword) {
+ this.applicationPassword = applicationPassword;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactEnvelopeSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactEnvelopeSettings.java
new file mode 100644
index 000000000000..c1f28cc68d65
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactEnvelopeSettings.java
@@ -0,0 +1,1084 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact agreement envelope settings.
+ */
+public class EdifactEnvelopeSettings {
+ /**
+ * The group association assigned code.
+ */
+ @JsonProperty(value = "groupAssociationAssignedCode")
+ private String groupAssociationAssignedCode;
+
+ /**
+ * The communication agreement id.
+ */
+ @JsonProperty(value = "communicationAgreementId")
+ private String communicationAgreementId;
+
+ /**
+ * The value indicating whether to apply delimiter string advice.
+ */
+ @JsonProperty(value = "applyDelimiterStringAdvice", required = true)
+ private boolean applyDelimiterStringAdvice;
+
+ /**
+ * The value indicating whether to create grouping segments.
+ */
+ @JsonProperty(value = "createGroupingSegments", required = true)
+ private boolean createGroupingSegments;
+
+ /**
+ * The value indicating whether to enable default group headers.
+ */
+ @JsonProperty(value = "enableDefaultGroupHeaders", required = true)
+ private boolean enableDefaultGroupHeaders;
+
+ /**
+ * The recipient reference password value.
+ */
+ @JsonProperty(value = "recipientReferencePasswordValue")
+ private String recipientReferencePasswordValue;
+
+ /**
+ * The recipient reference password qualifier.
+ */
+ @JsonProperty(value = "recipientReferencePasswordQualifier")
+ private String recipientReferencePasswordQualifier;
+
+ /**
+ * The application reference id.
+ */
+ @JsonProperty(value = "applicationReferenceId")
+ private String applicationReferenceId;
+
+ /**
+ * The processing priority code.
+ */
+ @JsonProperty(value = "processingPriorityCode")
+ private String processingPriorityCode;
+
+ /**
+ * The interchange control number lower bound.
+ */
+ @JsonProperty(value = "interchangeControlNumberLowerBound", required = true)
+ private long interchangeControlNumberLowerBound;
+
+ /**
+ * The interchange control number upper bound.
+ */
+ @JsonProperty(value = "interchangeControlNumberUpperBound", required = true)
+ private long interchangeControlNumberUpperBound;
+
+ /**
+ * The value indicating whether to rollover interchange control number.
+ */
+ @JsonProperty(value = "rolloverInterchangeControlNumber", required = true)
+ private boolean rolloverInterchangeControlNumber;
+
+ /**
+ * The interchange control number prefix.
+ */
+ @JsonProperty(value = "interchangeControlNumberPrefix")
+ private String interchangeControlNumberPrefix;
+
+ /**
+ * The interchange control number suffix.
+ */
+ @JsonProperty(value = "interchangeControlNumberSuffix")
+ private String interchangeControlNumberSuffix;
+
+ /**
+ * The sender reverse routing address.
+ */
+ @JsonProperty(value = "senderReverseRoutingAddress")
+ private String senderReverseRoutingAddress;
+
+ /**
+ * The receiver reverse routing address.
+ */
+ @JsonProperty(value = "receiverReverseRoutingAddress")
+ private String receiverReverseRoutingAddress;
+
+ /**
+ * The functional group id.
+ */
+ @JsonProperty(value = "functionalGroupId")
+ private String functionalGroupId;
+
+ /**
+ * The group controlling agency code.
+ */
+ @JsonProperty(value = "groupControllingAgencyCode")
+ private String groupControllingAgencyCode;
+
+ /**
+ * The group message version.
+ */
+ @JsonProperty(value = "groupMessageVersion")
+ private String groupMessageVersion;
+
+ /**
+ * The group message release.
+ */
+ @JsonProperty(value = "groupMessageRelease")
+ private String groupMessageRelease;
+
+ /**
+ * The group control number lower bound.
+ */
+ @JsonProperty(value = "groupControlNumberLowerBound", required = true)
+ private long groupControlNumberLowerBound;
+
+ /**
+ * The group control number upper bound.
+ */
+ @JsonProperty(value = "groupControlNumberUpperBound", required = true)
+ private long groupControlNumberUpperBound;
+
+ /**
+ * The value indicating whether to rollover group control number.
+ */
+ @JsonProperty(value = "rolloverGroupControlNumber", required = true)
+ private boolean rolloverGroupControlNumber;
+
+ /**
+ * The group control number prefix.
+ */
+ @JsonProperty(value = "groupControlNumberPrefix")
+ private String groupControlNumberPrefix;
+
+ /**
+ * The group control number suffix.
+ */
+ @JsonProperty(value = "groupControlNumberSuffix")
+ private String groupControlNumberSuffix;
+
+ /**
+ * The group application receiver qualifier.
+ */
+ @JsonProperty(value = "groupApplicationReceiverQualifier")
+ private String groupApplicationReceiverQualifier;
+
+ /**
+ * The group application receiver id.
+ */
+ @JsonProperty(value = "groupApplicationReceiverId")
+ private String groupApplicationReceiverId;
+
+ /**
+ * The group application sender qualifier.
+ */
+ @JsonProperty(value = "groupApplicationSenderQualifier")
+ private String groupApplicationSenderQualifier;
+
+ /**
+ * The group application sender id.
+ */
+ @JsonProperty(value = "groupApplicationSenderId")
+ private String groupApplicationSenderId;
+
+ /**
+ * The group application password.
+ */
+ @JsonProperty(value = "groupApplicationPassword")
+ private String groupApplicationPassword;
+
+ /**
+ * The value indicating whether to overwrite existing transaction set
+ * control number.
+ */
+ @JsonProperty(value = "overwriteExistingTransactionSetControlNumber", required = true)
+ private boolean overwriteExistingTransactionSetControlNumber;
+
+ /**
+ * The transaction set control number prefix.
+ */
+ @JsonProperty(value = "transactionSetControlNumberPrefix")
+ private String transactionSetControlNumberPrefix;
+
+ /**
+ * The transaction set control number suffix.
+ */
+ @JsonProperty(value = "transactionSetControlNumberSuffix")
+ private String transactionSetControlNumberSuffix;
+
+ /**
+ * The transaction set control number lower bound.
+ */
+ @JsonProperty(value = "transactionSetControlNumberLowerBound", required = true)
+ private long transactionSetControlNumberLowerBound;
+
+ /**
+ * The transaction set control number upper bound.
+ */
+ @JsonProperty(value = "transactionSetControlNumberUpperBound", required = true)
+ private long transactionSetControlNumberUpperBound;
+
+ /**
+ * The value indicating whether to rollover transaction set control number.
+ */
+ @JsonProperty(value = "rolloverTransactionSetControlNumber", required = true)
+ private boolean rolloverTransactionSetControlNumber;
+
+ /**
+ * The value indicating whether the message is a test interchange.
+ */
+ @JsonProperty(value = "isTestInterchange", required = true)
+ private boolean isTestInterchange;
+
+ /**
+ * The sender internal identification.
+ */
+ @JsonProperty(value = "senderInternalIdentification")
+ private String senderInternalIdentification;
+
+ /**
+ * The sender internal sub identification.
+ */
+ @JsonProperty(value = "senderInternalSubIdentification")
+ private String senderInternalSubIdentification;
+
+ /**
+ * The receiver internal identification.
+ */
+ @JsonProperty(value = "receiverInternalIdentification")
+ private String receiverInternalIdentification;
+
+ /**
+ * The receiver internal sub identification.
+ */
+ @JsonProperty(value = "receiverInternalSubIdentification")
+ private String receiverInternalSubIdentification;
+
+ /**
+ * Get the group association assigned code.
+ *
+ * @return the groupAssociationAssignedCode value
+ */
+ public String groupAssociationAssignedCode() {
+ return this.groupAssociationAssignedCode;
+ }
+
+ /**
+ * Set the group association assigned code.
+ *
+ * @param groupAssociationAssignedCode the groupAssociationAssignedCode value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupAssociationAssignedCode(String groupAssociationAssignedCode) {
+ this.groupAssociationAssignedCode = groupAssociationAssignedCode;
+ return this;
+ }
+
+ /**
+ * Get the communication agreement id.
+ *
+ * @return the communicationAgreementId value
+ */
+ public String communicationAgreementId() {
+ return this.communicationAgreementId;
+ }
+
+ /**
+ * Set the communication agreement id.
+ *
+ * @param communicationAgreementId the communicationAgreementId value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withCommunicationAgreementId(String communicationAgreementId) {
+ this.communicationAgreementId = communicationAgreementId;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to apply delimiter string advice.
+ *
+ * @return the applyDelimiterStringAdvice value
+ */
+ public boolean applyDelimiterStringAdvice() {
+ return this.applyDelimiterStringAdvice;
+ }
+
+ /**
+ * Set the value indicating whether to apply delimiter string advice.
+ *
+ * @param applyDelimiterStringAdvice the applyDelimiterStringAdvice value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withApplyDelimiterStringAdvice(boolean applyDelimiterStringAdvice) {
+ this.applyDelimiterStringAdvice = applyDelimiterStringAdvice;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to create grouping segments.
+ *
+ * @return the createGroupingSegments value
+ */
+ public boolean createGroupingSegments() {
+ return this.createGroupingSegments;
+ }
+
+ /**
+ * Set the value indicating whether to create grouping segments.
+ *
+ * @param createGroupingSegments the createGroupingSegments value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withCreateGroupingSegments(boolean createGroupingSegments) {
+ this.createGroupingSegments = createGroupingSegments;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to enable default group headers.
+ *
+ * @return the enableDefaultGroupHeaders value
+ */
+ public boolean enableDefaultGroupHeaders() {
+ return this.enableDefaultGroupHeaders;
+ }
+
+ /**
+ * Set the value indicating whether to enable default group headers.
+ *
+ * @param enableDefaultGroupHeaders the enableDefaultGroupHeaders value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withEnableDefaultGroupHeaders(boolean enableDefaultGroupHeaders) {
+ this.enableDefaultGroupHeaders = enableDefaultGroupHeaders;
+ return this;
+ }
+
+ /**
+ * Get the recipient reference password value.
+ *
+ * @return the recipientReferencePasswordValue value
+ */
+ public String recipientReferencePasswordValue() {
+ return this.recipientReferencePasswordValue;
+ }
+
+ /**
+ * Set the recipient reference password value.
+ *
+ * @param recipientReferencePasswordValue the recipientReferencePasswordValue value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withRecipientReferencePasswordValue(String recipientReferencePasswordValue) {
+ this.recipientReferencePasswordValue = recipientReferencePasswordValue;
+ return this;
+ }
+
+ /**
+ * Get the recipient reference password qualifier.
+ *
+ * @return the recipientReferencePasswordQualifier value
+ */
+ public String recipientReferencePasswordQualifier() {
+ return this.recipientReferencePasswordQualifier;
+ }
+
+ /**
+ * Set the recipient reference password qualifier.
+ *
+ * @param recipientReferencePasswordQualifier the recipientReferencePasswordQualifier value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withRecipientReferencePasswordQualifier(String recipientReferencePasswordQualifier) {
+ this.recipientReferencePasswordQualifier = recipientReferencePasswordQualifier;
+ return this;
+ }
+
+ /**
+ * Get the application reference id.
+ *
+ * @return the applicationReferenceId value
+ */
+ public String applicationReferenceId() {
+ return this.applicationReferenceId;
+ }
+
+ /**
+ * Set the application reference id.
+ *
+ * @param applicationReferenceId the applicationReferenceId value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withApplicationReferenceId(String applicationReferenceId) {
+ this.applicationReferenceId = applicationReferenceId;
+ return this;
+ }
+
+ /**
+ * Get the processing priority code.
+ *
+ * @return the processingPriorityCode value
+ */
+ public String processingPriorityCode() {
+ return this.processingPriorityCode;
+ }
+
+ /**
+ * Set the processing priority code.
+ *
+ * @param processingPriorityCode the processingPriorityCode value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withProcessingPriorityCode(String processingPriorityCode) {
+ this.processingPriorityCode = processingPriorityCode;
+ return this;
+ }
+
+ /**
+ * Get the interchange control number lower bound.
+ *
+ * @return the interchangeControlNumberLowerBound value
+ */
+ public long interchangeControlNumberLowerBound() {
+ return this.interchangeControlNumberLowerBound;
+ }
+
+ /**
+ * Set the interchange control number lower bound.
+ *
+ * @param interchangeControlNumberLowerBound the interchangeControlNumberLowerBound value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withInterchangeControlNumberLowerBound(long interchangeControlNumberLowerBound) {
+ this.interchangeControlNumberLowerBound = interchangeControlNumberLowerBound;
+ return this;
+ }
+
+ /**
+ * Get the interchange control number upper bound.
+ *
+ * @return the interchangeControlNumberUpperBound value
+ */
+ public long interchangeControlNumberUpperBound() {
+ return this.interchangeControlNumberUpperBound;
+ }
+
+ /**
+ * Set the interchange control number upper bound.
+ *
+ * @param interchangeControlNumberUpperBound the interchangeControlNumberUpperBound value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withInterchangeControlNumberUpperBound(long interchangeControlNumberUpperBound) {
+ this.interchangeControlNumberUpperBound = interchangeControlNumberUpperBound;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to rollover interchange control number.
+ *
+ * @return the rolloverInterchangeControlNumber value
+ */
+ public boolean rolloverInterchangeControlNumber() {
+ return this.rolloverInterchangeControlNumber;
+ }
+
+ /**
+ * Set the value indicating whether to rollover interchange control number.
+ *
+ * @param rolloverInterchangeControlNumber the rolloverInterchangeControlNumber value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withRolloverInterchangeControlNumber(boolean rolloverInterchangeControlNumber) {
+ this.rolloverInterchangeControlNumber = rolloverInterchangeControlNumber;
+ return this;
+ }
+
+ /**
+ * Get the interchange control number prefix.
+ *
+ * @return the interchangeControlNumberPrefix value
+ */
+ public String interchangeControlNumberPrefix() {
+ return this.interchangeControlNumberPrefix;
+ }
+
+ /**
+ * Set the interchange control number prefix.
+ *
+ * @param interchangeControlNumberPrefix the interchangeControlNumberPrefix value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withInterchangeControlNumberPrefix(String interchangeControlNumberPrefix) {
+ this.interchangeControlNumberPrefix = interchangeControlNumberPrefix;
+ return this;
+ }
+
+ /**
+ * Get the interchange control number suffix.
+ *
+ * @return the interchangeControlNumberSuffix value
+ */
+ public String interchangeControlNumberSuffix() {
+ return this.interchangeControlNumberSuffix;
+ }
+
+ /**
+ * Set the interchange control number suffix.
+ *
+ * @param interchangeControlNumberSuffix the interchangeControlNumberSuffix value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withInterchangeControlNumberSuffix(String interchangeControlNumberSuffix) {
+ this.interchangeControlNumberSuffix = interchangeControlNumberSuffix;
+ return this;
+ }
+
+ /**
+ * Get the sender reverse routing address.
+ *
+ * @return the senderReverseRoutingAddress value
+ */
+ public String senderReverseRoutingAddress() {
+ return this.senderReverseRoutingAddress;
+ }
+
+ /**
+ * Set the sender reverse routing address.
+ *
+ * @param senderReverseRoutingAddress the senderReverseRoutingAddress value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withSenderReverseRoutingAddress(String senderReverseRoutingAddress) {
+ this.senderReverseRoutingAddress = senderReverseRoutingAddress;
+ return this;
+ }
+
+ /**
+ * Get the receiver reverse routing address.
+ *
+ * @return the receiverReverseRoutingAddress value
+ */
+ public String receiverReverseRoutingAddress() {
+ return this.receiverReverseRoutingAddress;
+ }
+
+ /**
+ * Set the receiver reverse routing address.
+ *
+ * @param receiverReverseRoutingAddress the receiverReverseRoutingAddress value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withReceiverReverseRoutingAddress(String receiverReverseRoutingAddress) {
+ this.receiverReverseRoutingAddress = receiverReverseRoutingAddress;
+ return this;
+ }
+
+ /**
+ * Get the functional group id.
+ *
+ * @return the functionalGroupId value
+ */
+ public String functionalGroupId() {
+ return this.functionalGroupId;
+ }
+
+ /**
+ * Set the functional group id.
+ *
+ * @param functionalGroupId the functionalGroupId value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withFunctionalGroupId(String functionalGroupId) {
+ this.functionalGroupId = functionalGroupId;
+ return this;
+ }
+
+ /**
+ * Get the group controlling agency code.
+ *
+ * @return the groupControllingAgencyCode value
+ */
+ public String groupControllingAgencyCode() {
+ return this.groupControllingAgencyCode;
+ }
+
+ /**
+ * Set the group controlling agency code.
+ *
+ * @param groupControllingAgencyCode the groupControllingAgencyCode value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupControllingAgencyCode(String groupControllingAgencyCode) {
+ this.groupControllingAgencyCode = groupControllingAgencyCode;
+ return this;
+ }
+
+ /**
+ * Get the group message version.
+ *
+ * @return the groupMessageVersion value
+ */
+ public String groupMessageVersion() {
+ return this.groupMessageVersion;
+ }
+
+ /**
+ * Set the group message version.
+ *
+ * @param groupMessageVersion the groupMessageVersion value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupMessageVersion(String groupMessageVersion) {
+ this.groupMessageVersion = groupMessageVersion;
+ return this;
+ }
+
+ /**
+ * Get the group message release.
+ *
+ * @return the groupMessageRelease value
+ */
+ public String groupMessageRelease() {
+ return this.groupMessageRelease;
+ }
+
+ /**
+ * Set the group message release.
+ *
+ * @param groupMessageRelease the groupMessageRelease value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupMessageRelease(String groupMessageRelease) {
+ this.groupMessageRelease = groupMessageRelease;
+ return this;
+ }
+
+ /**
+ * Get the group control number lower bound.
+ *
+ * @return the groupControlNumberLowerBound value
+ */
+ public long groupControlNumberLowerBound() {
+ return this.groupControlNumberLowerBound;
+ }
+
+ /**
+ * Set the group control number lower bound.
+ *
+ * @param groupControlNumberLowerBound the groupControlNumberLowerBound value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupControlNumberLowerBound(long groupControlNumberLowerBound) {
+ this.groupControlNumberLowerBound = groupControlNumberLowerBound;
+ return this;
+ }
+
+ /**
+ * Get the group control number upper bound.
+ *
+ * @return the groupControlNumberUpperBound value
+ */
+ public long groupControlNumberUpperBound() {
+ return this.groupControlNumberUpperBound;
+ }
+
+ /**
+ * Set the group control number upper bound.
+ *
+ * @param groupControlNumberUpperBound the groupControlNumberUpperBound value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupControlNumberUpperBound(long groupControlNumberUpperBound) {
+ this.groupControlNumberUpperBound = groupControlNumberUpperBound;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to rollover group control number.
+ *
+ * @return the rolloverGroupControlNumber value
+ */
+ public boolean rolloverGroupControlNumber() {
+ return this.rolloverGroupControlNumber;
+ }
+
+ /**
+ * Set the value indicating whether to rollover group control number.
+ *
+ * @param rolloverGroupControlNumber the rolloverGroupControlNumber value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withRolloverGroupControlNumber(boolean rolloverGroupControlNumber) {
+ this.rolloverGroupControlNumber = rolloverGroupControlNumber;
+ return this;
+ }
+
+ /**
+ * Get the group control number prefix.
+ *
+ * @return the groupControlNumberPrefix value
+ */
+ public String groupControlNumberPrefix() {
+ return this.groupControlNumberPrefix;
+ }
+
+ /**
+ * Set the group control number prefix.
+ *
+ * @param groupControlNumberPrefix the groupControlNumberPrefix value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupControlNumberPrefix(String groupControlNumberPrefix) {
+ this.groupControlNumberPrefix = groupControlNumberPrefix;
+ return this;
+ }
+
+ /**
+ * Get the group control number suffix.
+ *
+ * @return the groupControlNumberSuffix value
+ */
+ public String groupControlNumberSuffix() {
+ return this.groupControlNumberSuffix;
+ }
+
+ /**
+ * Set the group control number suffix.
+ *
+ * @param groupControlNumberSuffix the groupControlNumberSuffix value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupControlNumberSuffix(String groupControlNumberSuffix) {
+ this.groupControlNumberSuffix = groupControlNumberSuffix;
+ return this;
+ }
+
+ /**
+ * Get the group application receiver qualifier.
+ *
+ * @return the groupApplicationReceiverQualifier value
+ */
+ public String groupApplicationReceiverQualifier() {
+ return this.groupApplicationReceiverQualifier;
+ }
+
+ /**
+ * Set the group application receiver qualifier.
+ *
+ * @param groupApplicationReceiverQualifier the groupApplicationReceiverQualifier value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupApplicationReceiverQualifier(String groupApplicationReceiverQualifier) {
+ this.groupApplicationReceiverQualifier = groupApplicationReceiverQualifier;
+ return this;
+ }
+
+ /**
+ * Get the group application receiver id.
+ *
+ * @return the groupApplicationReceiverId value
+ */
+ public String groupApplicationReceiverId() {
+ return this.groupApplicationReceiverId;
+ }
+
+ /**
+ * Set the group application receiver id.
+ *
+ * @param groupApplicationReceiverId the groupApplicationReceiverId value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupApplicationReceiverId(String groupApplicationReceiverId) {
+ this.groupApplicationReceiverId = groupApplicationReceiverId;
+ return this;
+ }
+
+ /**
+ * Get the group application sender qualifier.
+ *
+ * @return the groupApplicationSenderQualifier value
+ */
+ public String groupApplicationSenderQualifier() {
+ return this.groupApplicationSenderQualifier;
+ }
+
+ /**
+ * Set the group application sender qualifier.
+ *
+ * @param groupApplicationSenderQualifier the groupApplicationSenderQualifier value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupApplicationSenderQualifier(String groupApplicationSenderQualifier) {
+ this.groupApplicationSenderQualifier = groupApplicationSenderQualifier;
+ return this;
+ }
+
+ /**
+ * Get the group application sender id.
+ *
+ * @return the groupApplicationSenderId value
+ */
+ public String groupApplicationSenderId() {
+ return this.groupApplicationSenderId;
+ }
+
+ /**
+ * Set the group application sender id.
+ *
+ * @param groupApplicationSenderId the groupApplicationSenderId value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupApplicationSenderId(String groupApplicationSenderId) {
+ this.groupApplicationSenderId = groupApplicationSenderId;
+ return this;
+ }
+
+ /**
+ * Get the group application password.
+ *
+ * @return the groupApplicationPassword value
+ */
+ public String groupApplicationPassword() {
+ return this.groupApplicationPassword;
+ }
+
+ /**
+ * Set the group application password.
+ *
+ * @param groupApplicationPassword the groupApplicationPassword value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withGroupApplicationPassword(String groupApplicationPassword) {
+ this.groupApplicationPassword = groupApplicationPassword;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to overwrite existing transaction set control number.
+ *
+ * @return the overwriteExistingTransactionSetControlNumber value
+ */
+ public boolean overwriteExistingTransactionSetControlNumber() {
+ return this.overwriteExistingTransactionSetControlNumber;
+ }
+
+ /**
+ * Set the value indicating whether to overwrite existing transaction set control number.
+ *
+ * @param overwriteExistingTransactionSetControlNumber the overwriteExistingTransactionSetControlNumber value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withOverwriteExistingTransactionSetControlNumber(boolean overwriteExistingTransactionSetControlNumber) {
+ this.overwriteExistingTransactionSetControlNumber = overwriteExistingTransactionSetControlNumber;
+ return this;
+ }
+
+ /**
+ * Get the transaction set control number prefix.
+ *
+ * @return the transactionSetControlNumberPrefix value
+ */
+ public String transactionSetControlNumberPrefix() {
+ return this.transactionSetControlNumberPrefix;
+ }
+
+ /**
+ * Set the transaction set control number prefix.
+ *
+ * @param transactionSetControlNumberPrefix the transactionSetControlNumberPrefix value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withTransactionSetControlNumberPrefix(String transactionSetControlNumberPrefix) {
+ this.transactionSetControlNumberPrefix = transactionSetControlNumberPrefix;
+ return this;
+ }
+
+ /**
+ * Get the transaction set control number suffix.
+ *
+ * @return the transactionSetControlNumberSuffix value
+ */
+ public String transactionSetControlNumberSuffix() {
+ return this.transactionSetControlNumberSuffix;
+ }
+
+ /**
+ * Set the transaction set control number suffix.
+ *
+ * @param transactionSetControlNumberSuffix the transactionSetControlNumberSuffix value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withTransactionSetControlNumberSuffix(String transactionSetControlNumberSuffix) {
+ this.transactionSetControlNumberSuffix = transactionSetControlNumberSuffix;
+ return this;
+ }
+
+ /**
+ * Get the transaction set control number lower bound.
+ *
+ * @return the transactionSetControlNumberLowerBound value
+ */
+ public long transactionSetControlNumberLowerBound() {
+ return this.transactionSetControlNumberLowerBound;
+ }
+
+ /**
+ * Set the transaction set control number lower bound.
+ *
+ * @param transactionSetControlNumberLowerBound the transactionSetControlNumberLowerBound value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withTransactionSetControlNumberLowerBound(long transactionSetControlNumberLowerBound) {
+ this.transactionSetControlNumberLowerBound = transactionSetControlNumberLowerBound;
+ return this;
+ }
+
+ /**
+ * Get the transaction set control number upper bound.
+ *
+ * @return the transactionSetControlNumberUpperBound value
+ */
+ public long transactionSetControlNumberUpperBound() {
+ return this.transactionSetControlNumberUpperBound;
+ }
+
+ /**
+ * Set the transaction set control number upper bound.
+ *
+ * @param transactionSetControlNumberUpperBound the transactionSetControlNumberUpperBound value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withTransactionSetControlNumberUpperBound(long transactionSetControlNumberUpperBound) {
+ this.transactionSetControlNumberUpperBound = transactionSetControlNumberUpperBound;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to rollover transaction set control number.
+ *
+ * @return the rolloverTransactionSetControlNumber value
+ */
+ public boolean rolloverTransactionSetControlNumber() {
+ return this.rolloverTransactionSetControlNumber;
+ }
+
+ /**
+ * Set the value indicating whether to rollover transaction set control number.
+ *
+ * @param rolloverTransactionSetControlNumber the rolloverTransactionSetControlNumber value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withRolloverTransactionSetControlNumber(boolean rolloverTransactionSetControlNumber) {
+ this.rolloverTransactionSetControlNumber = rolloverTransactionSetControlNumber;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether the message is a test interchange.
+ *
+ * @return the isTestInterchange value
+ */
+ public boolean isTestInterchange() {
+ return this.isTestInterchange;
+ }
+
+ /**
+ * Set the value indicating whether the message is a test interchange.
+ *
+ * @param isTestInterchange the isTestInterchange value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withIsTestInterchange(boolean isTestInterchange) {
+ this.isTestInterchange = isTestInterchange;
+ return this;
+ }
+
+ /**
+ * Get the sender internal identification.
+ *
+ * @return the senderInternalIdentification value
+ */
+ public String senderInternalIdentification() {
+ return this.senderInternalIdentification;
+ }
+
+ /**
+ * Set the sender internal identification.
+ *
+ * @param senderInternalIdentification the senderInternalIdentification value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withSenderInternalIdentification(String senderInternalIdentification) {
+ this.senderInternalIdentification = senderInternalIdentification;
+ return this;
+ }
+
+ /**
+ * Get the sender internal sub identification.
+ *
+ * @return the senderInternalSubIdentification value
+ */
+ public String senderInternalSubIdentification() {
+ return this.senderInternalSubIdentification;
+ }
+
+ /**
+ * Set the sender internal sub identification.
+ *
+ * @param senderInternalSubIdentification the senderInternalSubIdentification value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withSenderInternalSubIdentification(String senderInternalSubIdentification) {
+ this.senderInternalSubIdentification = senderInternalSubIdentification;
+ return this;
+ }
+
+ /**
+ * Get the receiver internal identification.
+ *
+ * @return the receiverInternalIdentification value
+ */
+ public String receiverInternalIdentification() {
+ return this.receiverInternalIdentification;
+ }
+
+ /**
+ * Set the receiver internal identification.
+ *
+ * @param receiverInternalIdentification the receiverInternalIdentification value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withReceiverInternalIdentification(String receiverInternalIdentification) {
+ this.receiverInternalIdentification = receiverInternalIdentification;
+ return this;
+ }
+
+ /**
+ * Get the receiver internal sub identification.
+ *
+ * @return the receiverInternalSubIdentification value
+ */
+ public String receiverInternalSubIdentification() {
+ return this.receiverInternalSubIdentification;
+ }
+
+ /**
+ * Set the receiver internal sub identification.
+ *
+ * @param receiverInternalSubIdentification the receiverInternalSubIdentification value to set
+ * @return the EdifactEnvelopeSettings object itself.
+ */
+ public EdifactEnvelopeSettings withReceiverInternalSubIdentification(String receiverInternalSubIdentification) {
+ this.receiverInternalSubIdentification = receiverInternalSubIdentification;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactFramingSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactFramingSettings.java
new file mode 100644
index 000000000000..3fcbd0d58ee2
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactFramingSettings.java
@@ -0,0 +1,307 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact agreement framing settings.
+ */
+public class EdifactFramingSettings {
+ /**
+ * The service code list directory version.
+ */
+ @JsonProperty(value = "serviceCodeListDirectoryVersion")
+ private String serviceCodeListDirectoryVersion;
+
+ /**
+ * The character encoding.
+ */
+ @JsonProperty(value = "characterEncoding")
+ private String characterEncoding;
+
+ /**
+ * The protocol version.
+ */
+ @JsonProperty(value = "protocolVersion", required = true)
+ private int protocolVersion;
+
+ /**
+ * The data element separator.
+ */
+ @JsonProperty(value = "dataElementSeparator", required = true)
+ private int dataElementSeparator;
+
+ /**
+ * The component separator.
+ */
+ @JsonProperty(value = "componentSeparator", required = true)
+ private int componentSeparator;
+
+ /**
+ * The segment terminator.
+ */
+ @JsonProperty(value = "segmentTerminator", required = true)
+ private int segmentTerminator;
+
+ /**
+ * The release indicator.
+ */
+ @JsonProperty(value = "releaseIndicator", required = true)
+ private int releaseIndicator;
+
+ /**
+ * The repetition separator.
+ */
+ @JsonProperty(value = "repetitionSeparator", required = true)
+ private int repetitionSeparator;
+
+ /**
+ * The EDIFACT frame setting characterSet. Possible values include:
+ * 'NotSpecified', 'UNOB', 'UNOA', 'UNOC', 'UNOD', 'UNOE', 'UNOF', 'UNOG',
+ * 'UNOH', 'UNOI', 'UNOJ', 'UNOK', 'UNOX', 'UNOY', 'KECA'.
+ */
+ @JsonProperty(value = "characterSet", required = true)
+ private EdifactCharacterSet characterSet;
+
+ /**
+ * The EDIFACT frame setting decimal indicator. Possible values include:
+ * 'NotSpecified', 'Comma', 'Decimal'.
+ */
+ @JsonProperty(value = "decimalPointIndicator", required = true)
+ private EdifactDecimalIndicator decimalPointIndicator;
+
+ /**
+ * The EDIFACT frame setting segment terminator suffix. Possible values
+ * include: 'NotSpecified', 'None', 'CR', 'LF', 'CRLF'.
+ */
+ @JsonProperty(value = "segmentTerminatorSuffix", required = true)
+ private SegmentTerminatorSuffix segmentTerminatorSuffix;
+
+ /**
+ * Get the service code list directory version.
+ *
+ * @return the serviceCodeListDirectoryVersion value
+ */
+ public String serviceCodeListDirectoryVersion() {
+ return this.serviceCodeListDirectoryVersion;
+ }
+
+ /**
+ * Set the service code list directory version.
+ *
+ * @param serviceCodeListDirectoryVersion the serviceCodeListDirectoryVersion value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withServiceCodeListDirectoryVersion(String serviceCodeListDirectoryVersion) {
+ this.serviceCodeListDirectoryVersion = serviceCodeListDirectoryVersion;
+ return this;
+ }
+
+ /**
+ * Get the character encoding.
+ *
+ * @return the characterEncoding value
+ */
+ public String characterEncoding() {
+ return this.characterEncoding;
+ }
+
+ /**
+ * Set the character encoding.
+ *
+ * @param characterEncoding the characterEncoding value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withCharacterEncoding(String characterEncoding) {
+ this.characterEncoding = characterEncoding;
+ return this;
+ }
+
+ /**
+ * Get the protocol version.
+ *
+ * @return the protocolVersion value
+ */
+ public int protocolVersion() {
+ return this.protocolVersion;
+ }
+
+ /**
+ * Set the protocol version.
+ *
+ * @param protocolVersion the protocolVersion value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withProtocolVersion(int protocolVersion) {
+ this.protocolVersion = protocolVersion;
+ return this;
+ }
+
+ /**
+ * Get the data element separator.
+ *
+ * @return the dataElementSeparator value
+ */
+ public int dataElementSeparator() {
+ return this.dataElementSeparator;
+ }
+
+ /**
+ * Set the data element separator.
+ *
+ * @param dataElementSeparator the dataElementSeparator value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withDataElementSeparator(int dataElementSeparator) {
+ this.dataElementSeparator = dataElementSeparator;
+ return this;
+ }
+
+ /**
+ * Get the component separator.
+ *
+ * @return the componentSeparator value
+ */
+ public int componentSeparator() {
+ return this.componentSeparator;
+ }
+
+ /**
+ * Set the component separator.
+ *
+ * @param componentSeparator the componentSeparator value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withComponentSeparator(int componentSeparator) {
+ this.componentSeparator = componentSeparator;
+ return this;
+ }
+
+ /**
+ * Get the segment terminator.
+ *
+ * @return the segmentTerminator value
+ */
+ public int segmentTerminator() {
+ return this.segmentTerminator;
+ }
+
+ /**
+ * Set the segment terminator.
+ *
+ * @param segmentTerminator the segmentTerminator value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withSegmentTerminator(int segmentTerminator) {
+ this.segmentTerminator = segmentTerminator;
+ return this;
+ }
+
+ /**
+ * Get the release indicator.
+ *
+ * @return the releaseIndicator value
+ */
+ public int releaseIndicator() {
+ return this.releaseIndicator;
+ }
+
+ /**
+ * Set the release indicator.
+ *
+ * @param releaseIndicator the releaseIndicator value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withReleaseIndicator(int releaseIndicator) {
+ this.releaseIndicator = releaseIndicator;
+ return this;
+ }
+
+ /**
+ * Get the repetition separator.
+ *
+ * @return the repetitionSeparator value
+ */
+ public int repetitionSeparator() {
+ return this.repetitionSeparator;
+ }
+
+ /**
+ * Set the repetition separator.
+ *
+ * @param repetitionSeparator the repetitionSeparator value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withRepetitionSeparator(int repetitionSeparator) {
+ this.repetitionSeparator = repetitionSeparator;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT frame setting characterSet. Possible values include: 'NotSpecified', 'UNOB', 'UNOA', 'UNOC', 'UNOD', 'UNOE', 'UNOF', 'UNOG', 'UNOH', 'UNOI', 'UNOJ', 'UNOK', 'UNOX', 'UNOY', 'KECA'.
+ *
+ * @return the characterSet value
+ */
+ public EdifactCharacterSet characterSet() {
+ return this.characterSet;
+ }
+
+ /**
+ * Set the EDIFACT frame setting characterSet. Possible values include: 'NotSpecified', 'UNOB', 'UNOA', 'UNOC', 'UNOD', 'UNOE', 'UNOF', 'UNOG', 'UNOH', 'UNOI', 'UNOJ', 'UNOK', 'UNOX', 'UNOY', 'KECA'.
+ *
+ * @param characterSet the characterSet value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withCharacterSet(EdifactCharacterSet characterSet) {
+ this.characterSet = characterSet;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT frame setting decimal indicator. Possible values include: 'NotSpecified', 'Comma', 'Decimal'.
+ *
+ * @return the decimalPointIndicator value
+ */
+ public EdifactDecimalIndicator decimalPointIndicator() {
+ return this.decimalPointIndicator;
+ }
+
+ /**
+ * Set the EDIFACT frame setting decimal indicator. Possible values include: 'NotSpecified', 'Comma', 'Decimal'.
+ *
+ * @param decimalPointIndicator the decimalPointIndicator value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withDecimalPointIndicator(EdifactDecimalIndicator decimalPointIndicator) {
+ this.decimalPointIndicator = decimalPointIndicator;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT frame setting segment terminator suffix. Possible values include: 'NotSpecified', 'None', 'CR', 'LF', 'CRLF'.
+ *
+ * @return the segmentTerminatorSuffix value
+ */
+ public SegmentTerminatorSuffix segmentTerminatorSuffix() {
+ return this.segmentTerminatorSuffix;
+ }
+
+ /**
+ * Set the EDIFACT frame setting segment terminator suffix. Possible values include: 'NotSpecified', 'None', 'CR', 'LF', 'CRLF'.
+ *
+ * @param segmentTerminatorSuffix the segmentTerminatorSuffix value to set
+ * @return the EdifactFramingSettings object itself.
+ */
+ public EdifactFramingSettings withSegmentTerminatorSuffix(SegmentTerminatorSuffix segmentTerminatorSuffix) {
+ this.segmentTerminatorSuffix = segmentTerminatorSuffix;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactMessageFilter.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactMessageFilter.java
new file mode 100644
index 000000000000..4fd72ffa219a
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactMessageFilter.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact message filter for odata query.
+ */
+public class EdifactMessageFilter {
+ /**
+ * The message filter type. Possible values include: 'NotSpecified',
+ * 'Include', 'Exclude'.
+ */
+ @JsonProperty(value = "messageFilterType", required = true)
+ private MessageFilterType messageFilterType;
+
+ /**
+ * Get the message filter type. Possible values include: 'NotSpecified', 'Include', 'Exclude'.
+ *
+ * @return the messageFilterType value
+ */
+ public MessageFilterType messageFilterType() {
+ return this.messageFilterType;
+ }
+
+ /**
+ * Set the message filter type. Possible values include: 'NotSpecified', 'Include', 'Exclude'.
+ *
+ * @param messageFilterType the messageFilterType value to set
+ * @return the EdifactMessageFilter object itself.
+ */
+ public EdifactMessageFilter withMessageFilterType(MessageFilterType messageFilterType) {
+ this.messageFilterType = messageFilterType;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactMessageIdentifier.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactMessageIdentifier.java
new file mode 100644
index 000000000000..3a026e99f684
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactMessageIdentifier.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact message identifier.
+ */
+public class EdifactMessageIdentifier {
+ /**
+ * The message id on which this envelope settings has to be applied.
+ */
+ @JsonProperty(value = "messageId", required = true)
+ private String messageId;
+
+ /**
+ * Get the message id on which this envelope settings has to be applied.
+ *
+ * @return the messageId value
+ */
+ public String messageId() {
+ return this.messageId;
+ }
+
+ /**
+ * Set the message id on which this envelope settings has to be applied.
+ *
+ * @param messageId the messageId value to set
+ * @return the EdifactMessageIdentifier object itself.
+ */
+ public EdifactMessageIdentifier withMessageId(String messageId) {
+ this.messageId = messageId;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactOneWayAgreement.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactOneWayAgreement.java
new file mode 100644
index 000000000000..1e18153ded74
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactOneWayAgreement.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact one way agreement.
+ */
+public class EdifactOneWayAgreement {
+ /**
+ * The sender business identity.
+ */
+ @JsonProperty(value = "senderBusinessIdentity", required = true)
+ private BusinessIdentity senderBusinessIdentity;
+
+ /**
+ * The receiver business identity.
+ */
+ @JsonProperty(value = "receiverBusinessIdentity", required = true)
+ private BusinessIdentity receiverBusinessIdentity;
+
+ /**
+ * The EDIFACT protocol settings.
+ */
+ @JsonProperty(value = "protocolSettings", required = true)
+ private EdifactProtocolSettings protocolSettings;
+
+ /**
+ * Get the sender business identity.
+ *
+ * @return the senderBusinessIdentity value
+ */
+ public BusinessIdentity senderBusinessIdentity() {
+ return this.senderBusinessIdentity;
+ }
+
+ /**
+ * Set the sender business identity.
+ *
+ * @param senderBusinessIdentity the senderBusinessIdentity value to set
+ * @return the EdifactOneWayAgreement object itself.
+ */
+ public EdifactOneWayAgreement withSenderBusinessIdentity(BusinessIdentity senderBusinessIdentity) {
+ this.senderBusinessIdentity = senderBusinessIdentity;
+ return this;
+ }
+
+ /**
+ * Get the receiver business identity.
+ *
+ * @return the receiverBusinessIdentity value
+ */
+ public BusinessIdentity receiverBusinessIdentity() {
+ return this.receiverBusinessIdentity;
+ }
+
+ /**
+ * Set the receiver business identity.
+ *
+ * @param receiverBusinessIdentity the receiverBusinessIdentity value to set
+ * @return the EdifactOneWayAgreement object itself.
+ */
+ public EdifactOneWayAgreement withReceiverBusinessIdentity(BusinessIdentity receiverBusinessIdentity) {
+ this.receiverBusinessIdentity = receiverBusinessIdentity;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT protocol settings.
+ *
+ * @return the protocolSettings value
+ */
+ public EdifactProtocolSettings protocolSettings() {
+ return this.protocolSettings;
+ }
+
+ /**
+ * Set the EDIFACT protocol settings.
+ *
+ * @param protocolSettings the protocolSettings value to set
+ * @return the EdifactOneWayAgreement object itself.
+ */
+ public EdifactOneWayAgreement withProtocolSettings(EdifactProtocolSettings protocolSettings) {
+ this.protocolSettings = protocolSettings;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactProcessingSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactProcessingSettings.java
new file mode 100644
index 000000000000..699b95d2da63
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactProcessingSettings.java
@@ -0,0 +1,148 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact agreement protocol settings.
+ */
+public class EdifactProcessingSettings {
+ /**
+ * The value indicating whether to mask security information.
+ */
+ @JsonProperty(value = "maskSecurityInfo", required = true)
+ private boolean maskSecurityInfo;
+
+ /**
+ * The value indicating whether to preserve interchange.
+ */
+ @JsonProperty(value = "preserveInterchange", required = true)
+ private boolean preserveInterchange;
+
+ /**
+ * The value indicating whether to suspend interchange on error.
+ */
+ @JsonProperty(value = "suspendInterchangeOnError", required = true)
+ private boolean suspendInterchangeOnError;
+
+ /**
+ * The value indicating whether to create empty xml tags for trailing
+ * separators.
+ */
+ @JsonProperty(value = "createEmptyXmlTagsForTrailingSeparators", required = true)
+ private boolean createEmptyXmlTagsForTrailingSeparators;
+
+ /**
+ * The value indicating whether to use dot as decimal separator.
+ */
+ @JsonProperty(value = "useDotAsDecimalSeparator", required = true)
+ private boolean useDotAsDecimalSeparator;
+
+ /**
+ * Get the value indicating whether to mask security information.
+ *
+ * @return the maskSecurityInfo value
+ */
+ public boolean maskSecurityInfo() {
+ return this.maskSecurityInfo;
+ }
+
+ /**
+ * Set the value indicating whether to mask security information.
+ *
+ * @param maskSecurityInfo the maskSecurityInfo value to set
+ * @return the EdifactProcessingSettings object itself.
+ */
+ public EdifactProcessingSettings withMaskSecurityInfo(boolean maskSecurityInfo) {
+ this.maskSecurityInfo = maskSecurityInfo;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to preserve interchange.
+ *
+ * @return the preserveInterchange value
+ */
+ public boolean preserveInterchange() {
+ return this.preserveInterchange;
+ }
+
+ /**
+ * Set the value indicating whether to preserve interchange.
+ *
+ * @param preserveInterchange the preserveInterchange value to set
+ * @return the EdifactProcessingSettings object itself.
+ */
+ public EdifactProcessingSettings withPreserveInterchange(boolean preserveInterchange) {
+ this.preserveInterchange = preserveInterchange;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to suspend interchange on error.
+ *
+ * @return the suspendInterchangeOnError value
+ */
+ public boolean suspendInterchangeOnError() {
+ return this.suspendInterchangeOnError;
+ }
+
+ /**
+ * Set the value indicating whether to suspend interchange on error.
+ *
+ * @param suspendInterchangeOnError the suspendInterchangeOnError value to set
+ * @return the EdifactProcessingSettings object itself.
+ */
+ public EdifactProcessingSettings withSuspendInterchangeOnError(boolean suspendInterchangeOnError) {
+ this.suspendInterchangeOnError = suspendInterchangeOnError;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to create empty xml tags for trailing separators.
+ *
+ * @return the createEmptyXmlTagsForTrailingSeparators value
+ */
+ public boolean createEmptyXmlTagsForTrailingSeparators() {
+ return this.createEmptyXmlTagsForTrailingSeparators;
+ }
+
+ /**
+ * Set the value indicating whether to create empty xml tags for trailing separators.
+ *
+ * @param createEmptyXmlTagsForTrailingSeparators the createEmptyXmlTagsForTrailingSeparators value to set
+ * @return the EdifactProcessingSettings object itself.
+ */
+ public EdifactProcessingSettings withCreateEmptyXmlTagsForTrailingSeparators(boolean createEmptyXmlTagsForTrailingSeparators) {
+ this.createEmptyXmlTagsForTrailingSeparators = createEmptyXmlTagsForTrailingSeparators;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to use dot as decimal separator.
+ *
+ * @return the useDotAsDecimalSeparator value
+ */
+ public boolean useDotAsDecimalSeparator() {
+ return this.useDotAsDecimalSeparator;
+ }
+
+ /**
+ * Set the value indicating whether to use dot as decimal separator.
+ *
+ * @param useDotAsDecimalSeparator the useDotAsDecimalSeparator value to set
+ * @return the EdifactProcessingSettings object itself.
+ */
+ public EdifactProcessingSettings withUseDotAsDecimalSeparator(boolean useDotAsDecimalSeparator) {
+ this.useDotAsDecimalSeparator = useDotAsDecimalSeparator;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactProtocolSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactProtocolSettings.java
new file mode 100644
index 000000000000..c223df6be685
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactProtocolSettings.java
@@ -0,0 +1,304 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact agreement protocol settings.
+ */
+public class EdifactProtocolSettings {
+ /**
+ * The EDIFACT validation settings.
+ */
+ @JsonProperty(value = "validationSettings", required = true)
+ private EdifactValidationSettings validationSettings;
+
+ /**
+ * The EDIFACT framing settings.
+ */
+ @JsonProperty(value = "framingSettings", required = true)
+ private EdifactFramingSettings framingSettings;
+
+ /**
+ * The EDIFACT envelope settings.
+ */
+ @JsonProperty(value = "envelopeSettings", required = true)
+ private EdifactEnvelopeSettings envelopeSettings;
+
+ /**
+ * The EDIFACT acknowledgement settings.
+ */
+ @JsonProperty(value = "acknowledgementSettings", required = true)
+ private EdifactAcknowledgementSettings acknowledgementSettings;
+
+ /**
+ * The EDIFACT message filter.
+ */
+ @JsonProperty(value = "messageFilter", required = true)
+ private EdifactMessageFilter messageFilter;
+
+ /**
+ * The EDIFACT processing Settings.
+ */
+ @JsonProperty(value = "processingSettings", required = true)
+ private EdifactProcessingSettings processingSettings;
+
+ /**
+ * The EDIFACT envelope override settings.
+ */
+ @JsonProperty(value = "envelopeOverrides")
+ private List envelopeOverrides;
+
+ /**
+ * The EDIFACT message filter list.
+ */
+ @JsonProperty(value = "messageFilterList")
+ private List messageFilterList;
+
+ /**
+ * The EDIFACT schema references.
+ */
+ @JsonProperty(value = "schemaReferences", required = true)
+ private List schemaReferences;
+
+ /**
+ * The EDIFACT validation override settings.
+ */
+ @JsonProperty(value = "validationOverrides")
+ private List validationOverrides;
+
+ /**
+ * The EDIFACT delimiter override settings.
+ */
+ @JsonProperty(value = "edifactDelimiterOverrides")
+ private List edifactDelimiterOverrides;
+
+ /**
+ * Get the EDIFACT validation settings.
+ *
+ * @return the validationSettings value
+ */
+ public EdifactValidationSettings validationSettings() {
+ return this.validationSettings;
+ }
+
+ /**
+ * Set the EDIFACT validation settings.
+ *
+ * @param validationSettings the validationSettings value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withValidationSettings(EdifactValidationSettings validationSettings) {
+ this.validationSettings = validationSettings;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT framing settings.
+ *
+ * @return the framingSettings value
+ */
+ public EdifactFramingSettings framingSettings() {
+ return this.framingSettings;
+ }
+
+ /**
+ * Set the EDIFACT framing settings.
+ *
+ * @param framingSettings the framingSettings value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withFramingSettings(EdifactFramingSettings framingSettings) {
+ this.framingSettings = framingSettings;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT envelope settings.
+ *
+ * @return the envelopeSettings value
+ */
+ public EdifactEnvelopeSettings envelopeSettings() {
+ return this.envelopeSettings;
+ }
+
+ /**
+ * Set the EDIFACT envelope settings.
+ *
+ * @param envelopeSettings the envelopeSettings value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withEnvelopeSettings(EdifactEnvelopeSettings envelopeSettings) {
+ this.envelopeSettings = envelopeSettings;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT acknowledgement settings.
+ *
+ * @return the acknowledgementSettings value
+ */
+ public EdifactAcknowledgementSettings acknowledgementSettings() {
+ return this.acknowledgementSettings;
+ }
+
+ /**
+ * Set the EDIFACT acknowledgement settings.
+ *
+ * @param acknowledgementSettings the acknowledgementSettings value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withAcknowledgementSettings(EdifactAcknowledgementSettings acknowledgementSettings) {
+ this.acknowledgementSettings = acknowledgementSettings;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT message filter.
+ *
+ * @return the messageFilter value
+ */
+ public EdifactMessageFilter messageFilter() {
+ return this.messageFilter;
+ }
+
+ /**
+ * Set the EDIFACT message filter.
+ *
+ * @param messageFilter the messageFilter value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withMessageFilter(EdifactMessageFilter messageFilter) {
+ this.messageFilter = messageFilter;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT processing Settings.
+ *
+ * @return the processingSettings value
+ */
+ public EdifactProcessingSettings processingSettings() {
+ return this.processingSettings;
+ }
+
+ /**
+ * Set the EDIFACT processing Settings.
+ *
+ * @param processingSettings the processingSettings value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withProcessingSettings(EdifactProcessingSettings processingSettings) {
+ this.processingSettings = processingSettings;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT envelope override settings.
+ *
+ * @return the envelopeOverrides value
+ */
+ public List envelopeOverrides() {
+ return this.envelopeOverrides;
+ }
+
+ /**
+ * Set the EDIFACT envelope override settings.
+ *
+ * @param envelopeOverrides the envelopeOverrides value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withEnvelopeOverrides(List envelopeOverrides) {
+ this.envelopeOverrides = envelopeOverrides;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT message filter list.
+ *
+ * @return the messageFilterList value
+ */
+ public List messageFilterList() {
+ return this.messageFilterList;
+ }
+
+ /**
+ * Set the EDIFACT message filter list.
+ *
+ * @param messageFilterList the messageFilterList value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withMessageFilterList(List messageFilterList) {
+ this.messageFilterList = messageFilterList;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT schema references.
+ *
+ * @return the schemaReferences value
+ */
+ public List schemaReferences() {
+ return this.schemaReferences;
+ }
+
+ /**
+ * Set the EDIFACT schema references.
+ *
+ * @param schemaReferences the schemaReferences value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withSchemaReferences(List schemaReferences) {
+ this.schemaReferences = schemaReferences;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT validation override settings.
+ *
+ * @return the validationOverrides value
+ */
+ public List validationOverrides() {
+ return this.validationOverrides;
+ }
+
+ /**
+ * Set the EDIFACT validation override settings.
+ *
+ * @param validationOverrides the validationOverrides value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withValidationOverrides(List validationOverrides) {
+ this.validationOverrides = validationOverrides;
+ return this;
+ }
+
+ /**
+ * Get the EDIFACT delimiter override settings.
+ *
+ * @return the edifactDelimiterOverrides value
+ */
+ public List edifactDelimiterOverrides() {
+ return this.edifactDelimiterOverrides;
+ }
+
+ /**
+ * Set the EDIFACT delimiter override settings.
+ *
+ * @param edifactDelimiterOverrides the edifactDelimiterOverrides value to set
+ * @return the EdifactProtocolSettings object itself.
+ */
+ public EdifactProtocolSettings withEdifactDelimiterOverrides(List edifactDelimiterOverrides) {
+ this.edifactDelimiterOverrides = edifactDelimiterOverrides;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactSchemaReference.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactSchemaReference.java
new file mode 100644
index 000000000000..ae219fd4b63f
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactSchemaReference.java
@@ -0,0 +1,199 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact schema reference.
+ */
+public class EdifactSchemaReference {
+ /**
+ * The message id.
+ */
+ @JsonProperty(value = "messageId", required = true)
+ private String messageId;
+
+ /**
+ * The message version.
+ */
+ @JsonProperty(value = "messageVersion", required = true)
+ private String messageVersion;
+
+ /**
+ * The message release version.
+ */
+ @JsonProperty(value = "messageRelease", required = true)
+ private String messageRelease;
+
+ /**
+ * The sender application id.
+ */
+ @JsonProperty(value = "senderApplicationId")
+ private String senderApplicationId;
+
+ /**
+ * The sender application qualifier.
+ */
+ @JsonProperty(value = "senderApplicationQualifier")
+ private String senderApplicationQualifier;
+
+ /**
+ * The association assigned code.
+ */
+ @JsonProperty(value = "associationAssignedCode")
+ private String associationAssignedCode;
+
+ /**
+ * The schema name.
+ */
+ @JsonProperty(value = "schemaName", required = true)
+ private String schemaName;
+
+ /**
+ * Get the message id.
+ *
+ * @return the messageId value
+ */
+ public String messageId() {
+ return this.messageId;
+ }
+
+ /**
+ * Set the message id.
+ *
+ * @param messageId the messageId value to set
+ * @return the EdifactSchemaReference object itself.
+ */
+ public EdifactSchemaReference withMessageId(String messageId) {
+ this.messageId = messageId;
+ return this;
+ }
+
+ /**
+ * Get the message version.
+ *
+ * @return the messageVersion value
+ */
+ public String messageVersion() {
+ return this.messageVersion;
+ }
+
+ /**
+ * Set the message version.
+ *
+ * @param messageVersion the messageVersion value to set
+ * @return the EdifactSchemaReference object itself.
+ */
+ public EdifactSchemaReference withMessageVersion(String messageVersion) {
+ this.messageVersion = messageVersion;
+ return this;
+ }
+
+ /**
+ * Get the message release version.
+ *
+ * @return the messageRelease value
+ */
+ public String messageRelease() {
+ return this.messageRelease;
+ }
+
+ /**
+ * Set the message release version.
+ *
+ * @param messageRelease the messageRelease value to set
+ * @return the EdifactSchemaReference object itself.
+ */
+ public EdifactSchemaReference withMessageRelease(String messageRelease) {
+ this.messageRelease = messageRelease;
+ return this;
+ }
+
+ /**
+ * Get the sender application id.
+ *
+ * @return the senderApplicationId value
+ */
+ public String senderApplicationId() {
+ return this.senderApplicationId;
+ }
+
+ /**
+ * Set the sender application id.
+ *
+ * @param senderApplicationId the senderApplicationId value to set
+ * @return the EdifactSchemaReference object itself.
+ */
+ public EdifactSchemaReference withSenderApplicationId(String senderApplicationId) {
+ this.senderApplicationId = senderApplicationId;
+ return this;
+ }
+
+ /**
+ * Get the sender application qualifier.
+ *
+ * @return the senderApplicationQualifier value
+ */
+ public String senderApplicationQualifier() {
+ return this.senderApplicationQualifier;
+ }
+
+ /**
+ * Set the sender application qualifier.
+ *
+ * @param senderApplicationQualifier the senderApplicationQualifier value to set
+ * @return the EdifactSchemaReference object itself.
+ */
+ public EdifactSchemaReference withSenderApplicationQualifier(String senderApplicationQualifier) {
+ this.senderApplicationQualifier = senderApplicationQualifier;
+ return this;
+ }
+
+ /**
+ * Get the association assigned code.
+ *
+ * @return the associationAssignedCode value
+ */
+ public String associationAssignedCode() {
+ return this.associationAssignedCode;
+ }
+
+ /**
+ * Set the association assigned code.
+ *
+ * @param associationAssignedCode the associationAssignedCode value to set
+ * @return the EdifactSchemaReference object itself.
+ */
+ public EdifactSchemaReference withAssociationAssignedCode(String associationAssignedCode) {
+ this.associationAssignedCode = associationAssignedCode;
+ return this;
+ }
+
+ /**
+ * Get the schema name.
+ *
+ * @return the schemaName value
+ */
+ public String schemaName() {
+ return this.schemaName;
+ }
+
+ /**
+ * Set the schema name.
+ *
+ * @param schemaName the schemaName value to set
+ * @return the EdifactSchemaReference object itself.
+ */
+ public EdifactSchemaReference withSchemaName(String schemaName) {
+ this.schemaName = schemaName;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactValidationOverride.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactValidationOverride.java
new file mode 100644
index 000000000000..00591cc89912
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactValidationOverride.java
@@ -0,0 +1,202 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact validation override settings.
+ */
+public class EdifactValidationOverride {
+ /**
+ * The message id on which the validation settings has to be applied.
+ */
+ @JsonProperty(value = "messageId", required = true)
+ private String messageId;
+
+ /**
+ * The value indicating whether to validate character Set.
+ */
+ @JsonProperty(value = "enforceCharacterSet", required = true)
+ private boolean enforceCharacterSet;
+
+ /**
+ * The value indicating whether to validate EDI types.
+ */
+ @JsonProperty(value = "validateEDITypes", required = true)
+ private boolean validateEDITypes;
+
+ /**
+ * The value indicating whether to validate XSD types.
+ */
+ @JsonProperty(value = "validateXSDTypes", required = true)
+ private boolean validateXSDTypes;
+
+ /**
+ * The value indicating whether to allow leading and trailing spaces and
+ * zeroes.
+ */
+ @JsonProperty(value = "allowLeadingAndTrailingSpacesAndZeroes", required = true)
+ private boolean allowLeadingAndTrailingSpacesAndZeroes;
+
+ /**
+ * The trailing separator policy. Possible values include: 'NotSpecified',
+ * 'NotAllowed', 'Optional', 'Mandatory'.
+ */
+ @JsonProperty(value = "trailingSeparatorPolicy", required = true)
+ private TrailingSeparatorPolicy trailingSeparatorPolicy;
+
+ /**
+ * The value indicating whether to trim leading and trailing spaces and
+ * zeroes.
+ */
+ @JsonProperty(value = "trimLeadingAndTrailingSpacesAndZeroes", required = true)
+ private boolean trimLeadingAndTrailingSpacesAndZeroes;
+
+ /**
+ * Get the message id on which the validation settings has to be applied.
+ *
+ * @return the messageId value
+ */
+ public String messageId() {
+ return this.messageId;
+ }
+
+ /**
+ * Set the message id on which the validation settings has to be applied.
+ *
+ * @param messageId the messageId value to set
+ * @return the EdifactValidationOverride object itself.
+ */
+ public EdifactValidationOverride withMessageId(String messageId) {
+ this.messageId = messageId;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to validate character Set.
+ *
+ * @return the enforceCharacterSet value
+ */
+ public boolean enforceCharacterSet() {
+ return this.enforceCharacterSet;
+ }
+
+ /**
+ * Set the value indicating whether to validate character Set.
+ *
+ * @param enforceCharacterSet the enforceCharacterSet value to set
+ * @return the EdifactValidationOverride object itself.
+ */
+ public EdifactValidationOverride withEnforceCharacterSet(boolean enforceCharacterSet) {
+ this.enforceCharacterSet = enforceCharacterSet;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to validate EDI types.
+ *
+ * @return the validateEDITypes value
+ */
+ public boolean validateEDITypes() {
+ return this.validateEDITypes;
+ }
+
+ /**
+ * Set the value indicating whether to validate EDI types.
+ *
+ * @param validateEDITypes the validateEDITypes value to set
+ * @return the EdifactValidationOverride object itself.
+ */
+ public EdifactValidationOverride withValidateEDITypes(boolean validateEDITypes) {
+ this.validateEDITypes = validateEDITypes;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to validate XSD types.
+ *
+ * @return the validateXSDTypes value
+ */
+ public boolean validateXSDTypes() {
+ return this.validateXSDTypes;
+ }
+
+ /**
+ * Set the value indicating whether to validate XSD types.
+ *
+ * @param validateXSDTypes the validateXSDTypes value to set
+ * @return the EdifactValidationOverride object itself.
+ */
+ public EdifactValidationOverride withValidateXSDTypes(boolean validateXSDTypes) {
+ this.validateXSDTypes = validateXSDTypes;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to allow leading and trailing spaces and zeroes.
+ *
+ * @return the allowLeadingAndTrailingSpacesAndZeroes value
+ */
+ public boolean allowLeadingAndTrailingSpacesAndZeroes() {
+ return this.allowLeadingAndTrailingSpacesAndZeroes;
+ }
+
+ /**
+ * Set the value indicating whether to allow leading and trailing spaces and zeroes.
+ *
+ * @param allowLeadingAndTrailingSpacesAndZeroes the allowLeadingAndTrailingSpacesAndZeroes value to set
+ * @return the EdifactValidationOverride object itself.
+ */
+ public EdifactValidationOverride withAllowLeadingAndTrailingSpacesAndZeroes(boolean allowLeadingAndTrailingSpacesAndZeroes) {
+ this.allowLeadingAndTrailingSpacesAndZeroes = allowLeadingAndTrailingSpacesAndZeroes;
+ return this;
+ }
+
+ /**
+ * Get the trailing separator policy. Possible values include: 'NotSpecified', 'NotAllowed', 'Optional', 'Mandatory'.
+ *
+ * @return the trailingSeparatorPolicy value
+ */
+ public TrailingSeparatorPolicy trailingSeparatorPolicy() {
+ return this.trailingSeparatorPolicy;
+ }
+
+ /**
+ * Set the trailing separator policy. Possible values include: 'NotSpecified', 'NotAllowed', 'Optional', 'Mandatory'.
+ *
+ * @param trailingSeparatorPolicy the trailingSeparatorPolicy value to set
+ * @return the EdifactValidationOverride object itself.
+ */
+ public EdifactValidationOverride withTrailingSeparatorPolicy(TrailingSeparatorPolicy trailingSeparatorPolicy) {
+ this.trailingSeparatorPolicy = trailingSeparatorPolicy;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to trim leading and trailing spaces and zeroes.
+ *
+ * @return the trimLeadingAndTrailingSpacesAndZeroes value
+ */
+ public boolean trimLeadingAndTrailingSpacesAndZeroes() {
+ return this.trimLeadingAndTrailingSpacesAndZeroes;
+ }
+
+ /**
+ * Set the value indicating whether to trim leading and trailing spaces and zeroes.
+ *
+ * @param trimLeadingAndTrailingSpacesAndZeroes the trimLeadingAndTrailingSpacesAndZeroes value to set
+ * @return the EdifactValidationOverride object itself.
+ */
+ public EdifactValidationOverride withTrimLeadingAndTrailingSpacesAndZeroes(boolean trimLeadingAndTrailingSpacesAndZeroes) {
+ this.trimLeadingAndTrailingSpacesAndZeroes = trimLeadingAndTrailingSpacesAndZeroes;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactValidationSettings.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactValidationSettings.java
new file mode 100644
index 000000000000..046b80472b5b
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EdifactValidationSettings.java
@@ -0,0 +1,283 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Edifact agreement validation settings.
+ */
+public class EdifactValidationSettings {
+ /**
+ * The value indicating whether to validate character set in the message.
+ */
+ @JsonProperty(value = "validateCharacterSet", required = true)
+ private boolean validateCharacterSet;
+
+ /**
+ * The value indicating whether to check for duplicate interchange control
+ * number.
+ */
+ @JsonProperty(value = "checkDuplicateInterchangeControlNumber", required = true)
+ private boolean checkDuplicateInterchangeControlNumber;
+
+ /**
+ * The validity period of interchange control number.
+ */
+ @JsonProperty(value = "interchangeControlNumberValidityDays", required = true)
+ private int interchangeControlNumberValidityDays;
+
+ /**
+ * The value indicating whether to check for duplicate group control
+ * number.
+ */
+ @JsonProperty(value = "checkDuplicateGroupControlNumber", required = true)
+ private boolean checkDuplicateGroupControlNumber;
+
+ /**
+ * The value indicating whether to check for duplicate transaction set
+ * control number.
+ */
+ @JsonProperty(value = "checkDuplicateTransactionSetControlNumber", required = true)
+ private boolean checkDuplicateTransactionSetControlNumber;
+
+ /**
+ * The value indicating whether to Whether to validate EDI types.
+ */
+ @JsonProperty(value = "validateEDITypes", required = true)
+ private boolean validateEDITypes;
+
+ /**
+ * The value indicating whether to Whether to validate XSD types.
+ */
+ @JsonProperty(value = "validateXSDTypes", required = true)
+ private boolean validateXSDTypes;
+
+ /**
+ * The value indicating whether to allow leading and trailing spaces and
+ * zeroes.
+ */
+ @JsonProperty(value = "allowLeadingAndTrailingSpacesAndZeroes", required = true)
+ private boolean allowLeadingAndTrailingSpacesAndZeroes;
+
+ /**
+ * The value indicating whether to trim leading and trailing spaces and
+ * zeroes.
+ */
+ @JsonProperty(value = "trimLeadingAndTrailingSpacesAndZeroes", required = true)
+ private boolean trimLeadingAndTrailingSpacesAndZeroes;
+
+ /**
+ * The trailing separator policy. Possible values include: 'NotSpecified',
+ * 'NotAllowed', 'Optional', 'Mandatory'.
+ */
+ @JsonProperty(value = "trailingSeparatorPolicy", required = true)
+ private TrailingSeparatorPolicy trailingSeparatorPolicy;
+
+ /**
+ * Get the value indicating whether to validate character set in the message.
+ *
+ * @return the validateCharacterSet value
+ */
+ public boolean validateCharacterSet() {
+ return this.validateCharacterSet;
+ }
+
+ /**
+ * Set the value indicating whether to validate character set in the message.
+ *
+ * @param validateCharacterSet the validateCharacterSet value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withValidateCharacterSet(boolean validateCharacterSet) {
+ this.validateCharacterSet = validateCharacterSet;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to check for duplicate interchange control number.
+ *
+ * @return the checkDuplicateInterchangeControlNumber value
+ */
+ public boolean checkDuplicateInterchangeControlNumber() {
+ return this.checkDuplicateInterchangeControlNumber;
+ }
+
+ /**
+ * Set the value indicating whether to check for duplicate interchange control number.
+ *
+ * @param checkDuplicateInterchangeControlNumber the checkDuplicateInterchangeControlNumber value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withCheckDuplicateInterchangeControlNumber(boolean checkDuplicateInterchangeControlNumber) {
+ this.checkDuplicateInterchangeControlNumber = checkDuplicateInterchangeControlNumber;
+ return this;
+ }
+
+ /**
+ * Get the validity period of interchange control number.
+ *
+ * @return the interchangeControlNumberValidityDays value
+ */
+ public int interchangeControlNumberValidityDays() {
+ return this.interchangeControlNumberValidityDays;
+ }
+
+ /**
+ * Set the validity period of interchange control number.
+ *
+ * @param interchangeControlNumberValidityDays the interchangeControlNumberValidityDays value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withInterchangeControlNumberValidityDays(int interchangeControlNumberValidityDays) {
+ this.interchangeControlNumberValidityDays = interchangeControlNumberValidityDays;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to check for duplicate group control number.
+ *
+ * @return the checkDuplicateGroupControlNumber value
+ */
+ public boolean checkDuplicateGroupControlNumber() {
+ return this.checkDuplicateGroupControlNumber;
+ }
+
+ /**
+ * Set the value indicating whether to check for duplicate group control number.
+ *
+ * @param checkDuplicateGroupControlNumber the checkDuplicateGroupControlNumber value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withCheckDuplicateGroupControlNumber(boolean checkDuplicateGroupControlNumber) {
+ this.checkDuplicateGroupControlNumber = checkDuplicateGroupControlNumber;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to check for duplicate transaction set control number.
+ *
+ * @return the checkDuplicateTransactionSetControlNumber value
+ */
+ public boolean checkDuplicateTransactionSetControlNumber() {
+ return this.checkDuplicateTransactionSetControlNumber;
+ }
+
+ /**
+ * Set the value indicating whether to check for duplicate transaction set control number.
+ *
+ * @param checkDuplicateTransactionSetControlNumber the checkDuplicateTransactionSetControlNumber value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withCheckDuplicateTransactionSetControlNumber(boolean checkDuplicateTransactionSetControlNumber) {
+ this.checkDuplicateTransactionSetControlNumber = checkDuplicateTransactionSetControlNumber;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to Whether to validate EDI types.
+ *
+ * @return the validateEDITypes value
+ */
+ public boolean validateEDITypes() {
+ return this.validateEDITypes;
+ }
+
+ /**
+ * Set the value indicating whether to Whether to validate EDI types.
+ *
+ * @param validateEDITypes the validateEDITypes value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withValidateEDITypes(boolean validateEDITypes) {
+ this.validateEDITypes = validateEDITypes;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to Whether to validate XSD types.
+ *
+ * @return the validateXSDTypes value
+ */
+ public boolean validateXSDTypes() {
+ return this.validateXSDTypes;
+ }
+
+ /**
+ * Set the value indicating whether to Whether to validate XSD types.
+ *
+ * @param validateXSDTypes the validateXSDTypes value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withValidateXSDTypes(boolean validateXSDTypes) {
+ this.validateXSDTypes = validateXSDTypes;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to allow leading and trailing spaces and zeroes.
+ *
+ * @return the allowLeadingAndTrailingSpacesAndZeroes value
+ */
+ public boolean allowLeadingAndTrailingSpacesAndZeroes() {
+ return this.allowLeadingAndTrailingSpacesAndZeroes;
+ }
+
+ /**
+ * Set the value indicating whether to allow leading and trailing spaces and zeroes.
+ *
+ * @param allowLeadingAndTrailingSpacesAndZeroes the allowLeadingAndTrailingSpacesAndZeroes value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withAllowLeadingAndTrailingSpacesAndZeroes(boolean allowLeadingAndTrailingSpacesAndZeroes) {
+ this.allowLeadingAndTrailingSpacesAndZeroes = allowLeadingAndTrailingSpacesAndZeroes;
+ return this;
+ }
+
+ /**
+ * Get the value indicating whether to trim leading and trailing spaces and zeroes.
+ *
+ * @return the trimLeadingAndTrailingSpacesAndZeroes value
+ */
+ public boolean trimLeadingAndTrailingSpacesAndZeroes() {
+ return this.trimLeadingAndTrailingSpacesAndZeroes;
+ }
+
+ /**
+ * Set the value indicating whether to trim leading and trailing spaces and zeroes.
+ *
+ * @param trimLeadingAndTrailingSpacesAndZeroes the trimLeadingAndTrailingSpacesAndZeroes value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withTrimLeadingAndTrailingSpacesAndZeroes(boolean trimLeadingAndTrailingSpacesAndZeroes) {
+ this.trimLeadingAndTrailingSpacesAndZeroes = trimLeadingAndTrailingSpacesAndZeroes;
+ return this;
+ }
+
+ /**
+ * Get the trailing separator policy. Possible values include: 'NotSpecified', 'NotAllowed', 'Optional', 'Mandatory'.
+ *
+ * @return the trailingSeparatorPolicy value
+ */
+ public TrailingSeparatorPolicy trailingSeparatorPolicy() {
+ return this.trailingSeparatorPolicy;
+ }
+
+ /**
+ * Set the trailing separator policy. Possible values include: 'NotSpecified', 'NotAllowed', 'Optional', 'Mandatory'.
+ *
+ * @param trailingSeparatorPolicy the trailingSeparatorPolicy value to set
+ * @return the EdifactValidationSettings object itself.
+ */
+ public EdifactValidationSettings withTrailingSeparatorPolicy(TrailingSeparatorPolicy trailingSeparatorPolicy) {
+ this.trailingSeparatorPolicy = trailingSeparatorPolicy;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EncryptionAlgorithm.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EncryptionAlgorithm.java
new file mode 100644
index 000000000000..e1e5470c3ef5
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EncryptionAlgorithm.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for EncryptionAlgorithm.
+ */
+public final class EncryptionAlgorithm extends ExpandableStringEnum {
+ /** Static value NotSpecified for EncryptionAlgorithm. */
+ public static final EncryptionAlgorithm NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value None for EncryptionAlgorithm. */
+ public static final EncryptionAlgorithm NONE = fromString("None");
+
+ /** Static value DES3 for EncryptionAlgorithm. */
+ public static final EncryptionAlgorithm DES3 = fromString("DES3");
+
+ /** Static value RC2 for EncryptionAlgorithm. */
+ public static final EncryptionAlgorithm RC2 = fromString("RC2");
+
+ /** Static value AES128 for EncryptionAlgorithm. */
+ public static final EncryptionAlgorithm AES128 = fromString("AES128");
+
+ /** Static value AES192 for EncryptionAlgorithm. */
+ public static final EncryptionAlgorithm AES192 = fromString("AES192");
+
+ /** Static value AES256 for EncryptionAlgorithm. */
+ public static final EncryptionAlgorithm AES256 = fromString("AES256");
+
+ /**
+ * Creates or finds a EncryptionAlgorithm from its string representation.
+ * @param name a name to look for
+ * @return the corresponding EncryptionAlgorithm
+ */
+ @JsonCreator
+ public static EncryptionAlgorithm fromString(String name) {
+ return fromString(name, EncryptionAlgorithm.class);
+ }
+
+ /**
+ * @return known EncryptionAlgorithm values
+ */
+ public static Collection values() {
+ return values(EncryptionAlgorithm.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorInfo.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorInfo.java
new file mode 100644
index 000000000000..cf23be6b1d16
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorInfo.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The error info.
+ */
+public class ErrorInfo {
+ /**
+ * The error code.
+ */
+ @JsonProperty(value = "code", required = true)
+ private String code;
+
+ /**
+ * Get the error code.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set the error code.
+ *
+ * @param code the code value to set
+ * @return the ErrorInfo object itself.
+ */
+ public ErrorInfo withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorProperties.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorProperties.java
new file mode 100644
index 000000000000..c36e6ec3de7f
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorProperties.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error properties indicate why the Logic service was not able to process the
+ * incoming request. The reason is provided in the error message.
+ */
+public class ErrorProperties {
+ /**
+ * Error code.
+ */
+ @JsonProperty(value = "code")
+ private String code;
+
+ /**
+ * Error message indicating why the operation failed.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * Get error code.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set error code.
+ *
+ * @param code the code value to set
+ * @return the ErrorProperties object itself.
+ */
+ public ErrorProperties withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get error message indicating why the operation failed.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set error message indicating why the operation failed.
+ *
+ * @param message the message value to set
+ * @return the ErrorProperties object itself.
+ */
+ public ErrorProperties withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponse.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponse.java
new file mode 100644
index 000000000000..3f840f536f05
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponse.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error response indicates Logic service is not able to process the incoming
+ * request. The error property contains the error details.
+ */
+public class ErrorResponse {
+ /**
+ * The error properties.
+ */
+ @JsonProperty(value = "error")
+ private ErrorProperties error;
+
+ /**
+ * Get the error properties.
+ *
+ * @return the error value
+ */
+ public ErrorProperties error() {
+ return this.error;
+ }
+
+ /**
+ * Set the error properties.
+ *
+ * @param error the error value to set
+ * @return the ErrorResponse object itself.
+ */
+ public ErrorResponse withError(ErrorProperties error) {
+ this.error = error;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponseCode.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponseCode.java
new file mode 100644
index 000000000000..21dcde2c27fa
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponseCode.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ErrorResponseCode.
+ */
+public final class ErrorResponseCode extends ExpandableStringEnum {
+ /** Static value NotSpecified for ErrorResponseCode. */
+ public static final ErrorResponseCode NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value IntegrationServiceEnvironmentNotFound for ErrorResponseCode. */
+ public static final ErrorResponseCode INTEGRATION_SERVICE_ENVIRONMENT_NOT_FOUND = fromString("IntegrationServiceEnvironmentNotFound");
+
+ /** Static value InternalServerError for ErrorResponseCode. */
+ public static final ErrorResponseCode INTERNAL_SERVER_ERROR = fromString("InternalServerError");
+
+ /** Static value InvalidOperationId for ErrorResponseCode. */
+ public static final ErrorResponseCode INVALID_OPERATION_ID = fromString("InvalidOperationId");
+
+ /**
+ * Creates or finds a ErrorResponseCode from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ErrorResponseCode
+ */
+ @JsonCreator
+ public static ErrorResponseCode fromString(String name) {
+ return fromString(name, ErrorResponseCode.class);
+ }
+
+ /**
+ * @return known ErrorResponseCode values
+ */
+ public static Collection values() {
+ return values(ErrorResponseCode.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponseException.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponseException.java
new file mode 100644
index 000000000000..5cbcac2afb64
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ErrorResponseException.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.logic.v2019_05_01;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with ErrorResponse information.
+ */
+public class ErrorResponseException extends RestException {
+ /**
+ * Initializes a new instance of the ErrorResponseException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public ErrorResponseException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the ErrorResponseException 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 ErrorResponseException(final String message, final Response response, final ErrorResponse body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public ErrorResponse body() {
+ return (ErrorResponse) super.body();
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EventLevel.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EventLevel.java
new file mode 100644
index 000000000000..554669875810
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/EventLevel.java
@@ -0,0 +1,65 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for EventLevel.
+ */
+public enum EventLevel {
+ /** Enum value LogAlways. */
+ LOG_ALWAYS("LogAlways"),
+
+ /** Enum value Critical. */
+ CRITICAL("Critical"),
+
+ /** Enum value Error. */
+ ERROR("Error"),
+
+ /** Enum value Warning. */
+ WARNING("Warning"),
+
+ /** Enum value Informational. */
+ INFORMATIONAL("Informational"),
+
+ /** Enum value Verbose. */
+ VERBOSE("Verbose");
+
+ /** The actual serialized value for a EventLevel instance. */
+ private String value;
+
+ EventLevel(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a EventLevel instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed EventLevel object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static EventLevel fromString(String value) {
+ EventLevel[] items = EventLevel.values();
+ for (EventLevel item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/Expression.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/Expression.java
new file mode 100644
index 000000000000..50471eec14e0
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/Expression.java
@@ -0,0 +1,122 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The expression.
+ */
+public class Expression {
+ /**
+ * The text.
+ */
+ @JsonProperty(value = "text")
+ private String text;
+
+ /**
+ * The value property.
+ */
+ @JsonProperty(value = "value")
+ private Object value;
+
+ /**
+ * The sub expressions.
+ */
+ @JsonProperty(value = "subexpressions")
+ private List subexpressions;
+
+ /**
+ * The error property.
+ */
+ @JsonProperty(value = "error")
+ private AzureResourceErrorInfo error;
+
+ /**
+ * Get the text.
+ *
+ * @return the text value
+ */
+ public String text() {
+ return this.text;
+ }
+
+ /**
+ * Set the text.
+ *
+ * @param text the text value to set
+ * @return the Expression object itself.
+ */
+ public Expression withText(String text) {
+ this.text = text;
+ return this;
+ }
+
+ /**
+ * Get the value value.
+ *
+ * @return the value value
+ */
+ public Object value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value value.
+ *
+ * @param value the value value to set
+ * @return the Expression object itself.
+ */
+ public Expression withValue(Object value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get the sub expressions.
+ *
+ * @return the subexpressions value
+ */
+ public List subexpressions() {
+ return this.subexpressions;
+ }
+
+ /**
+ * Set the sub expressions.
+ *
+ * @param subexpressions the subexpressions value to set
+ * @return the Expression object itself.
+ */
+ public Expression withSubexpressions(List subexpressions) {
+ this.subexpressions = subexpressions;
+ return this;
+ }
+
+ /**
+ * Get the error value.
+ *
+ * @return the error value
+ */
+ public AzureResourceErrorInfo error() {
+ return this.error;
+ }
+
+ /**
+ * Set the error value.
+ *
+ * @param error the error value to set
+ * @return the Expression object itself.
+ */
+ public Expression withError(AzureResourceErrorInfo error) {
+ this.error = error;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ExpressionRoot.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ExpressionRoot.java
new file mode 100644
index 000000000000..78241e190f11
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ExpressionRoot.java
@@ -0,0 +1,46 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.LogicManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.ExpressionRootInner;
+import java.util.List;
+
+/**
+ * Type representing ExpressionRoot.
+ */
+public interface ExpressionRoot extends HasInner, HasManager {
+ /**
+ * @return the error value.
+ */
+ AzureResourceErrorInfo error();
+
+ /**
+ * @return the path value.
+ */
+ String path();
+
+ /**
+ * @return the subexpressions value.
+ */
+ List subexpressions();
+
+ /**
+ * @return the text value.
+ */
+ String text();
+
+ /**
+ * @return the value value.
+ */
+ Object value();
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ExtendedErrorInfo.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ExtendedErrorInfo.java
new file mode 100644
index 000000000000..5ceb5fc0cc7b
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/ExtendedErrorInfo.java
@@ -0,0 +1,124 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The extended error info.
+ */
+public class ExtendedErrorInfo {
+ /**
+ * The error code. Possible values include: 'NotSpecified',
+ * 'IntegrationServiceEnvironmentNotFound', 'InternalServerError',
+ * 'InvalidOperationId'.
+ */
+ @JsonProperty(value = "code", required = true)
+ private ErrorResponseCode code;
+
+ /**
+ * The error message.
+ */
+ @JsonProperty(value = "message", required = true)
+ private String message;
+
+ /**
+ * The error message details.
+ */
+ @JsonProperty(value = "details")
+ private List details;
+
+ /**
+ * The inner error.
+ */
+ @JsonProperty(value = "innerError")
+ private Object innerError;
+
+ /**
+ * Get the error code. Possible values include: 'NotSpecified', 'IntegrationServiceEnvironmentNotFound', 'InternalServerError', 'InvalidOperationId'.
+ *
+ * @return the code value
+ */
+ public ErrorResponseCode code() {
+ return this.code;
+ }
+
+ /**
+ * Set the error code. Possible values include: 'NotSpecified', 'IntegrationServiceEnvironmentNotFound', 'InternalServerError', 'InvalidOperationId'.
+ *
+ * @param code the code value to set
+ * @return the ExtendedErrorInfo object itself.
+ */
+ public ExtendedErrorInfo withCode(ErrorResponseCode code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get the error message.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set the error message.
+ *
+ * @param message the message value to set
+ * @return the ExtendedErrorInfo object itself.
+ */
+ public ExtendedErrorInfo withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get the error message details.
+ *
+ * @return the details value
+ */
+ public List details() {
+ return this.details;
+ }
+
+ /**
+ * Set the error message details.
+ *
+ * @param details the details value to set
+ * @return the ExtendedErrorInfo object itself.
+ */
+ public ExtendedErrorInfo withDetails(List details) {
+ this.details = details;
+ return this;
+ }
+
+ /**
+ * Get the inner error.
+ *
+ * @return the innerError value
+ */
+ public Object innerError() {
+ return this.innerError;
+ }
+
+ /**
+ * Set the inner error.
+ *
+ * @param innerError the innerError value to set
+ * @return the ExtendedErrorInfo object itself.
+ */
+ public ExtendedErrorInfo withInnerError(Object innerError) {
+ this.innerError = innerError;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowAccessControlConfiguration.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowAccessControlConfiguration.java
new file mode 100644
index 000000000000..2bd7f20b70bb
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowAccessControlConfiguration.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The access control configuration.
+ */
+public class FlowAccessControlConfiguration {
+ /**
+ * The access control configuration for invoking workflow triggers.
+ */
+ @JsonProperty(value = "triggers")
+ private FlowAccessControlConfigurationPolicy triggers;
+
+ /**
+ * The access control configuration for accessing workflow run contents.
+ */
+ @JsonProperty(value = "contents")
+ private FlowAccessControlConfigurationPolicy contents;
+
+ /**
+ * The access control configuration for workflow actions.
+ */
+ @JsonProperty(value = "actions")
+ private FlowAccessControlConfigurationPolicy actions;
+
+ /**
+ * The access control configuration for workflow management.
+ */
+ @JsonProperty(value = "workflowManagement")
+ private FlowAccessControlConfigurationPolicy workflowManagement;
+
+ /**
+ * Get the access control configuration for invoking workflow triggers.
+ *
+ * @return the triggers value
+ */
+ public FlowAccessControlConfigurationPolicy triggers() {
+ return this.triggers;
+ }
+
+ /**
+ * Set the access control configuration for invoking workflow triggers.
+ *
+ * @param triggers the triggers value to set
+ * @return the FlowAccessControlConfiguration object itself.
+ */
+ public FlowAccessControlConfiguration withTriggers(FlowAccessControlConfigurationPolicy triggers) {
+ this.triggers = triggers;
+ return this;
+ }
+
+ /**
+ * Get the access control configuration for accessing workflow run contents.
+ *
+ * @return the contents value
+ */
+ public FlowAccessControlConfigurationPolicy contents() {
+ return this.contents;
+ }
+
+ /**
+ * Set the access control configuration for accessing workflow run contents.
+ *
+ * @param contents the contents value to set
+ * @return the FlowAccessControlConfiguration object itself.
+ */
+ public FlowAccessControlConfiguration withContents(FlowAccessControlConfigurationPolicy contents) {
+ this.contents = contents;
+ return this;
+ }
+
+ /**
+ * Get the access control configuration for workflow actions.
+ *
+ * @return the actions value
+ */
+ public FlowAccessControlConfigurationPolicy actions() {
+ return this.actions;
+ }
+
+ /**
+ * Set the access control configuration for workflow actions.
+ *
+ * @param actions the actions value to set
+ * @return the FlowAccessControlConfiguration object itself.
+ */
+ public FlowAccessControlConfiguration withActions(FlowAccessControlConfigurationPolicy actions) {
+ this.actions = actions;
+ return this;
+ }
+
+ /**
+ * Get the access control configuration for workflow management.
+ *
+ * @return the workflowManagement value
+ */
+ public FlowAccessControlConfigurationPolicy workflowManagement() {
+ return this.workflowManagement;
+ }
+
+ /**
+ * Set the access control configuration for workflow management.
+ *
+ * @param workflowManagement the workflowManagement value to set
+ * @return the FlowAccessControlConfiguration object itself.
+ */
+ public FlowAccessControlConfiguration withWorkflowManagement(FlowAccessControlConfigurationPolicy workflowManagement) {
+ this.workflowManagement = workflowManagement;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowAccessControlConfigurationPolicy.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowAccessControlConfigurationPolicy.java
new file mode 100644
index 000000000000..f9d53feb5332
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowAccessControlConfigurationPolicy.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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The access control configuration policy.
+ */
+public class FlowAccessControlConfigurationPolicy {
+ /**
+ * The allowed caller IP address ranges.
+ */
+ @JsonProperty(value = "allowedCallerIpAddresses")
+ private List allowedCallerIpAddresses;
+
+ /**
+ * The authentication policies for workflow.
+ */
+ @JsonProperty(value = "openAuthenticationPolicies")
+ private OpenAuthenticationAccessPolicies openAuthenticationPolicies;
+
+ /**
+ * Get the allowed caller IP address ranges.
+ *
+ * @return the allowedCallerIpAddresses value
+ */
+ public List allowedCallerIpAddresses() {
+ return this.allowedCallerIpAddresses;
+ }
+
+ /**
+ * Set the allowed caller IP address ranges.
+ *
+ * @param allowedCallerIpAddresses the allowedCallerIpAddresses value to set
+ * @return the FlowAccessControlConfigurationPolicy object itself.
+ */
+ public FlowAccessControlConfigurationPolicy withAllowedCallerIpAddresses(List allowedCallerIpAddresses) {
+ this.allowedCallerIpAddresses = allowedCallerIpAddresses;
+ return this;
+ }
+
+ /**
+ * Get the authentication policies for workflow.
+ *
+ * @return the openAuthenticationPolicies value
+ */
+ public OpenAuthenticationAccessPolicies openAuthenticationPolicies() {
+ return this.openAuthenticationPolicies;
+ }
+
+ /**
+ * Set the authentication policies for workflow.
+ *
+ * @param openAuthenticationPolicies the openAuthenticationPolicies value to set
+ * @return the FlowAccessControlConfigurationPolicy object itself.
+ */
+ public FlowAccessControlConfigurationPolicy withOpenAuthenticationPolicies(OpenAuthenticationAccessPolicies openAuthenticationPolicies) {
+ this.openAuthenticationPolicies = openAuthenticationPolicies;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowEndpoints.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowEndpoints.java
new file mode 100644
index 000000000000..216fefcd0dbb
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowEndpoints.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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The flow endpoints configuration.
+ */
+public class FlowEndpoints {
+ /**
+ * The outgoing ip address.
+ */
+ @JsonProperty(value = "outgoingIpAddresses")
+ private List outgoingIpAddresses;
+
+ /**
+ * The access endpoint ip address.
+ */
+ @JsonProperty(value = "accessEndpointIpAddresses")
+ private List accessEndpointIpAddresses;
+
+ /**
+ * Get the outgoing ip address.
+ *
+ * @return the outgoingIpAddresses value
+ */
+ public List outgoingIpAddresses() {
+ return this.outgoingIpAddresses;
+ }
+
+ /**
+ * Set the outgoing ip address.
+ *
+ * @param outgoingIpAddresses the outgoingIpAddresses value to set
+ * @return the FlowEndpoints object itself.
+ */
+ public FlowEndpoints withOutgoingIpAddresses(List outgoingIpAddresses) {
+ this.outgoingIpAddresses = outgoingIpAddresses;
+ return this;
+ }
+
+ /**
+ * Get the access endpoint ip address.
+ *
+ * @return the accessEndpointIpAddresses value
+ */
+ public List accessEndpointIpAddresses() {
+ return this.accessEndpointIpAddresses;
+ }
+
+ /**
+ * Set the access endpoint ip address.
+ *
+ * @param accessEndpointIpAddresses the accessEndpointIpAddresses value to set
+ * @return the FlowEndpoints object itself.
+ */
+ public FlowEndpoints withAccessEndpointIpAddresses(List accessEndpointIpAddresses) {
+ this.accessEndpointIpAddresses = accessEndpointIpAddresses;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowEndpointsConfiguration.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowEndpointsConfiguration.java
new file mode 100644
index 000000000000..013f1d3552cc
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/FlowEndpointsConfiguration.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The endpoints configuration.
+ */
+public class FlowEndpointsConfiguration {
+ /**
+ * The workflow endpoints.
+ */
+ @JsonProperty(value = "workflow")
+ private FlowEndpoints workflow;
+
+ /**
+ * The connector endpoints.
+ */
+ @JsonProperty(value = "connector")
+ private FlowEndpoints connector;
+
+ /**
+ * Get the workflow endpoints.
+ *
+ * @return the workflow value
+ */
+ public FlowEndpoints workflow() {
+ return this.workflow;
+ }
+
+ /**
+ * Set the workflow endpoints.
+ *
+ * @param workflow the workflow value to set
+ * @return the FlowEndpointsConfiguration object itself.
+ */
+ public FlowEndpointsConfiguration withWorkflow(FlowEndpoints workflow) {
+ this.workflow = workflow;
+ return this;
+ }
+
+ /**
+ * Get the connector endpoints.
+ *
+ * @return the connector value
+ */
+ public FlowEndpoints connector() {
+ return this.connector;
+ }
+
+ /**
+ * Set the connector endpoints.
+ *
+ * @param connector the connector value to set
+ * @return the FlowEndpointsConfiguration object itself.
+ */
+ public FlowEndpointsConfiguration withConnector(FlowEndpoints connector) {
+ this.connector = connector;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/GenerateUpgradedDefinitionParameters.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/GenerateUpgradedDefinitionParameters.java
new file mode 100644
index 000000000000..c1dac339f41e
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/GenerateUpgradedDefinitionParameters.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The parameters to generate upgraded definition.
+ */
+public class GenerateUpgradedDefinitionParameters {
+ /**
+ * The target schema version.
+ */
+ @JsonProperty(value = "targetSchemaVersion")
+ private String targetSchemaVersion;
+
+ /**
+ * Get the target schema version.
+ *
+ * @return the targetSchemaVersion value
+ */
+ public String targetSchemaVersion() {
+ return this.targetSchemaVersion;
+ }
+
+ /**
+ * Set the target schema version.
+ *
+ * @param targetSchemaVersion the targetSchemaVersion value to set
+ * @return the GenerateUpgradedDefinitionParameters object itself.
+ */
+ public GenerateUpgradedDefinitionParameters withTargetSchemaVersion(String targetSchemaVersion) {
+ this.targetSchemaVersion = targetSchemaVersion;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/GetCallbackUrlParameters.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/GetCallbackUrlParameters.java
new file mode 100644
index 000000000000..623e7d1103e5
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/GetCallbackUrlParameters.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.logic.v2019_05_01;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The callback url parameters.
+ */
+public class GetCallbackUrlParameters {
+ /**
+ * The expiry time.
+ */
+ @JsonProperty(value = "notAfter")
+ private DateTime notAfter;
+
+ /**
+ * The key type. Possible values include: 'NotSpecified', 'Primary',
+ * 'Secondary'.
+ */
+ @JsonProperty(value = "keyType")
+ private KeyType keyType;
+
+ /**
+ * Get the expiry time.
+ *
+ * @return the notAfter value
+ */
+ public DateTime notAfter() {
+ return this.notAfter;
+ }
+
+ /**
+ * Set the expiry time.
+ *
+ * @param notAfter the notAfter value to set
+ * @return the GetCallbackUrlParameters object itself.
+ */
+ public GetCallbackUrlParameters withNotAfter(DateTime notAfter) {
+ this.notAfter = notAfter;
+ return this;
+ }
+
+ /**
+ * Get the key type. Possible values include: 'NotSpecified', 'Primary', 'Secondary'.
+ *
+ * @return the keyType value
+ */
+ public KeyType keyType() {
+ return this.keyType;
+ }
+
+ /**
+ * Set the key type. Possible values include: 'NotSpecified', 'Primary', 'Secondary'.
+ *
+ * @param keyType the keyType value to set
+ * @return the GetCallbackUrlParameters object itself.
+ */
+ public GetCallbackUrlParameters withKeyType(KeyType keyType) {
+ this.keyType = keyType;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/HashingAlgorithm.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/HashingAlgorithm.java
new file mode 100644
index 000000000000..fadb114eaa1a
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/HashingAlgorithm.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for HashingAlgorithm.
+ */
+public final class HashingAlgorithm extends ExpandableStringEnum {
+ /** Static value NotSpecified for HashingAlgorithm. */
+ public static final HashingAlgorithm NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value None for HashingAlgorithm. */
+ public static final HashingAlgorithm NONE = fromString("None");
+
+ /** Static value MD5 for HashingAlgorithm. */
+ public static final HashingAlgorithm MD5 = fromString("MD5");
+
+ /** Static value SHA1 for HashingAlgorithm. */
+ public static final HashingAlgorithm SHA1 = fromString("SHA1");
+
+ /** Static value SHA2256 for HashingAlgorithm. */
+ public static final HashingAlgorithm SHA2256 = fromString("SHA2256");
+
+ /** Static value SHA2384 for HashingAlgorithm. */
+ public static final HashingAlgorithm SHA2384 = fromString("SHA2384");
+
+ /** Static value SHA2512 for HashingAlgorithm. */
+ public static final HashingAlgorithm SHA2512 = fromString("SHA2512");
+
+ /**
+ * Creates or finds a HashingAlgorithm from its string representation.
+ * @param name a name to look for
+ * @return the corresponding HashingAlgorithm
+ */
+ @JsonCreator
+ public static HashingAlgorithm fromString(String name) {
+ return fromString(name, HashingAlgorithm.class);
+ }
+
+ /**
+ * @return known HashingAlgorithm values
+ */
+ public static Collection values() {
+ return values(HashingAlgorithm.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccount.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccount.java
new file mode 100644
index 000000000000..ceb02e673f0c
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccount.java
@@ -0,0 +1,156 @@
+/**
+ * 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.logic.v2019_05_01;
+
+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.logic.v2019_05_01.implementation.LogicManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationServiceEnvironmentInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountInner;
+
+/**
+ * Type representing IntegrationAccount.
+ */
+public interface IntegrationAccount extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the integrationServiceEnvironment value.
+ */
+ IntegrationServiceEnvironment integrationServiceEnvironment();
+
+ /**
+ * @return the sku value.
+ */
+ IntegrationAccountSku sku();
+
+ /**
+ * @return the state value.
+ */
+ WorkflowState state();
+
+ /**
+ * The entirety of the IntegrationAccount definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of IntegrationAccount definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a IntegrationAccount definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the IntegrationAccount definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the integrationaccount definition allowing to specify IntegrationServiceEnvironment.
+ */
+ interface WithIntegrationServiceEnvironment {
+ /**
+ * Specifies integrationServiceEnvironment.
+ * @param integrationServiceEnvironment The integration service environment
+ * @return the next definition stage
+ */
+ WithCreate withIntegrationServiceEnvironment(IntegrationServiceEnvironmentInner integrationServiceEnvironment);
+ }
+
+ /**
+ * The stage of the integrationaccount definition allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The sku
+ * @return the next definition stage
+ */
+ WithCreate withSku(IntegrationAccountSku sku);
+ }
+
+ /**
+ * The stage of the integrationaccount definition allowing to specify State.
+ */
+ interface WithState {
+ /**
+ * Specifies state.
+ * @param state The workflow state. Possible values include: 'NotSpecified', 'Completed', 'Enabled', 'Disabled', 'Deleted', 'Suspended'
+ * @return the next definition stage
+ */
+ WithCreate withState(WorkflowState state);
+ }
+
+ /**
+ * 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.WithIntegrationServiceEnvironment, DefinitionStages.WithSku, DefinitionStages.WithState {
+ }
+ }
+ /**
+ * The template for a IntegrationAccount update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithIntegrationServiceEnvironment, UpdateStages.WithSku, UpdateStages.WithState {
+ }
+
+ /**
+ * Grouping of IntegrationAccount update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the integrationaccount update allowing to specify IntegrationServiceEnvironment.
+ */
+ interface WithIntegrationServiceEnvironment {
+ /**
+ * Specifies integrationServiceEnvironment.
+ * @param integrationServiceEnvironment The integration service environment
+ * @return the next update stage
+ */
+ Update withIntegrationServiceEnvironment(IntegrationServiceEnvironmentInner integrationServiceEnvironment);
+ }
+
+ /**
+ * The stage of the integrationaccount update allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The sku
+ * @return the next update stage
+ */
+ Update withSku(IntegrationAccountSku sku);
+ }
+
+ /**
+ * The stage of the integrationaccount update allowing to specify State.
+ */
+ interface WithState {
+ /**
+ * Specifies state.
+ * @param state The workflow state. Possible values include: 'NotSpecified', 'Completed', 'Enabled', 'Disabled', 'Deleted', 'Suspended'
+ * @return the next update stage
+ */
+ Update withState(WorkflowState state);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreement.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreement.java
new file mode 100644
index 000000000000..8aa2fb2256f4
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreement.java
@@ -0,0 +1,289 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountAgreementInner;
+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.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing IntegrationAccountAgreement.
+ */
+public interface IntegrationAccountAgreement extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the agreementType value.
+ */
+ AgreementType agreementType();
+
+ /**
+ * @return the changedTime value.
+ */
+ DateTime changedTime();
+
+ /**
+ * @return the content value.
+ */
+ AgreementContent content();
+
+ /**
+ * @return the createdTime value.
+ */
+ DateTime createdTime();
+
+ /**
+ * @return the guestIdentity value.
+ */
+ BusinessIdentity guestIdentity();
+
+ /**
+ * @return the guestPartner value.
+ */
+ String guestPartner();
+
+ /**
+ * @return the hostIdentity value.
+ */
+ BusinessIdentity hostIdentity();
+
+ /**
+ * @return the hostPartner value.
+ */
+ String hostPartner();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the metadata value.
+ */
+ Object metadata();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the IntegrationAccountAgreement definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithIntegrationAccount, DefinitionStages.WithAgreementType, DefinitionStages.WithContent, DefinitionStages.WithGuestIdentity, DefinitionStages.WithGuestPartner, DefinitionStages.WithHostIdentity, DefinitionStages.WithHostPartner, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of IntegrationAccountAgreement definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a IntegrationAccountAgreement definition.
+ */
+ interface Blank extends WithIntegrationAccount {
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify IntegrationAccount.
+ */
+ interface WithIntegrationAccount {
+ /**
+ * Specifies resourceGroupName, integrationAccountName.
+ * @param resourceGroupName The resource group name
+ * @param integrationAccountName The integration account name
+ * @return the next definition stage
+ */
+ WithAgreementType withExistingIntegrationAccount(String resourceGroupName, String integrationAccountName);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify AgreementType.
+ */
+ interface WithAgreementType {
+ /**
+ * Specifies agreementType.
+ * @param agreementType The agreement type. Possible values include: 'NotSpecified', 'AS2', 'X12', 'Edifact'
+ * @return the next definition stage
+ */
+ WithContent withAgreementType(AgreementType agreementType);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify Content.
+ */
+ interface WithContent {
+ /**
+ * Specifies content.
+ * @param content The agreement content
+ * @return the next definition stage
+ */
+ WithGuestIdentity withContent(AgreementContent content);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify GuestIdentity.
+ */
+ interface WithGuestIdentity {
+ /**
+ * Specifies guestIdentity.
+ * @param guestIdentity The business identity of the guest partner
+ * @return the next definition stage
+ */
+ WithGuestPartner withGuestIdentity(BusinessIdentity guestIdentity);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify GuestPartner.
+ */
+ interface WithGuestPartner {
+ /**
+ * Specifies guestPartner.
+ * @param guestPartner The integration account partner that is set as guest partner for this agreement
+ * @return the next definition stage
+ */
+ WithHostIdentity withGuestPartner(String guestPartner);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify HostIdentity.
+ */
+ interface WithHostIdentity {
+ /**
+ * Specifies hostIdentity.
+ * @param hostIdentity The business identity of the host partner
+ * @return the next definition stage
+ */
+ WithHostPartner withHostIdentity(BusinessIdentity hostIdentity);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify HostPartner.
+ */
+ interface WithHostPartner {
+ /**
+ * Specifies hostPartner.
+ * @param hostPartner The integration account partner that is set as host partner for this agreement
+ * @return the next definition stage
+ */
+ WithCreate withHostPartner(String hostPartner);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next definition stage
+ */
+ WithCreate withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * 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.WithLocation, DefinitionStages.WithMetadata, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a IntegrationAccountAgreement update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithLocation, UpdateStages.WithMetadata, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of IntegrationAccountAgreement update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the integrationaccountagreement update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement update allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next update stage
+ */
+ Update withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountagreement update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreementFilter.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreementFilter.java
new file mode 100644
index 000000000000..50392674f55e
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreementFilter.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account agreement filter for odata query.
+ */
+public class IntegrationAccountAgreementFilter {
+ /**
+ * The agreement type of integration account agreement. Possible values
+ * include: 'NotSpecified', 'AS2', 'X12', 'Edifact'.
+ */
+ @JsonProperty(value = "agreementType", required = true)
+ private AgreementType agreementType;
+
+ /**
+ * Get the agreement type of integration account agreement. Possible values include: 'NotSpecified', 'AS2', 'X12', 'Edifact'.
+ *
+ * @return the agreementType value
+ */
+ public AgreementType agreementType() {
+ return this.agreementType;
+ }
+
+ /**
+ * Set the agreement type of integration account agreement. Possible values include: 'NotSpecified', 'AS2', 'X12', 'Edifact'.
+ *
+ * @param agreementType the agreementType value to set
+ * @return the IntegrationAccountAgreementFilter object itself.
+ */
+ public IntegrationAccountAgreementFilter withAgreementType(AgreementType agreementType) {
+ this.agreementType = agreementType;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreements.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreements.java
new file mode 100644
index 000000000000..49ab22c09d52
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAgreements.java
@@ -0,0 +1,65 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountAgreementsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccountAgreements.
+ */
+public interface IntegrationAccountAgreements extends SupportsCreating, HasInner {
+ /**
+ * Get the content callback url.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param agreementName The integration account agreement name.
+ * @param listContentCallbackUrl the GetCallbackUrlParameters value
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listContentCallbackUrlAsync(String resourceGroupName, String integrationAccountName, String agreementName, GetCallbackUrlParameters listContentCallbackUrl);
+
+ /**
+ * Gets an integration account agreement.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param agreementName The integration account agreement name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String integrationAccountName, String agreementName);
+
+ /**
+ * Gets a list of integration account agreements.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String integrationAccountName);
+
+ /**
+ * Deletes an integration account agreement.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param agreementName The integration account agreement name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String integrationAccountName, String agreementName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAssemblies.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAssemblies.java
new file mode 100644
index 000000000000..6e08fe84190e
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountAssemblies.java
@@ -0,0 +1,64 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountAssembliesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccountAssemblies.
+ */
+public interface IntegrationAccountAssemblies extends SupportsCreating, HasInner {
+ /**
+ * Get the content callback url for an integration account assembly.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param assemblyArtifactName The assembly artifact name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listContentCallbackUrlAsync(String resourceGroupName, String integrationAccountName, String assemblyArtifactName);
+
+ /**
+ * Get an assembly for an integration account.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param assemblyArtifactName The assembly artifact name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String integrationAccountName, String assemblyArtifactName);
+
+ /**
+ * List the assemblies for an integration account.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String integrationAccountName);
+
+ /**
+ * Delete an assembly for an integration account.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param assemblyArtifactName The assembly artifact name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String integrationAccountName, String assemblyArtifactName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountBatchConfigurations.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountBatchConfigurations.java
new file mode 100644
index 000000000000..a2c8ce757530
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountBatchConfigurations.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountBatchConfigurationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccountBatchConfigurations.
+ */
+public interface IntegrationAccountBatchConfigurations extends SupportsCreating, HasInner {
+ /**
+ * Get a batch configuration for an integration account.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param batchConfigurationName The batch configuration name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String integrationAccountName, String batchConfigurationName);
+
+ /**
+ * List the batch configurations for an integration account.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String integrationAccountName);
+
+ /**
+ * Delete a batch configuration for an integration account.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param batchConfigurationName The batch configuration name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String integrationAccountName, String batchConfigurationName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountCertificate.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountCertificate.java
new file mode 100644
index 000000000000..cd0a1b0e288c
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountCertificate.java
@@ -0,0 +1,245 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountCertificateInner;
+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.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing IntegrationAccountCertificate.
+ */
+public interface IntegrationAccountCertificate extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the changedTime value.
+ */
+ DateTime changedTime();
+
+ /**
+ * @return the createdTime value.
+ */
+ DateTime createdTime();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the key value.
+ */
+ KeyVaultKeyReference keyVal();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the metadata value.
+ */
+ Object metadata();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the publicCertificate value.
+ */
+ String publicCertificate();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the IntegrationAccountCertificate definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithIntegrationAccount, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of IntegrationAccountCertificate definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a IntegrationAccountCertificate definition.
+ */
+ interface Blank extends WithIntegrationAccount {
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate definition allowing to specify IntegrationAccount.
+ */
+ interface WithIntegrationAccount {
+ /**
+ * Specifies resourceGroupName, integrationAccountName.
+ * @param resourceGroupName The resource group name
+ * @param integrationAccountName The integration account name
+ * @return the next definition stage
+ */
+ WithCreate withExistingIntegrationAccount(String resourceGroupName, String integrationAccountName);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate definition allowing to specify Key.
+ */
+ interface WithKey {
+ /**
+ * Specifies key.
+ * @param key The key details in the key vault
+ * @return the next definition stage
+ */
+ WithCreate withKey(KeyVaultKeyReference key);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate definition allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next definition stage
+ */
+ WithCreate withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate definition allowing to specify PublicCertificate.
+ */
+ interface WithPublicCertificate {
+ /**
+ * Specifies publicCertificate.
+ * @param publicCertificate The public certificate
+ * @return the next definition stage
+ */
+ WithCreate withPublicCertificate(String publicCertificate);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * 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.WithKey, DefinitionStages.WithLocation, DefinitionStages.WithMetadata, DefinitionStages.WithPublicCertificate, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a IntegrationAccountCertificate update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithKey, UpdateStages.WithLocation, UpdateStages.WithMetadata, UpdateStages.WithPublicCertificate, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of IntegrationAccountCertificate update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the integrationaccountcertificate update allowing to specify Key.
+ */
+ interface WithKey {
+ /**
+ * Specifies key.
+ * @param key The key details in the key vault
+ * @return the next update stage
+ */
+ Update withKey(KeyVaultKeyReference key);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate update allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next update stage
+ */
+ Update withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate update allowing to specify PublicCertificate.
+ */
+ interface WithPublicCertificate {
+ /**
+ * Specifies publicCertificate.
+ * @param publicCertificate The public certificate
+ * @return the next update stage
+ */
+ Update withPublicCertificate(String publicCertificate);
+ }
+
+ /**
+ * The stage of the integrationaccountcertificate update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountCertificates.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountCertificates.java
new file mode 100644
index 000000000000..c4378b989d5b
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountCertificates.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountCertificatesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccountCertificates.
+ */
+public interface IntegrationAccountCertificates extends SupportsCreating, HasInner {
+ /**
+ * Gets an integration account certificate.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param certificateName The integration account certificate name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String integrationAccountName, String certificateName);
+
+ /**
+ * Gets a list of integration account certificates.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String integrationAccountName);
+
+ /**
+ * Deletes an integration account certificate.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param certificateName The integration account certificate name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String integrationAccountName, String certificateName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMap.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMap.java
new file mode 100644
index 000000000000..febbbc3f9f07
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMap.java
@@ -0,0 +1,296 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountMapInner;
+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.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing IntegrationAccountMap.
+ */
+public interface IntegrationAccountMap extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the changedTime value.
+ */
+ DateTime changedTime();
+
+ /**
+ * @return the content value.
+ */
+ String content();
+
+ /**
+ * @return the contentLink value.
+ */
+ ContentLink contentLink();
+
+ /**
+ * @return the contentType value.
+ */
+ String contentType();
+
+ /**
+ * @return the createdTime value.
+ */
+ DateTime createdTime();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the mapType value.
+ */
+ MapType mapType();
+
+ /**
+ * @return the metadata value.
+ */
+ Object metadata();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the parametersSchema value.
+ */
+ IntegrationAccountMapPropertiesParametersSchema parametersSchema();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the IntegrationAccountMap definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithIntegrationAccount, DefinitionStages.WithMapType, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of IntegrationAccountMap definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a IntegrationAccountMap definition.
+ */
+ interface Blank extends WithIntegrationAccount {
+ }
+
+ /**
+ * The stage of the integrationaccountmap definition allowing to specify IntegrationAccount.
+ */
+ interface WithIntegrationAccount {
+ /**
+ * Specifies resourceGroupName, integrationAccountName.
+ * @param resourceGroupName The resource group name
+ * @param integrationAccountName The integration account name
+ * @return the next definition stage
+ */
+ WithMapType withExistingIntegrationAccount(String resourceGroupName, String integrationAccountName);
+ }
+
+ /**
+ * The stage of the integrationaccountmap definition allowing to specify MapType.
+ */
+ interface WithMapType {
+ /**
+ * Specifies mapType.
+ * @param mapType The map type. Possible values include: 'NotSpecified', 'Xslt', 'Xslt20', 'Xslt30', 'Liquid'
+ * @return the next definition stage
+ */
+ WithCreate withMapType(MapType mapType);
+ }
+
+ /**
+ * The stage of the integrationaccountmap definition allowing to specify Content.
+ */
+ interface WithContent {
+ /**
+ * Specifies content.
+ * @param content The content
+ * @return the next definition stage
+ */
+ WithCreate withContent(String content);
+ }
+
+ /**
+ * The stage of the integrationaccountmap definition allowing to specify ContentType.
+ */
+ interface WithContentType {
+ /**
+ * Specifies contentType.
+ * @param contentType The content type
+ * @return the next definition stage
+ */
+ WithCreate withContentType(String contentType);
+ }
+
+ /**
+ * The stage of the integrationaccountmap definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountmap definition allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next definition stage
+ */
+ WithCreate withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountmap definition allowing to specify ParametersSchema.
+ */
+ interface WithParametersSchema {
+ /**
+ * Specifies parametersSchema.
+ * @param parametersSchema The parameters schema of integration account map
+ * @return the next definition stage
+ */
+ WithCreate withParametersSchema(IntegrationAccountMapPropertiesParametersSchema parametersSchema);
+ }
+
+ /**
+ * The stage of the integrationaccountmap definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * 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.WithContent, DefinitionStages.WithContentType, DefinitionStages.WithLocation, DefinitionStages.WithMetadata, DefinitionStages.WithParametersSchema, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a IntegrationAccountMap update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithContent, UpdateStages.WithContentType, UpdateStages.WithLocation, UpdateStages.WithMetadata, UpdateStages.WithParametersSchema, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of IntegrationAccountMap update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the integrationaccountmap update allowing to specify Content.
+ */
+ interface WithContent {
+ /**
+ * Specifies content.
+ * @param content The content
+ * @return the next update stage
+ */
+ Update withContent(String content);
+ }
+
+ /**
+ * The stage of the integrationaccountmap update allowing to specify ContentType.
+ */
+ interface WithContentType {
+ /**
+ * Specifies contentType.
+ * @param contentType The content type
+ * @return the next update stage
+ */
+ Update withContentType(String contentType);
+ }
+
+ /**
+ * The stage of the integrationaccountmap update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountmap update allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next update stage
+ */
+ Update withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountmap update allowing to specify ParametersSchema.
+ */
+ interface WithParametersSchema {
+ /**
+ * Specifies parametersSchema.
+ * @param parametersSchema The parameters schema of integration account map
+ * @return the next update stage
+ */
+ Update withParametersSchema(IntegrationAccountMapPropertiesParametersSchema parametersSchema);
+ }
+
+ /**
+ * The stage of the integrationaccountmap update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMapFilter.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMapFilter.java
new file mode 100644
index 000000000000..001686b7e960
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMapFilter.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account map filter for odata query.
+ */
+public class IntegrationAccountMapFilter {
+ /**
+ * The map type of integration account map. Possible values include:
+ * 'NotSpecified', 'Xslt', 'Xslt20', 'Xslt30', 'Liquid'.
+ */
+ @JsonProperty(value = "mapType", required = true)
+ private MapType mapType;
+
+ /**
+ * Get the map type of integration account map. Possible values include: 'NotSpecified', 'Xslt', 'Xslt20', 'Xslt30', 'Liquid'.
+ *
+ * @return the mapType value
+ */
+ public MapType mapType() {
+ return this.mapType;
+ }
+
+ /**
+ * Set the map type of integration account map. Possible values include: 'NotSpecified', 'Xslt', 'Xslt20', 'Xslt30', 'Liquid'.
+ *
+ * @param mapType the mapType value to set
+ * @return the IntegrationAccountMapFilter object itself.
+ */
+ public IntegrationAccountMapFilter withMapType(MapType mapType) {
+ this.mapType = mapType;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMapPropertiesParametersSchema.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMapPropertiesParametersSchema.java
new file mode 100644
index 000000000000..fd81f7c0175a
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMapPropertiesParametersSchema.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The parameters schema of integration account map.
+ */
+public class IntegrationAccountMapPropertiesParametersSchema {
+ /**
+ * The reference name.
+ */
+ @JsonProperty(value = "ref")
+ private String ref;
+
+ /**
+ * Get the reference name.
+ *
+ * @return the ref value
+ */
+ public String ref() {
+ return this.ref;
+ }
+
+ /**
+ * Set the reference name.
+ *
+ * @param ref the ref value to set
+ * @return the IntegrationAccountMapPropertiesParametersSchema object itself.
+ */
+ public IntegrationAccountMapPropertiesParametersSchema withRef(String ref) {
+ this.ref = ref;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMaps.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMaps.java
new file mode 100644
index 000000000000..c7b7fd826574
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountMaps.java
@@ -0,0 +1,65 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountMapsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccountMaps.
+ */
+public interface IntegrationAccountMaps extends SupportsCreating, HasInner {
+ /**
+ * Get the content callback url.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param mapName The integration account map name.
+ * @param listContentCallbackUrl the GetCallbackUrlParameters value
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listContentCallbackUrlAsync(String resourceGroupName, String integrationAccountName, String mapName, GetCallbackUrlParameters listContentCallbackUrl);
+
+ /**
+ * Gets an integration account map.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param mapName The integration account map name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String integrationAccountName, String mapName);
+
+ /**
+ * Gets a list of integration account maps.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String integrationAccountName);
+
+ /**
+ * Deletes an integration account map.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param mapName The integration account map name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String integrationAccountName, String mapName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartner.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartner.java
new file mode 100644
index 000000000000..8f82b3ae1e92
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartner.java
@@ -0,0 +1,221 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountPartnerInner;
+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.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing IntegrationAccountPartner.
+ */
+public interface IntegrationAccountPartner extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the changedTime value.
+ */
+ DateTime changedTime();
+
+ /**
+ * @return the content value.
+ */
+ PartnerContent content();
+
+ /**
+ * @return the createdTime value.
+ */
+ DateTime createdTime();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the metadata value.
+ */
+ Object metadata();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the partnerType value.
+ */
+ PartnerType partnerType();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the IntegrationAccountPartner definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithIntegrationAccount, DefinitionStages.WithContent, DefinitionStages.WithPartnerType, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of IntegrationAccountPartner definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a IntegrationAccountPartner definition.
+ */
+ interface Blank extends WithIntegrationAccount {
+ }
+
+ /**
+ * The stage of the integrationaccountpartner definition allowing to specify IntegrationAccount.
+ */
+ interface WithIntegrationAccount {
+ /**
+ * Specifies resourceGroupName, integrationAccountName.
+ * @param resourceGroupName The resource group name
+ * @param integrationAccountName The integration account name
+ * @return the next definition stage
+ */
+ WithContent withExistingIntegrationAccount(String resourceGroupName, String integrationAccountName);
+ }
+
+ /**
+ * The stage of the integrationaccountpartner definition allowing to specify Content.
+ */
+ interface WithContent {
+ /**
+ * Specifies content.
+ * @param content The partner content
+ * @return the next definition stage
+ */
+ WithPartnerType withContent(PartnerContent content);
+ }
+
+ /**
+ * The stage of the integrationaccountpartner definition allowing to specify PartnerType.
+ */
+ interface WithPartnerType {
+ /**
+ * Specifies partnerType.
+ * @param partnerType The partner type. Possible values include: 'NotSpecified', 'B2B'
+ * @return the next definition stage
+ */
+ WithCreate withPartnerType(PartnerType partnerType);
+ }
+
+ /**
+ * The stage of the integrationaccountpartner definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountpartner definition allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next definition stage
+ */
+ WithCreate withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountpartner definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * 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.WithLocation, DefinitionStages.WithMetadata, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a IntegrationAccountPartner update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithLocation, UpdateStages.WithMetadata, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of IntegrationAccountPartner update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the integrationaccountpartner update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountpartner update allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next update stage
+ */
+ Update withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountpartner update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartnerFilter.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartnerFilter.java
new file mode 100644
index 000000000000..a2699b5d43bd
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartnerFilter.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account partner filter for odata query.
+ */
+public class IntegrationAccountPartnerFilter {
+ /**
+ * The partner type of integration account partner. Possible values
+ * include: 'NotSpecified', 'B2B'.
+ */
+ @JsonProperty(value = "partnerType", required = true)
+ private PartnerType partnerType;
+
+ /**
+ * Get the partner type of integration account partner. Possible values include: 'NotSpecified', 'B2B'.
+ *
+ * @return the partnerType value
+ */
+ public PartnerType partnerType() {
+ return this.partnerType;
+ }
+
+ /**
+ * Set the partner type of integration account partner. Possible values include: 'NotSpecified', 'B2B'.
+ *
+ * @param partnerType the partnerType value to set
+ * @return the IntegrationAccountPartnerFilter object itself.
+ */
+ public IntegrationAccountPartnerFilter withPartnerType(PartnerType partnerType) {
+ this.partnerType = partnerType;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartners.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartners.java
new file mode 100644
index 000000000000..5a2f000f6d25
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountPartners.java
@@ -0,0 +1,65 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountPartnersInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccountPartners.
+ */
+public interface IntegrationAccountPartners extends SupportsCreating, HasInner {
+ /**
+ * Get the content callback url.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param partnerName The integration account partner name.
+ * @param listContentCallbackUrl the GetCallbackUrlParameters value
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listContentCallbackUrlAsync(String resourceGroupName, String integrationAccountName, String partnerName, GetCallbackUrlParameters listContentCallbackUrl);
+
+ /**
+ * Gets an integration account partner.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param partnerName The integration account partner name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String integrationAccountName, String partnerName);
+
+ /**
+ * Gets a list of integration account partners.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String integrationAccountName);
+
+ /**
+ * Deletes an integration account partner.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param partnerName The integration account partner name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String integrationAccountName, String partnerName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchema.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchema.java
new file mode 100644
index 000000000000..c848f75e1dc7
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchema.java
@@ -0,0 +1,354 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountSchemaInner;
+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.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing IntegrationAccountSchema.
+ */
+public interface IntegrationAccountSchema extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the changedTime value.
+ */
+ DateTime changedTime();
+
+ /**
+ * @return the content value.
+ */
+ String content();
+
+ /**
+ * @return the contentLink value.
+ */
+ ContentLink contentLink();
+
+ /**
+ * @return the contentType value.
+ */
+ String contentType();
+
+ /**
+ * @return the createdTime value.
+ */
+ DateTime createdTime();
+
+ /**
+ * @return the documentName value.
+ */
+ String documentName();
+
+ /**
+ * @return the fileName value.
+ */
+ String fileName();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the metadata value.
+ */
+ Object metadata();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the schemaType value.
+ */
+ SchemaType schemaType();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the targetNamespace value.
+ */
+ String targetNamespace();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the IntegrationAccountSchema definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithIntegrationAccount, DefinitionStages.WithSchemaType, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of IntegrationAccountSchema definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a IntegrationAccountSchema definition.
+ */
+ interface Blank extends WithIntegrationAccount {
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify IntegrationAccount.
+ */
+ interface WithIntegrationAccount {
+ /**
+ * Specifies resourceGroupName, integrationAccountName.
+ * @param resourceGroupName The resource group name
+ * @param integrationAccountName The integration account name
+ * @return the next definition stage
+ */
+ WithSchemaType withExistingIntegrationAccount(String resourceGroupName, String integrationAccountName);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify SchemaType.
+ */
+ interface WithSchemaType {
+ /**
+ * Specifies schemaType.
+ * @param schemaType The schema type. Possible values include: 'NotSpecified', 'Xml'
+ * @return the next definition stage
+ */
+ WithCreate withSchemaType(SchemaType schemaType);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify Content.
+ */
+ interface WithContent {
+ /**
+ * Specifies content.
+ * @param content The content
+ * @return the next definition stage
+ */
+ WithCreate withContent(String content);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify ContentType.
+ */
+ interface WithContentType {
+ /**
+ * Specifies contentType.
+ * @param contentType The content type
+ * @return the next definition stage
+ */
+ WithCreate withContentType(String contentType);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify DocumentName.
+ */
+ interface WithDocumentName {
+ /**
+ * Specifies documentName.
+ * @param documentName The document name
+ * @return the next definition stage
+ */
+ WithCreate withDocumentName(String documentName);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify FileName.
+ */
+ interface WithFileName {
+ /**
+ * Specifies fileName.
+ * @param fileName The file name
+ * @return the next definition stage
+ */
+ WithCreate withFileName(String fileName);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next definition stage
+ */
+ WithCreate withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the integrationaccountschema definition allowing to specify TargetNamespace.
+ */
+ interface WithTargetNamespace {
+ /**
+ * Specifies targetNamespace.
+ * @param targetNamespace The target namespace of the schema
+ * @return the next definition stage
+ */
+ WithCreate withTargetNamespace(String targetNamespace);
+ }
+
+ /**
+ * 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.WithContent, DefinitionStages.WithContentType, DefinitionStages.WithDocumentName, DefinitionStages.WithFileName, DefinitionStages.WithLocation, DefinitionStages.WithMetadata, DefinitionStages.WithTags, DefinitionStages.WithTargetNamespace {
+ }
+ }
+ /**
+ * The template for a IntegrationAccountSchema update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithContent, UpdateStages.WithContentType, UpdateStages.WithDocumentName, UpdateStages.WithFileName, UpdateStages.WithLocation, UpdateStages.WithMetadata, UpdateStages.WithTags, UpdateStages.WithTargetNamespace {
+ }
+
+ /**
+ * Grouping of IntegrationAccountSchema update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the integrationaccountschema update allowing to specify Content.
+ */
+ interface WithContent {
+ /**
+ * Specifies content.
+ * @param content The content
+ * @return the next update stage
+ */
+ Update withContent(String content);
+ }
+
+ /**
+ * The stage of the integrationaccountschema update allowing to specify ContentType.
+ */
+ interface WithContentType {
+ /**
+ * Specifies contentType.
+ * @param contentType The content type
+ * @return the next update stage
+ */
+ Update withContentType(String contentType);
+ }
+
+ /**
+ * The stage of the integrationaccountschema update allowing to specify DocumentName.
+ */
+ interface WithDocumentName {
+ /**
+ * Specifies documentName.
+ * @param documentName The document name
+ * @return the next update stage
+ */
+ Update withDocumentName(String documentName);
+ }
+
+ /**
+ * The stage of the integrationaccountschema update allowing to specify FileName.
+ */
+ interface WithFileName {
+ /**
+ * Specifies fileName.
+ * @param fileName The file name
+ * @return the next update stage
+ */
+ Update withFileName(String fileName);
+ }
+
+ /**
+ * The stage of the integrationaccountschema update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountschema update allowing to specify Metadata.
+ */
+ interface WithMetadata {
+ /**
+ * Specifies metadata.
+ * @param metadata The metadata
+ * @return the next update stage
+ */
+ Update withMetadata(Object metadata);
+ }
+
+ /**
+ * The stage of the integrationaccountschema update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ /**
+ * The stage of the integrationaccountschema update allowing to specify TargetNamespace.
+ */
+ interface WithTargetNamespace {
+ /**
+ * Specifies targetNamespace.
+ * @param targetNamespace The target namespace of the schema
+ * @return the next update stage
+ */
+ Update withTargetNamespace(String targetNamespace);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchemaFilter.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchemaFilter.java
new file mode 100644
index 000000000000..423a6c46045c
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchemaFilter.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account schema filter for odata query.
+ */
+public class IntegrationAccountSchemaFilter {
+ /**
+ * The schema type of integration account schema. Possible values include:
+ * 'NotSpecified', 'Xml'.
+ */
+ @JsonProperty(value = "schemaType", required = true)
+ private SchemaType schemaType;
+
+ /**
+ * Get the schema type of integration account schema. Possible values include: 'NotSpecified', 'Xml'.
+ *
+ * @return the schemaType value
+ */
+ public SchemaType schemaType() {
+ return this.schemaType;
+ }
+
+ /**
+ * Set the schema type of integration account schema. Possible values include: 'NotSpecified', 'Xml'.
+ *
+ * @param schemaType the schemaType value to set
+ * @return the IntegrationAccountSchemaFilter object itself.
+ */
+ public IntegrationAccountSchemaFilter withSchemaType(SchemaType schemaType) {
+ this.schemaType = schemaType;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchemas.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchemas.java
new file mode 100644
index 000000000000..9026dcf5adcc
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSchemas.java
@@ -0,0 +1,65 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountSchemasInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccountSchemas.
+ */
+public interface IntegrationAccountSchemas extends SupportsCreating, HasInner {
+ /**
+ * Get the content callback url.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param schemaName The integration account schema name.
+ * @param listContentCallbackUrl the GetCallbackUrlParameters value
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listContentCallbackUrlAsync(String resourceGroupName, String integrationAccountName, String schemaName, GetCallbackUrlParameters listContentCallbackUrl);
+
+ /**
+ * Gets an integration account schema.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param schemaName The integration account schema name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String integrationAccountName, String schemaName);
+
+ /**
+ * Gets a list of integration account schemas.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String integrationAccountName);
+
+ /**
+ * Deletes an integration account schema.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param schemaName The integration account schema name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String integrationAccountName, String schemaName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSession.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSession.java
new file mode 100644
index 000000000000..2e60dc4e99b9
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSession.java
@@ -0,0 +1,187 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountSessionInner;
+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.logic.v2019_05_01.implementation.LogicManager;
+import java.util.Map;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing IntegrationAccountSession.
+ */
+public interface IntegrationAccountSession extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the changedTime value.
+ */
+ DateTime changedTime();
+
+ /**
+ * @return the content value.
+ */
+ Object content();
+
+ /**
+ * @return the createdTime value.
+ */
+ DateTime createdTime();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the IntegrationAccountSession definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithIntegrationAccount, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of IntegrationAccountSession definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a IntegrationAccountSession definition.
+ */
+ interface Blank extends WithIntegrationAccount {
+ }
+
+ /**
+ * The stage of the integrationaccountsession definition allowing to specify IntegrationAccount.
+ */
+ interface WithIntegrationAccount {
+ /**
+ * Specifies resourceGroupName, integrationAccountName.
+ * @param resourceGroupName The resource group name
+ * @param integrationAccountName The integration account name
+ * @return the next definition stage
+ */
+ WithCreate withExistingIntegrationAccount(String resourceGroupName, String integrationAccountName);
+ }
+
+ /**
+ * The stage of the integrationaccountsession definition allowing to specify Content.
+ */
+ interface WithContent {
+ /**
+ * Specifies content.
+ * @param content The session content
+ * @return the next definition stage
+ */
+ WithCreate withContent(Object content);
+ }
+
+ /**
+ * The stage of the integrationaccountsession definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountsession definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * 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.WithContent, DefinitionStages.WithLocation, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a IntegrationAccountSession update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithContent, UpdateStages.WithLocation, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of IntegrationAccountSession update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the integrationaccountsession update allowing to specify Content.
+ */
+ interface WithContent {
+ /**
+ * Specifies content.
+ * @param content The session content
+ * @return the next update stage
+ */
+ Update withContent(Object content);
+ }
+
+ /**
+ * The stage of the integrationaccountsession update allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The resource location
+ * @return the next update stage
+ */
+ Update withLocation(String location);
+ }
+
+ /**
+ * The stage of the integrationaccountsession update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSessionFilter.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSessionFilter.java
new file mode 100644
index 000000000000..f10ecc5b3724
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSessionFilter.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.logic.v2019_05_01;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account session filter.
+ */
+public class IntegrationAccountSessionFilter {
+ /**
+ * The changed time of integration account sessions.
+ */
+ @JsonProperty(value = "changedTime", required = true)
+ private DateTime changedTime;
+
+ /**
+ * Get the changed time of integration account sessions.
+ *
+ * @return the changedTime value
+ */
+ public DateTime changedTime() {
+ return this.changedTime;
+ }
+
+ /**
+ * Set the changed time of integration account sessions.
+ *
+ * @param changedTime the changedTime value to set
+ * @return the IntegrationAccountSessionFilter object itself.
+ */
+ public IntegrationAccountSessionFilter withChangedTime(DateTime changedTime) {
+ this.changedTime = changedTime;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSessions.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSessions.java
new file mode 100644
index 000000000000..76bbbb1adb9c
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSessions.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationAccountSessionsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccountSessions.
+ */
+public interface IntegrationAccountSessions extends SupportsCreating, HasInner {
+ /**
+ * Gets an integration account session.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param sessionName The integration account session name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String integrationAccountName, String sessionName);
+
+ /**
+ * Gets a list of integration account sessions.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String integrationAccountName);
+
+ /**
+ * Deletes an integration account session.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param sessionName The integration account session name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String integrationAccountName, String sessionName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSku.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSku.java
new file mode 100644
index 000000000000..91f4e0f4fe7a
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSku.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration account sku.
+ */
+public class IntegrationAccountSku {
+ /**
+ * The sku name. Possible values include: 'NotSpecified', 'Free', 'Basic',
+ * 'Standard'.
+ */
+ @JsonProperty(value = "name", required = true)
+ private IntegrationAccountSkuName name;
+
+ /**
+ * Get the sku name. Possible values include: 'NotSpecified', 'Free', 'Basic', 'Standard'.
+ *
+ * @return the name value
+ */
+ public IntegrationAccountSkuName name() {
+ return this.name;
+ }
+
+ /**
+ * Set the sku name. Possible values include: 'NotSpecified', 'Free', 'Basic', 'Standard'.
+ *
+ * @param name the name value to set
+ * @return the IntegrationAccountSku object itself.
+ */
+ public IntegrationAccountSku withName(IntegrationAccountSkuName name) {
+ this.name = name;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSkuName.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSkuName.java
new file mode 100644
index 000000000000..81b84b6ae61d
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccountSkuName.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for IntegrationAccountSkuName.
+ */
+public final class IntegrationAccountSkuName extends ExpandableStringEnum {
+ /** Static value NotSpecified for IntegrationAccountSkuName. */
+ public static final IntegrationAccountSkuName NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value Free for IntegrationAccountSkuName. */
+ public static final IntegrationAccountSkuName FREE = fromString("Free");
+
+ /** Static value Basic for IntegrationAccountSkuName. */
+ public static final IntegrationAccountSkuName BASIC = fromString("Basic");
+
+ /** Static value Standard for IntegrationAccountSkuName. */
+ public static final IntegrationAccountSkuName STANDARD = fromString("Standard");
+
+ /**
+ * Creates or finds a IntegrationAccountSkuName from its string representation.
+ * @param name a name to look for
+ * @return the corresponding IntegrationAccountSkuName
+ */
+ @JsonCreator
+ public static IntegrationAccountSkuName fromString(String name) {
+ return fromString(name, IntegrationAccountSkuName.class);
+ }
+
+ /**
+ * @return known IntegrationAccountSkuName values
+ */
+ public static Collection values() {
+ return values(IntegrationAccountSkuName.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccounts.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccounts.java
new file mode 100644
index 000000000000..c763b4477e30
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationAccounts.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.logic.v2019_05_01;
+
+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.logic.v2019_05_01.implementation.IntegrationAccountsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationAccounts.
+ */
+public interface IntegrationAccounts extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner {
+ /**
+ * Gets the integration account callback URL.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param parameters The callback URL parameters.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listCallbackUrlAsync(String resourceGroupName, String integrationAccountName, GetCallbackUrlParameters parameters);
+
+ /**
+ * Gets the integration account's Key Vault keys.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param listKeyVaultKeys The key vault parameters.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listKeyVaultKeysAsync(String resourceGroupName, String integrationAccountName, ListKeyVaultKeysDefinition listKeyVaultKeys);
+
+ /**
+ * Logs the integration account's tracking events.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @param logTrackingEvents The callback URL parameters.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable logTrackingEventsAsync(String resourceGroupName, String integrationAccountName, TrackingEventsDefinition logTrackingEvents);
+
+ /**
+ * Regenerates the integration account access key.
+ *
+ * @param resourceGroupName The resource group name.
+ * @param integrationAccountName The integration account name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable regenerateAccessKeyAsync(String resourceGroupName, String integrationAccountName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmenEncryptionConfiguration.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmenEncryptionConfiguration.java
new file mode 100644
index 000000000000..ee54444c18ca
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmenEncryptionConfiguration.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The encryption configuration for the integration service environment.
+ */
+public class IntegrationServiceEnvironmenEncryptionConfiguration {
+ /**
+ * The encryption key reference.
+ */
+ @JsonProperty(value = "encryptionKeyReference")
+ private IntegrationServiceEnvironmenEncryptionKeyReference encryptionKeyReference;
+
+ /**
+ * Get the encryption key reference.
+ *
+ * @return the encryptionKeyReference value
+ */
+ public IntegrationServiceEnvironmenEncryptionKeyReference encryptionKeyReference() {
+ return this.encryptionKeyReference;
+ }
+
+ /**
+ * Set the encryption key reference.
+ *
+ * @param encryptionKeyReference the encryptionKeyReference value to set
+ * @return the IntegrationServiceEnvironmenEncryptionConfiguration object itself.
+ */
+ public IntegrationServiceEnvironmenEncryptionConfiguration withEncryptionKeyReference(IntegrationServiceEnvironmenEncryptionKeyReference encryptionKeyReference) {
+ this.encryptionKeyReference = encryptionKeyReference;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmenEncryptionKeyReference.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmenEncryptionKeyReference.java
new file mode 100644
index 000000000000..ebbb8ba95db8
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmenEncryptionKeyReference.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The encryption key details for the integration service environment.
+ */
+public class IntegrationServiceEnvironmenEncryptionKeyReference {
+ /**
+ * The key vault reference.
+ */
+ @JsonProperty(value = "keyVault")
+ private ResourceReference keyVault;
+
+ /**
+ * Gets the key name in the Key Vault.
+ */
+ @JsonProperty(value = "keyName")
+ private String keyName;
+
+ /**
+ * Gets the version of the key specified in the keyName property.
+ */
+ @JsonProperty(value = "keyVersion")
+ private String keyVersion;
+
+ /**
+ * Get the key vault reference.
+ *
+ * @return the keyVault value
+ */
+ public ResourceReference keyVault() {
+ return this.keyVault;
+ }
+
+ /**
+ * Set the key vault reference.
+ *
+ * @param keyVault the keyVault value to set
+ * @return the IntegrationServiceEnvironmenEncryptionKeyReference object itself.
+ */
+ public IntegrationServiceEnvironmenEncryptionKeyReference withKeyVault(ResourceReference keyVault) {
+ this.keyVault = keyVault;
+ return this;
+ }
+
+ /**
+ * Get gets the key name in the Key Vault.
+ *
+ * @return the keyName value
+ */
+ public String keyName() {
+ return this.keyName;
+ }
+
+ /**
+ * Set gets the key name in the Key Vault.
+ *
+ * @param keyName the keyName value to set
+ * @return the IntegrationServiceEnvironmenEncryptionKeyReference object itself.
+ */
+ public IntegrationServiceEnvironmenEncryptionKeyReference withKeyName(String keyName) {
+ this.keyName = keyName;
+ return this;
+ }
+
+ /**
+ * Get gets the version of the key specified in the keyName property.
+ *
+ * @return the keyVersion value
+ */
+ public String keyVersion() {
+ return this.keyVersion;
+ }
+
+ /**
+ * Set gets the version of the key specified in the keyName property.
+ *
+ * @param keyVersion the keyVersion value to set
+ * @return the IntegrationServiceEnvironmenEncryptionKeyReference object itself.
+ */
+ public IntegrationServiceEnvironmenEncryptionKeyReference withKeyVersion(String keyVersion) {
+ this.keyVersion = keyVersion;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironment.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironment.java
new file mode 100644
index 000000000000..9f64f85a024d
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironment.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.logic.v2019_05_01;
+
+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.logic.v2019_05_01.implementation.LogicManager;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationServiceEnvironmentSkuInner;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationServiceEnvironmentInner;
+
+/**
+ * Type representing IntegrationServiceEnvironment.
+ */
+public interface IntegrationServiceEnvironment extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the properties value.
+ */
+ IntegrationServiceEnvironmentProperties properties();
+
+ /**
+ * @return the sku value.
+ */
+ IntegrationServiceEnvironmentSkuInner sku();
+
+ /**
+ * The entirety of the IntegrationServiceEnvironment definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of IntegrationServiceEnvironment definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a IntegrationServiceEnvironment definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the IntegrationServiceEnvironment definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the integrationserviceenvironment definition allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The integration service environment properties
+ * @return the next definition stage
+ */
+ WithCreate withProperties(IntegrationServiceEnvironmentProperties properties);
+ }
+
+ /**
+ * The stage of the integrationserviceenvironment definition allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The sku
+ * @return the next definition stage
+ */
+ WithCreate withSku(IntegrationServiceEnvironmentSkuInner sku);
+ }
+
+ /**
+ * 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.WithProperties, DefinitionStages.WithSku {
+ }
+ }
+ /**
+ * The template for a IntegrationServiceEnvironment update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithProperties, UpdateStages.WithSku {
+ }
+
+ /**
+ * Grouping of IntegrationServiceEnvironment update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the integrationserviceenvironment update allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The integration service environment properties
+ * @return the next update stage
+ */
+ Update withProperties(IntegrationServiceEnvironmentProperties properties);
+ }
+
+ /**
+ * The stage of the integrationserviceenvironment update allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The sku
+ * @return the next update stage
+ */
+ Update withSku(IntegrationServiceEnvironmentSkuInner sku);
+ }
+
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentAccessEndpoint.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentAccessEndpoint.java
new file mode 100644
index 000000000000..ec42cb0c0b14
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentAccessEndpoint.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration service environment access endpoint.
+ */
+public class IntegrationServiceEnvironmentAccessEndpoint {
+ /**
+ * The access endpoint type. Possible values include: 'NotSpecified',
+ * 'External', 'Internal'.
+ */
+ @JsonProperty(value = "type")
+ private IntegrationServiceEnvironmentAccessEndpointType type;
+
+ /**
+ * Get the access endpoint type. Possible values include: 'NotSpecified', 'External', 'Internal'.
+ *
+ * @return the type value
+ */
+ public IntegrationServiceEnvironmentAccessEndpointType type() {
+ return this.type;
+ }
+
+ /**
+ * Set the access endpoint type. Possible values include: 'NotSpecified', 'External', 'Internal'.
+ *
+ * @param type the type value to set
+ * @return the IntegrationServiceEnvironmentAccessEndpoint object itself.
+ */
+ public IntegrationServiceEnvironmentAccessEndpoint withType(IntegrationServiceEnvironmentAccessEndpointType type) {
+ this.type = type;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentAccessEndpointType.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentAccessEndpointType.java
new file mode 100644
index 000000000000..971ff594d2bf
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentAccessEndpointType.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for IntegrationServiceEnvironmentAccessEndpointType.
+ */
+public final class IntegrationServiceEnvironmentAccessEndpointType extends ExpandableStringEnum {
+ /** Static value NotSpecified for IntegrationServiceEnvironmentAccessEndpointType. */
+ public static final IntegrationServiceEnvironmentAccessEndpointType NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value External for IntegrationServiceEnvironmentAccessEndpointType. */
+ public static final IntegrationServiceEnvironmentAccessEndpointType EXTERNAL = fromString("External");
+
+ /** Static value Internal for IntegrationServiceEnvironmentAccessEndpointType. */
+ public static final IntegrationServiceEnvironmentAccessEndpointType INTERNAL = fromString("Internal");
+
+ /**
+ * Creates or finds a IntegrationServiceEnvironmentAccessEndpointType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding IntegrationServiceEnvironmentAccessEndpointType
+ */
+ @JsonCreator
+ public static IntegrationServiceEnvironmentAccessEndpointType fromString(String name) {
+ return fromString(name, IntegrationServiceEnvironmentAccessEndpointType.class);
+ }
+
+ /**
+ * @return known IntegrationServiceEnvironmentAccessEndpointType values
+ */
+ public static Collection values() {
+ return values(IntegrationServiceEnvironmentAccessEndpointType.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentManagedApiOperations.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentManagedApiOperations.java
new file mode 100644
index 000000000000..78158f60f0dd
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentManagedApiOperations.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.logic.v2019_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationServiceEnvironmentManagedApiOperationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationServiceEnvironmentManagedApiOperations.
+ */
+public interface IntegrationServiceEnvironmentManagedApiOperations extends HasInner {
+ /**
+ * Gets the managed Api operations.
+ *
+ * @param resourceGroup The resource group.
+ * @param integrationServiceEnvironmentName The integration service environment name.
+ * @param apiName The api name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroup, final String integrationServiceEnvironmentName, final String apiName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentManagedApis.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentManagedApis.java
new file mode 100644
index 000000000000..3aa436404142
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentManagedApis.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.logic.v2019_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationServiceEnvironmentManagedApisInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationServiceEnvironmentManagedApis.
+ */
+public interface IntegrationServiceEnvironmentManagedApis extends SupportsCreating, HasInner {
+ /**
+ * Gets the integration service environment managed Api.
+ *
+ * @param resourceGroup The resource group name.
+ * @param integrationServiceEnvironmentName The integration service environment name.
+ * @param apiName The api name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroup, String integrationServiceEnvironmentName, String apiName);
+
+ /**
+ * Gets the integration service environment managed Apis.
+ *
+ * @param resourceGroup The resource group.
+ * @param integrationServiceEnvironmentName The integration service environment name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroup, final String integrationServiceEnvironmentName);
+
+ /**
+ * Deletes the integration service environment managed Api.
+ *
+ * @param resourceGroup The resource group.
+ * @param integrationServiceEnvironmentName The integration service environment name.
+ * @param apiName The api name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroup, String integrationServiceEnvironmentName, String apiName);
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependency.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependency.java
new file mode 100644
index 000000000000..d4f3cda788c6
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependency.java
@@ -0,0 +1,101 @@
+/**
+ * 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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The azure async operation resource.
+ */
+public class IntegrationServiceEnvironmentNetworkDependency {
+ /**
+ * The network dependency category type. Possible values include:
+ * 'NotSpecified', 'AzureStorage', 'AzureManagement',
+ * 'AzureActiveDirectory', 'SSLCertificateVerification',
+ * 'DiagnosticLogsAndMetrics', 'IntegrationServiceEnvironmentConnectors',
+ * 'RedisCache', 'AccessEndpoints', 'RecoveryService', 'SQL',
+ * 'RegionalService'.
+ */
+ @JsonProperty(value = "category")
+ private IntegrationServiceEnvironmentNetworkDependencyCategoryType category;
+
+ /**
+ * The display name.
+ */
+ @JsonProperty(value = "displayName")
+ private String displayName;
+
+ /**
+ * The endpoints.
+ */
+ @JsonProperty(value = "endpoints")
+ private List endpoints;
+
+ /**
+ * Get the network dependency category type. Possible values include: 'NotSpecified', 'AzureStorage', 'AzureManagement', 'AzureActiveDirectory', 'SSLCertificateVerification', 'DiagnosticLogsAndMetrics', 'IntegrationServiceEnvironmentConnectors', 'RedisCache', 'AccessEndpoints', 'RecoveryService', 'SQL', 'RegionalService'.
+ *
+ * @return the category value
+ */
+ public IntegrationServiceEnvironmentNetworkDependencyCategoryType category() {
+ return this.category;
+ }
+
+ /**
+ * Set the network dependency category type. Possible values include: 'NotSpecified', 'AzureStorage', 'AzureManagement', 'AzureActiveDirectory', 'SSLCertificateVerification', 'DiagnosticLogsAndMetrics', 'IntegrationServiceEnvironmentConnectors', 'RedisCache', 'AccessEndpoints', 'RecoveryService', 'SQL', 'RegionalService'.
+ *
+ * @param category the category value to set
+ * @return the IntegrationServiceEnvironmentNetworkDependency object itself.
+ */
+ public IntegrationServiceEnvironmentNetworkDependency withCategory(IntegrationServiceEnvironmentNetworkDependencyCategoryType category) {
+ this.category = category;
+ return this;
+ }
+
+ /**
+ * Get the display name.
+ *
+ * @return the displayName value
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Set the display name.
+ *
+ * @param displayName the displayName value to set
+ * @return the IntegrationServiceEnvironmentNetworkDependency object itself.
+ */
+ public IntegrationServiceEnvironmentNetworkDependency withDisplayName(String displayName) {
+ this.displayName = displayName;
+ return this;
+ }
+
+ /**
+ * Get the endpoints.
+ *
+ * @return the endpoints value
+ */
+ public List endpoints() {
+ return this.endpoints;
+ }
+
+ /**
+ * Set the endpoints.
+ *
+ * @param endpoints the endpoints value to set
+ * @return the IntegrationServiceEnvironmentNetworkDependency object itself.
+ */
+ public IntegrationServiceEnvironmentNetworkDependency withEndpoints(List endpoints) {
+ this.endpoints = endpoints;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyCategoryType.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyCategoryType.java
new file mode 100644
index 000000000000..fbd8e47e0a12
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyCategoryType.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for IntegrationServiceEnvironmentNetworkDependencyCategoryType.
+ */
+public final class IntegrationServiceEnvironmentNetworkDependencyCategoryType extends ExpandableStringEnum {
+ /** Static value NotSpecified for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value AzureStorage for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType AZURE_STORAGE = fromString("AzureStorage");
+
+ /** Static value AzureManagement for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType AZURE_MANAGEMENT = fromString("AzureManagement");
+
+ /** Static value AzureActiveDirectory for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType AZURE_ACTIVE_DIRECTORY = fromString("AzureActiveDirectory");
+
+ /** Static value SSLCertificateVerification for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType SSLCERTIFICATE_VERIFICATION = fromString("SSLCertificateVerification");
+
+ /** Static value DiagnosticLogsAndMetrics for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType DIAGNOSTIC_LOGS_AND_METRICS = fromString("DiagnosticLogsAndMetrics");
+
+ /** Static value IntegrationServiceEnvironmentConnectors for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType INTEGRATION_SERVICE_ENVIRONMENT_CONNECTORS = fromString("IntegrationServiceEnvironmentConnectors");
+
+ /** Static value RedisCache for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType REDIS_CACHE = fromString("RedisCache");
+
+ /** Static value AccessEndpoints for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType ACCESS_ENDPOINTS = fromString("AccessEndpoints");
+
+ /** Static value RecoveryService for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType RECOVERY_SERVICE = fromString("RecoveryService");
+
+ /** Static value SQL for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType SQL = fromString("SQL");
+
+ /** Static value RegionalService for IntegrationServiceEnvironmentNetworkDependencyCategoryType. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyCategoryType REGIONAL_SERVICE = fromString("RegionalService");
+
+ /**
+ * Creates or finds a IntegrationServiceEnvironmentNetworkDependencyCategoryType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding IntegrationServiceEnvironmentNetworkDependencyCategoryType
+ */
+ @JsonCreator
+ public static IntegrationServiceEnvironmentNetworkDependencyCategoryType fromString(String name) {
+ return fromString(name, IntegrationServiceEnvironmentNetworkDependencyCategoryType.class);
+ }
+
+ /**
+ * @return known IntegrationServiceEnvironmentNetworkDependencyCategoryType values
+ */
+ public static Collection values() {
+ return values(IntegrationServiceEnvironmentNetworkDependencyCategoryType.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyHealth.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyHealth.java
new file mode 100644
index 000000000000..93914a2dd507
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyHealth.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.logic.v2019_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The integration service environment subnet network health.
+ */
+public class IntegrationServiceEnvironmentNetworkDependencyHealth {
+ /**
+ * The error if any occurred during the operation.
+ */
+ @JsonProperty(value = "error")
+ private ExtendedErrorInfo error;
+
+ /**
+ * The network dependency health state. Possible values include:
+ * 'NotSpecified', 'Healthy', 'Unhealthy', 'Unknown'.
+ */
+ @JsonProperty(value = "state")
+ private IntegrationServiceEnvironmentNetworkDependencyHealthState state;
+
+ /**
+ * Get the error if any occurred during the operation.
+ *
+ * @return the error value
+ */
+ public ExtendedErrorInfo error() {
+ return this.error;
+ }
+
+ /**
+ * Set the error if any occurred during the operation.
+ *
+ * @param error the error value to set
+ * @return the IntegrationServiceEnvironmentNetworkDependencyHealth object itself.
+ */
+ public IntegrationServiceEnvironmentNetworkDependencyHealth withError(ExtendedErrorInfo error) {
+ this.error = error;
+ return this;
+ }
+
+ /**
+ * Get the network dependency health state. Possible values include: 'NotSpecified', 'Healthy', 'Unhealthy', 'Unknown'.
+ *
+ * @return the state value
+ */
+ public IntegrationServiceEnvironmentNetworkDependencyHealthState state() {
+ return this.state;
+ }
+
+ /**
+ * Set the network dependency health state. Possible values include: 'NotSpecified', 'Healthy', 'Unhealthy', 'Unknown'.
+ *
+ * @param state the state value to set
+ * @return the IntegrationServiceEnvironmentNetworkDependencyHealth object itself.
+ */
+ public IntegrationServiceEnvironmentNetworkDependencyHealth withState(IntegrationServiceEnvironmentNetworkDependencyHealthState state) {
+ this.state = state;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyHealthState.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyHealthState.java
new file mode 100644
index 000000000000..6bd979d1c4cb
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkDependencyHealthState.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for IntegrationServiceEnvironmentNetworkDependencyHealthState.
+ */
+public final class IntegrationServiceEnvironmentNetworkDependencyHealthState extends ExpandableStringEnum {
+ /** Static value NotSpecified for IntegrationServiceEnvironmentNetworkDependencyHealthState. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyHealthState NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value Healthy for IntegrationServiceEnvironmentNetworkDependencyHealthState. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyHealthState HEALTHY = fromString("Healthy");
+
+ /** Static value Unhealthy for IntegrationServiceEnvironmentNetworkDependencyHealthState. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyHealthState UNHEALTHY = fromString("Unhealthy");
+
+ /** Static value Unknown for IntegrationServiceEnvironmentNetworkDependencyHealthState. */
+ public static final IntegrationServiceEnvironmentNetworkDependencyHealthState UNKNOWN = fromString("Unknown");
+
+ /**
+ * Creates or finds a IntegrationServiceEnvironmentNetworkDependencyHealthState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding IntegrationServiceEnvironmentNetworkDependencyHealthState
+ */
+ @JsonCreator
+ public static IntegrationServiceEnvironmentNetworkDependencyHealthState fromString(String name) {
+ return fromString(name, IntegrationServiceEnvironmentNetworkDependencyHealthState.class);
+ }
+
+ /**
+ * @return known IntegrationServiceEnvironmentNetworkDependencyHealthState values
+ */
+ public static Collection values() {
+ return values(IntegrationServiceEnvironmentNetworkDependencyHealthState.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkEndPointAccessibilityState.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkEndPointAccessibilityState.java
new file mode 100644
index 000000000000..bbe42dce0d26
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkEndPointAccessibilityState.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.logic.v2019_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for IntegrationServiceEnvironmentNetworkEndPointAccessibilityState.
+ */
+public final class IntegrationServiceEnvironmentNetworkEndPointAccessibilityState extends ExpandableStringEnum {
+ /** Static value NotSpecified for IntegrationServiceEnvironmentNetworkEndPointAccessibilityState. */
+ public static final IntegrationServiceEnvironmentNetworkEndPointAccessibilityState NOT_SPECIFIED = fromString("NotSpecified");
+
+ /** Static value Unknown for IntegrationServiceEnvironmentNetworkEndPointAccessibilityState. */
+ public static final IntegrationServiceEnvironmentNetworkEndPointAccessibilityState UNKNOWN = fromString("Unknown");
+
+ /** Static value Available for IntegrationServiceEnvironmentNetworkEndPointAccessibilityState. */
+ public static final IntegrationServiceEnvironmentNetworkEndPointAccessibilityState AVAILABLE = fromString("Available");
+
+ /** Static value NotAvailable for IntegrationServiceEnvironmentNetworkEndPointAccessibilityState. */
+ public static final IntegrationServiceEnvironmentNetworkEndPointAccessibilityState NOT_AVAILABLE = fromString("NotAvailable");
+
+ /**
+ * Creates or finds a IntegrationServiceEnvironmentNetworkEndPointAccessibilityState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding IntegrationServiceEnvironmentNetworkEndPointAccessibilityState
+ */
+ @JsonCreator
+ public static IntegrationServiceEnvironmentNetworkEndPointAccessibilityState fromString(String name) {
+ return fromString(name, IntegrationServiceEnvironmentNetworkEndPointAccessibilityState.class);
+ }
+
+ /**
+ * @return known IntegrationServiceEnvironmentNetworkEndPointAccessibilityState values
+ */
+ public static Collection values() {
+ return values(IntegrationServiceEnvironmentNetworkEndPointAccessibilityState.class);
+ }
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkEndpoint.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkEndpoint.java
new file mode 100644
index 000000000000..d733f1d7ceac
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkEndpoint.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.logic.v2019_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The network endpoint.
+ */
+public class IntegrationServiceEnvironmentNetworkEndpoint {
+ /**
+ * The accessibility state. Possible values include: 'NotSpecified',
+ * 'Unknown', 'Available', 'NotAvailable'.
+ */
+ @JsonProperty(value = "accessibility")
+ private IntegrationServiceEnvironmentNetworkEndPointAccessibilityState accessibility;
+
+ /**
+ * The domain name.
+ */
+ @JsonProperty(value = "domainName")
+ private String domainName;
+
+ /**
+ * The ports.
+ */
+ @JsonProperty(value = "ports")
+ private List ports;
+
+ /**
+ * Get the accessibility state. Possible values include: 'NotSpecified', 'Unknown', 'Available', 'NotAvailable'.
+ *
+ * @return the accessibility value
+ */
+ public IntegrationServiceEnvironmentNetworkEndPointAccessibilityState accessibility() {
+ return this.accessibility;
+ }
+
+ /**
+ * Set the accessibility state. Possible values include: 'NotSpecified', 'Unknown', 'Available', 'NotAvailable'.
+ *
+ * @param accessibility the accessibility value to set
+ * @return the IntegrationServiceEnvironmentNetworkEndpoint object itself.
+ */
+ public IntegrationServiceEnvironmentNetworkEndpoint withAccessibility(IntegrationServiceEnvironmentNetworkEndPointAccessibilityState accessibility) {
+ this.accessibility = accessibility;
+ return this;
+ }
+
+ /**
+ * Get the domain name.
+ *
+ * @return the domainName value
+ */
+ public String domainName() {
+ return this.domainName;
+ }
+
+ /**
+ * Set the domain name.
+ *
+ * @param domainName the domainName value to set
+ * @return the IntegrationServiceEnvironmentNetworkEndpoint object itself.
+ */
+ public IntegrationServiceEnvironmentNetworkEndpoint withDomainName(String domainName) {
+ this.domainName = domainName;
+ return this;
+ }
+
+ /**
+ * Get the ports.
+ *
+ * @return the ports value
+ */
+ public List ports() {
+ return this.ports;
+ }
+
+ /**
+ * Set the ports.
+ *
+ * @param ports the ports value to set
+ * @return the IntegrationServiceEnvironmentNetworkEndpoint object itself.
+ */
+ public IntegrationServiceEnvironmentNetworkEndpoint withPorts(List ports) {
+ this.ports = ports;
+ return this;
+ }
+
+}
diff --git a/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkHealths.java b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkHealths.java
new file mode 100644
index 000000000000..9b3b1dffd4c5
--- /dev/null
+++ b/sdk/logic/mgmt-v2019_05_01/src/main/java/com/microsoft/azure/management/logic/v2019_05_01/IntegrationServiceEnvironmentNetworkHealths.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.logic.v2019_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.logic.v2019_05_01.implementation.IntegrationServiceEnvironmentNetworkHealthsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntegrationServiceEnvironmentNetworkHealths.
+ */
+public interface IntegrationServiceEnvironmentNetworkHealths extends HasInner