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

com.pulumi.deployment.internal.DeploymentInternal Maven / Gradle / Ivy

There is a newer version: 0.17.0
Show newest version
package com.pulumi.deployment.internal;

import com.pulumi.core.Output;
import com.pulumi.core.internal.annotations.InternalUse;
import com.pulumi.deployment.Deployment;
import com.pulumi.resources.Resource;
import com.pulumi.resources.ResourceArgs;
import com.pulumi.resources.ResourceOptions;
import com.pulumi.resources.internal.Stack;

import java.util.Map;
import java.util.Optional;
import java.util.function.Function;

@InternalUse
public interface DeploymentInternal extends Deployment {

    DeploymentImpl.Config getConfig();

    Optional getConfig(String fullKey);

    boolean isConfigSecret(String fullKey);

    Stack getStack();

    void setStack(Stack stack);

    Runner getRunner();

    void readOrRegisterResource(Resource resource, boolean remote, Function newDependency,
                                ResourceArgs args, ResourceOptions opts, Resource.LazyFields lazy);

    void registerResourceOutputs(Resource resource, Output>> outputs);

    @InternalUse
    static DeploymentInternal getInstance() {
        return DeploymentInstanceInternal.cast(Deployment.getInstance()).getInternal();
    }

    @InternalUse
    static Optional getInstanceOptional() {
        return DeploymentInstanceHolder.getInstanceOptional()
                .map(DeploymentInstanceInternal::cast)
                .map(DeploymentInstanceInternal::getInternal);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy