
com.pulumi.azurenative.edgeorder.inputs.CustomerSubscriptionDetails 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.azurenative.edgeorder.inputs;
import com.pulumi.azurenative.edgeorder.inputs.CustomerSubscriptionRegisteredFeatures;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
/**
* Holds Customer subscription details. Clients can display available products to unregistered customers by explicitly passing subscription details.
*
*/
public final class CustomerSubscriptionDetails extends com.pulumi.resources.InvokeArgs {
public static final CustomerSubscriptionDetails Empty = new CustomerSubscriptionDetails();
/**
* Location placement Id of a subscription.
*
*/
@Import(name="locationPlacementId")
private @Nullable String locationPlacementId;
/**
* @return Location placement Id of a subscription.
*
*/
public Optional locationPlacementId() {
return Optional.ofNullable(this.locationPlacementId);
}
/**
* Quota ID of a subscription.
*
*/
@Import(name="quotaId", required=true)
private String quotaId;
/**
* @return Quota ID of a subscription.
*
*/
public String quotaId() {
return this.quotaId;
}
/**
* List of registered feature flags for subscription.
*
*/
@Import(name="registeredFeatures")
private @Nullable List registeredFeatures;
/**
* @return List of registered feature flags for subscription.
*
*/
public Optional> registeredFeatures() {
return Optional.ofNullable(this.registeredFeatures);
}
private CustomerSubscriptionDetails() {}
private CustomerSubscriptionDetails(CustomerSubscriptionDetails $) {
this.locationPlacementId = $.locationPlacementId;
this.quotaId = $.quotaId;
this.registeredFeatures = $.registeredFeatures;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(CustomerSubscriptionDetails defaults) {
return new Builder(defaults);
}
public static final class Builder {
private CustomerSubscriptionDetails $;
public Builder() {
$ = new CustomerSubscriptionDetails();
}
public Builder(CustomerSubscriptionDetails defaults) {
$ = new CustomerSubscriptionDetails(Objects.requireNonNull(defaults));
}
/**
* @param locationPlacementId Location placement Id of a subscription.
*
* @return builder
*
*/
public Builder locationPlacementId(@Nullable String locationPlacementId) {
$.locationPlacementId = locationPlacementId;
return this;
}
/**
* @param quotaId Quota ID of a subscription.
*
* @return builder
*
*/
public Builder quotaId(String quotaId) {
$.quotaId = quotaId;
return this;
}
/**
* @param registeredFeatures List of registered feature flags for subscription.
*
* @return builder
*
*/
public Builder registeredFeatures(@Nullable List registeredFeatures) {
$.registeredFeatures = registeredFeatures;
return this;
}
/**
* @param registeredFeatures List of registered feature flags for subscription.
*
* @return builder
*
*/
public Builder registeredFeatures(CustomerSubscriptionRegisteredFeatures... registeredFeatures) {
return registeredFeatures(List.of(registeredFeatures));
}
public CustomerSubscriptionDetails build() {
if ($.quotaId == null) {
throw new MissingRequiredPropertyException("CustomerSubscriptionDetails", "quotaId");
}
return $;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy