/// <summary>
 /// Creates or updates an integration account agreement.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='agreementName'>
 /// The integration account agreement name.
 /// </param>
 /// <param name='agreement'>
 /// The integration account agreement.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IntegrationAccountAgreement> CreateOrUpdateAsync(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, string agreementName, IntegrationAccountAgreement agreement, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.CreateOrUpdateWithHttpMessagesAsync(resourceGroupName, integrationAccountName, agreementName, agreement, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Gets a list of integration account agreements.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='odataQuery'>
 /// OData parameters to apply to the operation.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IPage <IntegrationAccountAgreement> > ListAsync(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, ODataQuery <IntegrationAccountAgreementFilter> odataQuery = default(ODataQuery <IntegrationAccountAgreementFilter>), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, integrationAccountName, odataQuery, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Gets an integration account agreement.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='agreementName'>
 /// The integration account agreement name.
 /// </param>
 public static IntegrationAccountAgreement Get(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, string agreementName)
 {
     return(Task.Factory.StartNew(s => ((IIntegrationAccountAgreementsOperations)s).GetAsync(resourceGroupName, integrationAccountName, agreementName), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult());
 }
 /// <summary>
 /// Gets a list of integration account agreements.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='odataQuery'>
 /// OData parameters to apply to the operation.
 /// </param>
 public static IPage <IntegrationAccountAgreement> List(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, ODataQuery <IntegrationAccountAgreementFilter> odataQuery = default(ODataQuery <IntegrationAccountAgreementFilter>))
 {
     return(Task.Factory.StartNew(s => ((IIntegrationAccountAgreementsOperations)s).ListAsync(resourceGroupName, integrationAccountName, odataQuery), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult());
 }
 /// <summary>
 /// Gets a list of integration account agreements.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='nextPageLink'>
 /// The NextLink from the previous successful call to List operation.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IPage <IntegrationAccountAgreement> > ListNextAsync(this IIntegrationAccountAgreementsOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Gets a list of integration account agreements.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='nextPageLink'>
 /// The NextLink from the previous successful call to List operation.
 /// </param>
 public static IPage <IntegrationAccountAgreement> ListNext(this IIntegrationAccountAgreementsOperations operations, string nextPageLink)
 {
     return(Task.Factory.StartNew(s => ((IIntegrationAccountAgreementsOperations)s).ListNextAsync(nextPageLink), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult());
 }
 /// <summary>
 /// Deletes an integration account agreement.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='agreementName'>
 /// The integration account agreement name.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task DeleteAsync(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, string agreementName, CancellationToken cancellationToken = default(CancellationToken))
 {
     await operations.DeleteWithHttpMessagesAsync(resourceGroupName, integrationAccountName, agreementName, null, cancellationToken).ConfigureAwait(false);
 }
 /// <summary>
 /// Gets a list of integration account agreements.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='odataQuery'>
 /// OData parameters to apply to the operation.
 /// </param>
 public static IPage <IntegrationAccountAgreement> List(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, ODataQuery <IntegrationAccountAgreementFilter> odataQuery = default(ODataQuery <IntegrationAccountAgreementFilter>))
 {
     return(operations.ListAsync(resourceGroupName, integrationAccountName, odataQuery).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Gets an integration account agreement.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='agreementName'>
 /// The integration account agreement name.
 /// </param>
 public static IntegrationAccountAgreement Get(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, string agreementName)
 {
     return(operations.GetAsync(resourceGroupName, integrationAccountName, agreementName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Gets a list of integration account agreements.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='nextPageLink'>
 /// The NextLink from the previous successful call to List operation.
 /// </param>
 public static IPage <IntegrationAccountAgreement> ListNext(this IIntegrationAccountAgreementsOperations operations, string nextPageLink)
 {
     return(operations.ListNextAsync(nextPageLink).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Get the content callback url.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='agreementName'>
 /// The integration account agreement name.
 /// </param>
 /// <param name='listContentCallbackUrl'>
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <WorkflowTriggerCallbackUrl> ListContentCallbackUrlAsync(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, string agreementName, GetCallbackUrlParameters listContentCallbackUrl, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListContentCallbackUrlWithHttpMessagesAsync(resourceGroupName, integrationAccountName, agreementName, listContentCallbackUrl, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Get the content callback url.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='agreementName'>
 /// The integration account agreement name.
 /// </param>
 /// <param name='listContentCallbackUrl'>
 /// </param>
 public static WorkflowTriggerCallbackUrl ListContentCallbackUrl(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, string agreementName, GetCallbackUrlParameters listContentCallbackUrl)
 {
     return(operations.ListContentCallbackUrlAsync(resourceGroupName, integrationAccountName, agreementName, listContentCallbackUrl).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Deletes an integration account agreement.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='agreementName'>
 /// The integration account agreement name.
 /// </param>
 public static void Delete(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, string agreementName)
 {
     operations.DeleteAsync(resourceGroupName, integrationAccountName, agreementName).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Creates or updates an integration account agreement.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name.
 /// </param>
 /// <param name='integrationAccountName'>
 /// The integration account name.
 /// </param>
 /// <param name='agreementName'>
 /// The integration account agreement name.
 /// </param>
 /// <param name='agreement'>
 /// The integration account agreement.
 /// </param>
 public static IntegrationAccountAgreement CreateOrUpdate(this IIntegrationAccountAgreementsOperations operations, string resourceGroupName, string integrationAccountName, string agreementName, IntegrationAccountAgreement agreement)
 {
     return(operations.CreateOrUpdateAsync(resourceGroupName, integrationAccountName, agreementName, agreement).GetAwaiter().GetResult());
 }