// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.resourcemanager.containerservicefleet.models;

import com.azure.core.annotation.Fluent;
import com.fasterxml.jackson.annotation.JsonProperty;

/** The FleetHubProfile configures the fleet hub. */
@Fluent
public final class FleetHubProfile {
    /*
     * DNS prefix used to create the FQDN for the Fleet hub.
     */
    @JsonProperty(value = "dnsPrefix")
    private String dnsPrefix;

    /*
     * The FQDN of the Fleet hub.
     */
    @JsonProperty(value = "fqdn", access = JsonProperty.Access.WRITE_ONLY)
    private String fqdn;

    /*
     * The Kubernetes version of the Fleet hub.
     */
    @JsonProperty(value = "kubernetesVersion", access = JsonProperty.Access.WRITE_ONLY)
    private String kubernetesVersion;

    /** Creates an instance of FleetHubProfile class. */
    public FleetHubProfile() {
    }

    /**
     * Get the dnsPrefix property: DNS prefix used to create the FQDN for the Fleet hub.
     *
     * @return the dnsPrefix value.
     */
    public String dnsPrefix() {
        return this.dnsPrefix;
    }

    /**
     * Set the dnsPrefix property: DNS prefix used to create the FQDN for the Fleet hub.
     *
     * @param dnsPrefix the dnsPrefix value to set.
     * @return the FleetHubProfile object itself.
     */
    public FleetHubProfile withDnsPrefix(String dnsPrefix) {
        this.dnsPrefix = dnsPrefix;
        return this;
    }

    /**
     * Get the fqdn property: The FQDN of the Fleet hub.
     *
     * @return the fqdn value.
     */
    public String fqdn() {
        return this.fqdn;
    }

    /**
     * Get the kubernetesVersion property: The Kubernetes version of the Fleet hub.
     *
     * @return the kubernetesVersion value.
     */
    public String kubernetesVersion() {
        return this.kubernetesVersion;
    }

    /**
     * Validates the instance.
     *
     * @throws IllegalArgumentException thrown if the instance is not valid.
     */
    public void validate() {
    }
}
