// Code generated by go-swagger; DO NOT EDIT.

package models

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"context"

	"github.com/go-openapi/strfmt"
	"github.com/go-openapi/swag"
)

// HashicorpCloudConsulCloudManager20231010ConsulConfig `ConsulConfig` exposes user settable configurations for a Consul cluster.
//
// swagger:model hashicorp.cloud.consul_cloud_manager_20231010.ConsulConfig
type HashicorpCloudConsulCloudManager20231010ConsulConfig struct {

	// `acl_enabled` stores if ACLs are enabled for this cluster or not.
	ACLEnabled bool `json:"acl_enabled,omitempty"`

	// `connect_enabled` flag denotes that the service mesh is enabled on the Consul servers.
	ConnectEnabled bool `json:"connect_enabled,omitempty"`

	// `datacenter` is the name of datacenter the Consul servers run in. If
	// not set, a default value of `dc1` is used.
	//
	// https://developer.hashicorp.com/consul/docs/agent/config/config-files#datacenter
	Datacenter string `json:"datacenter,omitempty"`
}

// Validate validates this hashicorp cloud consul cloud manager 20231010 consul config
func (m *HashicorpCloudConsulCloudManager20231010ConsulConfig) Validate(formats strfmt.Registry) error {
	return nil
}

// ContextValidate validates this hashicorp cloud consul cloud manager 20231010 consul config based on context it is used
func (m *HashicorpCloudConsulCloudManager20231010ConsulConfig) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *HashicorpCloudConsulCloudManager20231010ConsulConfig) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *HashicorpCloudConsulCloudManager20231010ConsulConfig) UnmarshalBinary(b []byte) error {
	var res HashicorpCloudConsulCloudManager20231010ConsulConfig
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
