<filename>sdk/dotnet/Outputs/GetMachinePoliciesMachinePolicyResult.cs// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
using Pulumi;

namespace PiersKarsenbarg.Octopusdeploy.Outputs
{

    [OutputType]
    public sealed class GetMachinePoliciesMachinePolicyResult
    {
        public readonly int ConnectionConnectTimeout;
        public readonly int ConnectionRetryCountLimit;
        public readonly int ConnectionRetrySleepInterval;
        public readonly int ConnectionRetryTimeLimit;
        /// <summary>
        /// The description of this machine policy.
        /// </summary>
        public readonly string Description;
        /// <summary>
        /// The unique ID for this resource.
        /// </summary>
        public readonly string Id;
        public readonly bool IsDefault;
        public readonly ImmutableArray<Outputs.GetMachinePoliciesMachinePolicyMachineCleanupPolicyResult> MachineCleanupPolicies;
        public readonly ImmutableArray<Outputs.GetMachinePoliciesMachinePolicyMachineConnectivityPolicyResult> MachineConnectivityPolicies;
        public readonly ImmutableArray<Outputs.GetMachinePoliciesMachinePolicyMachineHealthCheckPolicyResult> MachineHealthCheckPolicies;
        public readonly ImmutableArray<Outputs.GetMachinePoliciesMachinePolicyMachineUpdatePolicyResult> MachineUpdatePolicies;
        /// <summary>
        /// The name of this resource.
        /// </summary>
        public readonly string Name;
        public readonly int PollingRequestMaximumMessageProcessingTimeout;
        public readonly int PollingRequestQueueTimeout;
        /// <summary>
        /// The space ID associated with this resource.
        /// </summary>
        public readonly string SpaceId;

        [OutputConstructor]
        private GetMachinePoliciesMachinePolicyResult(
            int connectionConnectTimeout,

            int connectionRetryCountLimit,

            int connectionRetrySleepInterval,

            int connectionRetryTimeLimit,

            string description,

            string id,

            bool isDefault,

            ImmutableArray<Outputs.GetMachinePoliciesMachinePolicyMachineCleanupPolicyResult> machineCleanupPolicies,

            ImmutableArray<Outputs.GetMachinePoliciesMachinePolicyMachineConnectivityPolicyResult> machineConnectivityPolicies,

            ImmutableArray<Outputs.GetMachinePoliciesMachinePolicyMachineHealthCheckPolicyResult> machineHealthCheckPolicies,

            ImmutableArray<Outputs.GetMachinePoliciesMachinePolicyMachineUpdatePolicyResult> machineUpdatePolicies,

            string name,

            int pollingRequestMaximumMessageProcessingTimeout,

            int pollingRequestQueueTimeout,

            string spaceId)
        {
            ConnectionConnectTimeout = connectionConnectTimeout;
            ConnectionRetryCountLimit = connectionRetryCountLimit;
            ConnectionRetrySleepInterval = connectionRetrySleepInterval;
            ConnectionRetryTimeLimit = connectionRetryTimeLimit;
            Description = description;
            Id = id;
            IsDefault = isDefault;
            MachineCleanupPolicies = machineCleanupPolicies;
            MachineConnectivityPolicies = machineConnectivityPolicies;
            MachineHealthCheckPolicies = machineHealthCheckPolicies;
            MachineUpdatePolicies = machineUpdatePolicies;
            Name = name;
            PollingRequestMaximumMessageProcessingTimeout = pollingRequestMaximumMessageProcessingTimeout;
            PollingRequestQueueTimeout = pollingRequestQueueTimeout;
            SpaceId = spaceId;
        }
    }
}
