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

package com.azure.resourcemanager.paloaltonetworks.ngfw.generated;

import com.azure.resourcemanager.paloaltonetworks.ngfw.fluent.models.LogSettingsInner;
import com.azure.resourcemanager.paloaltonetworks.ngfw.models.ApplicationInsights;
import com.azure.resourcemanager.paloaltonetworks.ngfw.models.EventHub;
import com.azure.resourcemanager.paloaltonetworks.ngfw.models.LogDestination;
import com.azure.resourcemanager.paloaltonetworks.ngfw.models.LogOption;
import com.azure.resourcemanager.paloaltonetworks.ngfw.models.LogType;
import com.azure.resourcemanager.paloaltonetworks.ngfw.models.MonitorLog;
import com.azure.resourcemanager.paloaltonetworks.ngfw.models.StorageAccount;

/** Samples for Firewalls SaveLogProfile. */
public final class FirewallsSaveLogProfileSamples {
    /*
     * x-ms-original-file: specification/paloaltonetworks/resource-manager/PaloAltoNetworks.Cloudngfw/stable/2022-08-29/examples/Firewalls_saveLogProfile_MaximumSet_Gen.json
     */
    /**
     * Sample code: Firewalls_saveLogProfile_MaximumSet_Gen.
     *
     * @param manager Entry point to PaloAltoNetworksNgfwManager.
     */
    public static void firewallsSaveLogProfileMaximumSetGen(
        com.azure.resourcemanager.paloaltonetworks.ngfw.PaloAltoNetworksNgfwManager manager) {
        manager
            .firewalls()
            .saveLogProfileWithResponse(
                "firewall-rg",
                "firewall1",
                new LogSettingsInner()
                    .withLogType(LogType.TRAFFIC)
                    .withLogOption(LogOption.SAME_DESTINATION)
                    .withApplicationInsights(
                        new ApplicationInsights().withId("aaaaaaaaaaaaaaaa").withKey("fakeTokenPlaceholder"))
                    .withCommonDestination(
                        new LogDestination()
                            .withStorageConfigurations(
                                new StorageAccount()
                                    .withId("aaaaaaaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaa")
                                    .withAccountName("aaaaaaaaaaaaaaaaaaaaaaa"))
                            .withEventHubConfigurations(
                                new EventHub()
                                    .withId("aaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaaa")
                                    .withName("aaaaaaaa")
                                    .withNameSpace("aaaaaaaaaaaaaaaaaaaaa")
                                    .withPolicyName("aaaaaaaaaaaa"))
                            .withMonitorConfigurations(
                                new MonitorLog()
                                    .withId("aaaaaaaaaaaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaaaaaa")
                                    .withWorkspace("aaaaaaaaaaa")
                                    .withPrimaryKey("fakeTokenPlaceholder")
                                    .withSecondaryKey("fakeTokenPlaceholder")))
                    .withTrafficLogDestination(
                        new LogDestination()
                            .withStorageConfigurations(
                                new StorageAccount()
                                    .withId("aaaaaaaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaa")
                                    .withAccountName("aaaaaaaaaaaaaaaaaaaaaaa"))
                            .withEventHubConfigurations(
                                new EventHub()
                                    .withId("aaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaaa")
                                    .withName("aaaaaaaa")
                                    .withNameSpace("aaaaaaaaaaaaaaaaaaaaa")
                                    .withPolicyName("aaaaaaaaaaaa"))
                            .withMonitorConfigurations(
                                new MonitorLog()
                                    .withId("aaaaaaaaaaaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaaaaaa")
                                    .withWorkspace("aaaaaaaaaaa")
                                    .withPrimaryKey("fakeTokenPlaceholder")
                                    .withSecondaryKey("fakeTokenPlaceholder")))
                    .withThreatLogDestination(
                        new LogDestination()
                            .withStorageConfigurations(
                                new StorageAccount()
                                    .withId("aaaaaaaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaa")
                                    .withAccountName("aaaaaaaaaaaaaaaaaaaaaaa"))
                            .withEventHubConfigurations(
                                new EventHub()
                                    .withId("aaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaaa")
                                    .withName("aaaaaaaa")
                                    .withNameSpace("aaaaaaaaaaaaaaaaaaaaa")
                                    .withPolicyName("aaaaaaaaaaaa"))
                            .withMonitorConfigurations(
                                new MonitorLog()
                                    .withId("aaaaaaaaaaaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaaaaaa")
                                    .withWorkspace("aaaaaaaaaaa")
                                    .withPrimaryKey("fakeTokenPlaceholder")
                                    .withSecondaryKey("fakeTokenPlaceholder")))
                    .withDecryptLogDestination(
                        new LogDestination()
                            .withStorageConfigurations(
                                new StorageAccount()
                                    .withId("aaaaaaaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaa")
                                    .withAccountName("aaaaaaaaaaaaaaaaaaaaaaa"))
                            .withEventHubConfigurations(
                                new EventHub()
                                    .withId("aaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaaa")
                                    .withName("aaaaaaaa")
                                    .withNameSpace("aaaaaaaaaaaaaaaaaaaaa")
                                    .withPolicyName("aaaaaaaaaaaa"))
                            .withMonitorConfigurations(
                                new MonitorLog()
                                    .withId("aaaaaaaaaaaaaaaaaaa")
                                    .withSubscriptionId("aaaaaaaaaaaaa")
                                    .withWorkspace("aaaaaaaaaaa")
                                    .withPrimaryKey("fakeTokenPlaceholder")
                                    .withSecondaryKey("fakeTokenPlaceholder"))),
                com.azure.core.util.Context.NONE);
    }

    /*
     * x-ms-original-file: specification/paloaltonetworks/resource-manager/PaloAltoNetworks.Cloudngfw/stable/2022-08-29/examples/Firewalls_saveLogProfile_MinimumSet_Gen.json
     */
    /**
     * Sample code: Firewalls_saveLogProfile_MinimumSet_Gen.
     *
     * @param manager Entry point to PaloAltoNetworksNgfwManager.
     */
    public static void firewallsSaveLogProfileMinimumSetGen(
        com.azure.resourcemanager.paloaltonetworks.ngfw.PaloAltoNetworksNgfwManager manager) {
        manager
            .firewalls()
            .saveLogProfileWithResponse("firewall-rg", "firewall1", null, com.azure.core.util.Context.NONE);
    }
}
