All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.microsoft.graph.models.extensions.DirectoryAudit Maven / Gradle / Ivy

// ------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation.  All Rights Reserved.  Licensed under the MIT License.  See License in the project root for license information.
// ------------------------------------------------------------------------------

package com.microsoft.graph.models.extensions;
import com.microsoft.graph.concurrency.*;
import com.microsoft.graph.core.*;
import com.microsoft.graph.http.*;
import com.microsoft.graph.options.*;
import com.microsoft.graph.serializer.*;
import java.util.Arrays;
import java.util.EnumSet;
import com.microsoft.graph.models.generated.OperationResult;
import com.microsoft.graph.models.extensions.AuditActivityInitiator;
import com.microsoft.graph.models.extensions.TargetResource;
import com.microsoft.graph.models.extensions.KeyValue;
import com.microsoft.graph.models.extensions.Entity;


import com.google.gson.JsonObject;
import com.google.gson.JsonElement;
import com.google.gson.annotations.*;
import java.util.HashMap;
import java.util.Map;

// **NOTE** This file was generated by a tool and any changes will be overwritten.

/**
 * The class for the Directory Audit.
 */
public class DirectoryAudit extends Entity implements IJsonBackedObject {


    /**
     * The Category.
     * Indicates which resource category that's targeted by the activity. (For example: User Management, Group Management etc..)
     */
    @SerializedName("category")
    @Expose
    public String category;

    /**
     * The Correlation Id.
     * Indicates a unique ID that helps correlate activities that span across various services. Can be used to trace logs across services.
     */
    @SerializedName("correlationId")
    @Expose
    public String correlationId;

    /**
     * The Result.
     * Indicates the result of the activity.Possible values are: success, failure, timeout, unknownFutureValue.
     */
    @SerializedName("result")
    @Expose
    public OperationResult result;

    /**
     * The Result Reason.
     * Describes cause of 'failure' or 'timeout' results.
     */
    @SerializedName("resultReason")
    @Expose
    public String resultReason;

    /**
     * The Activity Display Name.
     * Indicates the activity name or the operation name (examples: 'Create User' and 'Add member to group'). For full list, see Azure AD activity list.
     */
    @SerializedName("activityDisplayName")
    @Expose
    public String activityDisplayName;

    /**
     * The Activity Date Time.
     * Indicates the date and time the activity was performed. The Timestamp type is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
     */
    @SerializedName("activityDateTime")
    @Expose
    public java.util.Calendar activityDateTime;

    /**
     * The Logged By Service.
     * Indicates information on which service initiated the activity (For example: Self-service Password Management, Core Directory, B2C, Invited Users, Microsoft Identity Manager, Privileged Identity Management.
     */
    @SerializedName("loggedByService")
    @Expose
    public String loggedByService;

    /**
     * The Operation Type.
     * 
     */
    @SerializedName("operationType")
    @Expose
    public String operationType;

    /**
     * The Initiated By.
     * Indicates information about the user or app initiated the activity.
     */
    @SerializedName("initiatedBy")
    @Expose
    public AuditActivityInitiator initiatedBy;

    /**
     * The Target Resources.
     * Indicates information on which resource was changed due to the activity. Target Resource Type can be User, Device, Directory, App, Role, Group, Policy or Other.
     */
    @SerializedName("targetResources")
    @Expose
    public java.util.List targetResources;

    /**
     * The Additional Details.
     * Indicates additional details on the activity.
     */
    @SerializedName("additionalDetails")
    @Expose
    public java.util.List additionalDetails;


    /**
     * The raw representation of this class
     */
    private JsonObject rawObject;

    /**
     * The serializer
     */
    private ISerializer serializer;

    /**
     * Gets the raw representation of this class
     *
     * @return the raw representation of this class
     */
    public JsonObject getRawObject() {
        return rawObject;
    }

    /**
     * Gets serializer
     *
     * @return the serializer
     */
    protected ISerializer getSerializer() {
        return serializer;
    }

    /**
     * Sets the raw JSON object
     *
     * @param serializer the serializer
     * @param json the JSON object to set this object to
     */
    public void setRawObject(final ISerializer serializer, final JsonObject json) {
        this.serializer = serializer;
        rawObject = json;

    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy