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

com.pulumi.azurenative.scvmm.ScvmmFunctions Maven / Gradle / Ivy

There is a newer version: 2.78.0
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.azurenative.scvmm;

import com.pulumi.azurenative.Utilities;
import com.pulumi.azurenative.scvmm.inputs.GetAvailabilitySetArgs;
import com.pulumi.azurenative.scvmm.inputs.GetAvailabilitySetPlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetCloudArgs;
import com.pulumi.azurenative.scvmm.inputs.GetCloudPlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetGuestAgentArgs;
import com.pulumi.azurenative.scvmm.inputs.GetGuestAgentPlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetHybridIdentityMetadataArgs;
import com.pulumi.azurenative.scvmm.inputs.GetHybridIdentityMetadataPlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetInventoryItemArgs;
import com.pulumi.azurenative.scvmm.inputs.GetInventoryItemPlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetMachineExtensionArgs;
import com.pulumi.azurenative.scvmm.inputs.GetMachineExtensionPlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVMInstanceGuestAgentArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVMInstanceGuestAgentPlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVirtualMachineArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVirtualMachineInstanceArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVirtualMachineInstancePlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVirtualMachinePlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVirtualMachineTemplateArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVirtualMachineTemplatePlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVirtualNetworkArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVirtualNetworkPlainArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVmmServerArgs;
import com.pulumi.azurenative.scvmm.inputs.GetVmmServerPlainArgs;
import com.pulumi.azurenative.scvmm.outputs.GetAvailabilitySetResult;
import com.pulumi.azurenative.scvmm.outputs.GetCloudResult;
import com.pulumi.azurenative.scvmm.outputs.GetGuestAgentResult;
import com.pulumi.azurenative.scvmm.outputs.GetHybridIdentityMetadataResult;
import com.pulumi.azurenative.scvmm.outputs.GetInventoryItemResult;
import com.pulumi.azurenative.scvmm.outputs.GetMachineExtensionResult;
import com.pulumi.azurenative.scvmm.outputs.GetVMInstanceGuestAgentResult;
import com.pulumi.azurenative.scvmm.outputs.GetVirtualMachineInstanceResult;
import com.pulumi.azurenative.scvmm.outputs.GetVirtualMachineResult;
import com.pulumi.azurenative.scvmm.outputs.GetVirtualMachineTemplateResult;
import com.pulumi.azurenative.scvmm.outputs.GetVirtualNetworkResult;
import com.pulumi.azurenative.scvmm.outputs.GetVmmServerResult;
import com.pulumi.core.Output;
import com.pulumi.core.TypeShape;
import com.pulumi.deployment.Deployment;
import com.pulumi.deployment.InvokeOptions;
import java.util.concurrent.CompletableFuture;

public final class ScvmmFunctions {
    /**
     * Implements AvailabilitySet GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getAvailabilitySet(GetAvailabilitySetArgs args) {
        return getAvailabilitySet(args, InvokeOptions.Empty);
    }
    /**
     * Implements AvailabilitySet GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getAvailabilitySetPlain(GetAvailabilitySetPlainArgs args) {
        return getAvailabilitySetPlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements AvailabilitySet GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getAvailabilitySet(GetAvailabilitySetArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getAvailabilitySet", TypeShape.of(GetAvailabilitySetResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements AvailabilitySet GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getAvailabilitySetPlain(GetAvailabilitySetPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getAvailabilitySet", TypeShape.of(GetAvailabilitySetResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements Cloud GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getCloud(GetCloudArgs args) {
        return getCloud(args, InvokeOptions.Empty);
    }
    /**
     * Implements Cloud GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getCloudPlain(GetCloudPlainArgs args) {
        return getCloudPlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements Cloud GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getCloud(GetCloudArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getCloud", TypeShape.of(GetCloudResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements Cloud GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getCloudPlain(GetCloudPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getCloud", TypeShape.of(GetCloudResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements GuestAgent GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getGuestAgent(GetGuestAgentArgs args) {
        return getGuestAgent(args, InvokeOptions.Empty);
    }
    /**
     * Implements GuestAgent GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getGuestAgentPlain(GetGuestAgentPlainArgs args) {
        return getGuestAgentPlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements GuestAgent GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getGuestAgent(GetGuestAgentArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getGuestAgent", TypeShape.of(GetGuestAgentResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements GuestAgent GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getGuestAgentPlain(GetGuestAgentPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getGuestAgent", TypeShape.of(GetGuestAgentResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements HybridIdentityMetadata GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static Output getHybridIdentityMetadata(GetHybridIdentityMetadataArgs args) {
        return getHybridIdentityMetadata(args, InvokeOptions.Empty);
    }
    /**
     * Implements HybridIdentityMetadata GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static CompletableFuture getHybridIdentityMetadataPlain(GetHybridIdentityMetadataPlainArgs args) {
        return getHybridIdentityMetadataPlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements HybridIdentityMetadata GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static Output getHybridIdentityMetadata(GetHybridIdentityMetadataArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getHybridIdentityMetadata", TypeShape.of(GetHybridIdentityMetadataResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements HybridIdentityMetadata GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static CompletableFuture getHybridIdentityMetadataPlain(GetHybridIdentityMetadataPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getHybridIdentityMetadata", TypeShape.of(GetHybridIdentityMetadataResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Shows an inventory item.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getInventoryItem(GetInventoryItemArgs args) {
        return getInventoryItem(args, InvokeOptions.Empty);
    }
    /**
     * Shows an inventory item.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getInventoryItemPlain(GetInventoryItemPlainArgs args) {
        return getInventoryItemPlain(args, InvokeOptions.Empty);
    }
    /**
     * Shows an inventory item.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getInventoryItem(GetInventoryItemArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getInventoryItem", TypeShape.of(GetInventoryItemResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Shows an inventory item.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getInventoryItemPlain(GetInventoryItemPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getInventoryItem", TypeShape.of(GetInventoryItemResult.class), args, Utilities.withVersion(options));
    }
    /**
     * The operation to get the extension.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static Output getMachineExtension(GetMachineExtensionArgs args) {
        return getMachineExtension(args, InvokeOptions.Empty);
    }
    /**
     * The operation to get the extension.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static CompletableFuture getMachineExtensionPlain(GetMachineExtensionPlainArgs args) {
        return getMachineExtensionPlain(args, InvokeOptions.Empty);
    }
    /**
     * The operation to get the extension.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static Output getMachineExtension(GetMachineExtensionArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getMachineExtension", TypeShape.of(GetMachineExtensionResult.class), args, Utilities.withVersion(options));
    }
    /**
     * The operation to get the extension.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static CompletableFuture getMachineExtensionPlain(GetMachineExtensionPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getMachineExtension", TypeShape.of(GetMachineExtensionResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements GuestAgent GET method.
     * Azure REST API version: 2023-04-01-preview.
     * 
     */
    public static Output getVMInstanceGuestAgent(GetVMInstanceGuestAgentArgs args) {
        return getVMInstanceGuestAgent(args, InvokeOptions.Empty);
    }
    /**
     * Implements GuestAgent GET method.
     * Azure REST API version: 2023-04-01-preview.
     * 
     */
    public static CompletableFuture getVMInstanceGuestAgentPlain(GetVMInstanceGuestAgentPlainArgs args) {
        return getVMInstanceGuestAgentPlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements GuestAgent GET method.
     * Azure REST API version: 2023-04-01-preview.
     * 
     */
    public static Output getVMInstanceGuestAgent(GetVMInstanceGuestAgentArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getVMInstanceGuestAgent", TypeShape.of(GetVMInstanceGuestAgentResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements GuestAgent GET method.
     * Azure REST API version: 2023-04-01-preview.
     * 
     */
    public static CompletableFuture getVMInstanceGuestAgentPlain(GetVMInstanceGuestAgentPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getVMInstanceGuestAgent", TypeShape.of(GetVMInstanceGuestAgentResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements VirtualMachine GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static Output getVirtualMachine(GetVirtualMachineArgs args) {
        return getVirtualMachine(args, InvokeOptions.Empty);
    }
    /**
     * Implements VirtualMachine GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static CompletableFuture getVirtualMachinePlain(GetVirtualMachinePlainArgs args) {
        return getVirtualMachinePlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements VirtualMachine GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static Output getVirtualMachine(GetVirtualMachineArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getVirtualMachine", TypeShape.of(GetVirtualMachineResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements VirtualMachine GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview.
     * 
     */
    public static CompletableFuture getVirtualMachinePlain(GetVirtualMachinePlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getVirtualMachine", TypeShape.of(GetVirtualMachineResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Retrieves information about a virtual machine instance.
     * Azure REST API version: 2023-04-01-preview.
     * 
     * Other available API versions: 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getVirtualMachineInstance(GetVirtualMachineInstanceArgs args) {
        return getVirtualMachineInstance(args, InvokeOptions.Empty);
    }
    /**
     * Retrieves information about a virtual machine instance.
     * Azure REST API version: 2023-04-01-preview.
     * 
     * Other available API versions: 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getVirtualMachineInstancePlain(GetVirtualMachineInstancePlainArgs args) {
        return getVirtualMachineInstancePlain(args, InvokeOptions.Empty);
    }
    /**
     * Retrieves information about a virtual machine instance.
     * Azure REST API version: 2023-04-01-preview.
     * 
     * Other available API versions: 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getVirtualMachineInstance(GetVirtualMachineInstanceArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getVirtualMachineInstance", TypeShape.of(GetVirtualMachineInstanceResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Retrieves information about a virtual machine instance.
     * Azure REST API version: 2023-04-01-preview.
     * 
     * Other available API versions: 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getVirtualMachineInstancePlain(GetVirtualMachineInstancePlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getVirtualMachineInstance", TypeShape.of(GetVirtualMachineInstanceResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements VirtualMachineTemplate GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getVirtualMachineTemplate(GetVirtualMachineTemplateArgs args) {
        return getVirtualMachineTemplate(args, InvokeOptions.Empty);
    }
    /**
     * Implements VirtualMachineTemplate GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getVirtualMachineTemplatePlain(GetVirtualMachineTemplatePlainArgs args) {
        return getVirtualMachineTemplatePlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements VirtualMachineTemplate GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getVirtualMachineTemplate(GetVirtualMachineTemplateArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getVirtualMachineTemplate", TypeShape.of(GetVirtualMachineTemplateResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements VirtualMachineTemplate GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getVirtualMachineTemplatePlain(GetVirtualMachineTemplatePlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getVirtualMachineTemplate", TypeShape.of(GetVirtualMachineTemplateResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements VirtualNetwork GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getVirtualNetwork(GetVirtualNetworkArgs args) {
        return getVirtualNetwork(args, InvokeOptions.Empty);
    }
    /**
     * Implements VirtualNetwork GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getVirtualNetworkPlain(GetVirtualNetworkPlainArgs args) {
        return getVirtualNetworkPlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements VirtualNetwork GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getVirtualNetwork(GetVirtualNetworkArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getVirtualNetwork", TypeShape.of(GetVirtualNetworkResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements VirtualNetwork GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getVirtualNetworkPlain(GetVirtualNetworkPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getVirtualNetwork", TypeShape.of(GetVirtualNetworkResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements VMMServer GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getVmmServer(GetVmmServerArgs args) {
        return getVmmServer(args, InvokeOptions.Empty);
    }
    /**
     * Implements VMMServer GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getVmmServerPlain(GetVmmServerPlainArgs args) {
        return getVmmServerPlain(args, InvokeOptions.Empty);
    }
    /**
     * Implements VMMServer GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static Output getVmmServer(GetVmmServerArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure-native:scvmm:getVmmServer", TypeShape.of(GetVmmServerResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Implements VMMServer GET method.
     * Azure REST API version: 2022-05-21-preview.
     * 
     * Other available API versions: 2023-04-01-preview, 2023-10-07, 2024-06-01.
     * 
     */
    public static CompletableFuture getVmmServerPlain(GetVmmServerPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure-native:scvmm:getVmmServer", TypeShape.of(GetVmmServerResult.class), args, Utilities.withVersion(options));
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy