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

package tsptest.methodoverride.models;

import com.azure.core.annotation.Fluent;
import com.azure.core.annotation.Generated;

/**
 * The GroupAllOptions model.
 */
@Fluent
public final class GroupAllOptions {
    /*
     * The foo property.
     */
    @Generated
    private String foo;

    /*
     * The bar property.
     */
    @Generated
    private String bar;

    /*
     * The prop1 property.
     */
    @Generated
    private final String prop1;

    /*
     * The prop2 property.
     */
    @Generated
    private String prop2;

    /**
     * Creates an instance of GroupAllOptions class.
     * 
     * @param prop1 the prop1 value to set.
     */
    @Generated
    public GroupAllOptions(String prop1) {
        this.prop1 = prop1;
    }

    /**
     * Get the foo property: The foo property.
     * 
     * @return the foo value.
     */
    @Generated
    public String getFoo() {
        return this.foo;
    }

    /**
     * Set the foo property: The foo property.
     * 
     * @param foo the foo value to set.
     * @return the GroupAllOptions object itself.
     */
    @Generated
    public GroupAllOptions setFoo(String foo) {
        this.foo = foo;
        return this;
    }

    /**
     * Get the bar property: The bar property.
     * 
     * @return the bar value.
     */
    @Generated
    public String getBar() {
        return this.bar;
    }

    /**
     * Set the bar property: The bar property.
     * 
     * @param bar the bar value to set.
     * @return the GroupAllOptions object itself.
     */
    @Generated
    public GroupAllOptions setBar(String bar) {
        this.bar = bar;
        return this;
    }

    /**
     * Get the prop1 property: The prop1 property.
     * 
     * @return the prop1 value.
     */
    @Generated
    public String getProp1() {
        return this.prop1;
    }

    /**
     * Get the prop2 property: The prop2 property.
     * 
     * @return the prop2 value.
     */
    @Generated
    public String getProp2() {
        return this.prop2;
    }

    /**
     * Set the prop2 property: The prop2 property.
     * 
     * @param prop2 the prop2 value to set.
     * @return the GroupAllOptions object itself.
     */
    @Generated
    public GroupAllOptions setProp2(String prop2) {
        this.prop2 = prop2;
        return this;
    }
}
