/**
 * Copyright (c) Microsoft Corporation. All rights reserved.
 * Licensed under the MIT License. See License.txt in the project root for
 * license information.
 *
 * Code generated by Microsoft (R) AutoRest Code Generator.
 */

package com.microsoft.azure.applicationinsights.query.models;

import com.fasterxml.jackson.annotation.JsonProperty;

/**
 * AI related application info for an event result.
 */
public class EventsAiInfo {
    /**
     * iKey of the app.
     */
    @JsonProperty(value = "iKey")
    private String iKey;

    /**
     * Name of the application.
     */
    @JsonProperty(value = "appName")
    private String appName;

    /**
     * ID of the application.
     */
    @JsonProperty(value = "appId")
    private String appId;

    /**
     * SDK version of the application.
     */
    @JsonProperty(value = "sdkVersion")
    private String sdkVersion;

    /**
     * Get iKey of the app.
     *
     * @return the iKey value
     */
    public String iKey() {
        return this.iKey;
    }

    /**
     * Set iKey of the app.
     *
     * @param iKey the iKey value to set
     * @return the EventsAiInfo object itself.
     */
    public EventsAiInfo withIKey(String iKey) {
        this.iKey = iKey;
        return this;
    }

    /**
     * Get name of the application.
     *
     * @return the appName value
     */
    public String appName() {
        return this.appName;
    }

    /**
     * Set name of the application.
     *
     * @param appName the appName value to set
     * @return the EventsAiInfo object itself.
     */
    public EventsAiInfo withAppName(String appName) {
        this.appName = appName;
        return this;
    }

    /**
     * Get iD of the application.
     *
     * @return the appId value
     */
    public String appId() {
        return this.appId;
    }

    /**
     * Set iD of the application.
     *
     * @param appId the appId value to set
     * @return the EventsAiInfo object itself.
     */
    public EventsAiInfo withAppId(String appId) {
        this.appId = appId;
        return this;
    }

    /**
     * Get sDK version of the application.
     *
     * @return the sdkVersion value
     */
    public String sdkVersion() {
        return this.sdkVersion;
    }

    /**
     * Set sDK version of the application.
     *
     * @param sdkVersion the sdkVersion value to set
     * @return the EventsAiInfo object itself.
     */
    public EventsAiInfo withSdkVersion(String sdkVersion) {
        this.sdkVersion = sdkVersion;
        return this;
    }

}
