
com.pulumi.github.outputs.RepositorySecurityAndAnalysis Maven / Gradle / Ivy
// *** 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.github.outputs;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.github.outputs.RepositorySecurityAndAnalysisAdvancedSecurity;
import com.pulumi.github.outputs.RepositorySecurityAndAnalysisSecretScanning;
import com.pulumi.github.outputs.RepositorySecurityAndAnalysisSecretScanningPushProtection;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class RepositorySecurityAndAnalysis {
/**
* @return The advanced security configuration for the repository. See Advanced Security Configuration below for details. If a repository's visibility is `public`, advanced security is always enabled and cannot be changed, so this setting cannot be supplied.
*
*/
private @Nullable RepositorySecurityAndAnalysisAdvancedSecurity advancedSecurity;
/**
* @return The secret scanning configuration for the repository. See Secret Scanning Configuration below for details.
*
*/
private @Nullable RepositorySecurityAndAnalysisSecretScanning secretScanning;
/**
* @return The secret scanning push protection configuration for the repository. See Secret Scanning Push Protection Configuration below for details.
*
*/
private @Nullable RepositorySecurityAndAnalysisSecretScanningPushProtection secretScanningPushProtection;
private RepositorySecurityAndAnalysis() {}
/**
* @return The advanced security configuration for the repository. See Advanced Security Configuration below for details. If a repository's visibility is `public`, advanced security is always enabled and cannot be changed, so this setting cannot be supplied.
*
*/
public Optional advancedSecurity() {
return Optional.ofNullable(this.advancedSecurity);
}
/**
* @return The secret scanning configuration for the repository. See Secret Scanning Configuration below for details.
*
*/
public Optional secretScanning() {
return Optional.ofNullable(this.secretScanning);
}
/**
* @return The secret scanning push protection configuration for the repository. See Secret Scanning Push Protection Configuration below for details.
*
*/
public Optional secretScanningPushProtection() {
return Optional.ofNullable(this.secretScanningPushProtection);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(RepositorySecurityAndAnalysis defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable RepositorySecurityAndAnalysisAdvancedSecurity advancedSecurity;
private @Nullable RepositorySecurityAndAnalysisSecretScanning secretScanning;
private @Nullable RepositorySecurityAndAnalysisSecretScanningPushProtection secretScanningPushProtection;
public Builder() {}
public Builder(RepositorySecurityAndAnalysis defaults) {
Objects.requireNonNull(defaults);
this.advancedSecurity = defaults.advancedSecurity;
this.secretScanning = defaults.secretScanning;
this.secretScanningPushProtection = defaults.secretScanningPushProtection;
}
@CustomType.Setter
public Builder advancedSecurity(@Nullable RepositorySecurityAndAnalysisAdvancedSecurity advancedSecurity) {
this.advancedSecurity = advancedSecurity;
return this;
}
@CustomType.Setter
public Builder secretScanning(@Nullable RepositorySecurityAndAnalysisSecretScanning secretScanning) {
this.secretScanning = secretScanning;
return this;
}
@CustomType.Setter
public Builder secretScanningPushProtection(@Nullable RepositorySecurityAndAnalysisSecretScanningPushProtection secretScanningPushProtection) {
this.secretScanningPushProtection = secretScanningPushProtection;
return this;
}
public RepositorySecurityAndAnalysis build() {
final var o = new RepositorySecurityAndAnalysis();
o.advancedSecurity = advancedSecurity;
o.secretScanning = secretScanning;
o.secretScanningPushProtection = secretScanningPushProtection;
return o;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy