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

package com.azure.maps.route.models;

import com.azure.core.annotation.Immutable;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;

/** The Route model. */
@Immutable
public final class MapsSearchRoute {
    /*
     * Summary object
     */
    @JsonProperty(value = "summary", access = JsonProperty.Access.WRITE_ONLY)
    private RouteSummary summary;

    /*
     * Legs array
     */
    @JsonProperty(value = "legs", access = JsonProperty.Access.WRITE_ONLY)
    private List<RouteLeg> legs;

    /*
     * Sections array
     */
    @JsonProperty(value = "sections", access = JsonProperty.Access.WRITE_ONLY)
    private List<RouteSection> sections;

    /*
     * Contains guidance related elements. This field is present only when
     * guidance was requested and is available.
     */
    @JsonProperty(value = "guidance", access = JsonProperty.Access.WRITE_ONLY)
    private RouteGuidance guidance;

    /**
     * Get the summary property: Summary object.
     *
     * @return the summary value.
     */
    public RouteSummary getSummary() {
        return this.summary;
    }

    /**
     * Get the legs property: Legs array.
     *
     * @return the legs value.
     */
    public List<RouteLeg> getLegs() {
        return this.legs;
    }

    /**
     * Get the sections property: Sections array.
     *
     * @return the sections value.
     */
    public List<RouteSection> getSections() {
        return this.sections;
    }

    /**
     * Get the guidance property: Contains guidance related elements. This field is present only when guidance was
     * requested and is available.
     *
     * @return the guidance value.
     */
    public RouteGuidance getGuidance() {
        return this.guidance;
    }
}
