software.amazon.awsconstructs.services.eventbridgekinesisstreams.EventbridgeToKinesisStreamsProps Maven / Gradle / Ivy
Show all versions of eventbridgekinesisstreams Show documentation
package software.amazon.awsconstructs.services.eventbridgekinesisstreams;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.106.0 (build e852934)", date = "2024-12-24T18:32:46.958Z")
@software.amazon.jsii.Jsii(module = software.amazon.awsconstructs.services.eventbridgekinesisstreams.$Module.class, fqn = "@aws-solutions-constructs/aws-eventbridge-kinesisstreams.EventbridgeToKinesisStreamsProps")
@software.amazon.jsii.Jsii.Proxy(EventbridgeToKinesisStreamsProps.Jsii$Proxy.class)
public interface EventbridgeToKinesisStreamsProps extends software.amazon.jsii.JsiiSerializable {
/**
* User provided eventRuleProps to override the defaults.
*
* Default: - None
*/
@org.jetbrains.annotations.NotNull software.amazon.awscdk.services.events.RuleProps getEventRuleProps();
/**
* Whether to create recommended CloudWatch alarms.
*
* Default: - Alarms are created
*/
default @org.jetbrains.annotations.Nullable java.lang.Boolean getCreateCloudWatchAlarms() {
return null;
}
/**
* A new custom EventBus is created with provided props.
*
* Default: - None
*/
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.events.EventBusProps getEventBusProps() {
return null;
}
/**
* Existing instance of a custom EventBus.
*
* Default: - None
*/
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.events.IEventBus getExistingEventBusInterface() {
return null;
}
/**
* Existing instance of Kinesis Stream object, providing both this and KinesisStreamProps will cause an error.
*
* Default: - Default props are used
*/
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.kinesis.Stream getExistingStreamObj() {
return null;
}
/**
* User provided props to override the default props for the Kinesis Stream.
*
* Default: - Default props are used
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getKinesisStreamProps() {
return null;
}
/**
* @return a {@link Builder} of {@link EventbridgeToKinesisStreamsProps}
*/
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link EventbridgeToKinesisStreamsProps}
*/
public static final class Builder implements software.amazon.jsii.Builder {
software.amazon.awscdk.services.events.RuleProps eventRuleProps;
java.lang.Boolean createCloudWatchAlarms;
software.amazon.awscdk.services.events.EventBusProps eventBusProps;
software.amazon.awscdk.services.events.IEventBus existingEventBusInterface;
software.amazon.awscdk.services.kinesis.Stream existingStreamObj;
java.lang.Object kinesisStreamProps;
/**
* Sets the value of {@link EventbridgeToKinesisStreamsProps#getEventRuleProps}
* @param eventRuleProps User provided eventRuleProps to override the defaults. This parameter is required.
* @return {@code this}
*/
public Builder eventRuleProps(software.amazon.awscdk.services.events.RuleProps eventRuleProps) {
this.eventRuleProps = eventRuleProps;
return this;
}
/**
* Sets the value of {@link EventbridgeToKinesisStreamsProps#getCreateCloudWatchAlarms}
* @param createCloudWatchAlarms Whether to create recommended CloudWatch alarms.
* @return {@code this}
*/
public Builder createCloudWatchAlarms(java.lang.Boolean createCloudWatchAlarms) {
this.createCloudWatchAlarms = createCloudWatchAlarms;
return this;
}
/**
* Sets the value of {@link EventbridgeToKinesisStreamsProps#getEventBusProps}
* @param eventBusProps A new custom EventBus is created with provided props.
* @return {@code this}
*/
public Builder eventBusProps(software.amazon.awscdk.services.events.EventBusProps eventBusProps) {
this.eventBusProps = eventBusProps;
return this;
}
/**
* Sets the value of {@link EventbridgeToKinesisStreamsProps#getExistingEventBusInterface}
* @param existingEventBusInterface Existing instance of a custom EventBus.
* @return {@code this}
*/
public Builder existingEventBusInterface(software.amazon.awscdk.services.events.IEventBus existingEventBusInterface) {
this.existingEventBusInterface = existingEventBusInterface;
return this;
}
/**
* Sets the value of {@link EventbridgeToKinesisStreamsProps#getExistingStreamObj}
* @param existingStreamObj Existing instance of Kinesis Stream object, providing both this and KinesisStreamProps will cause an error.
* @return {@code this}
*/
public Builder existingStreamObj(software.amazon.awscdk.services.kinesis.Stream existingStreamObj) {
this.existingStreamObj = existingStreamObj;
return this;
}
/**
* Sets the value of {@link EventbridgeToKinesisStreamsProps#getKinesisStreamProps}
* @param kinesisStreamProps User provided props to override the default props for the Kinesis Stream.
* @return {@code this}
*/
public Builder kinesisStreamProps(java.lang.Object kinesisStreamProps) {
this.kinesisStreamProps = kinesisStreamProps;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link EventbridgeToKinesisStreamsProps}
* @throws NullPointerException if any required attribute was not provided
*/
@Override
public EventbridgeToKinesisStreamsProps build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link EventbridgeToKinesisStreamsProps}
*/
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements EventbridgeToKinesisStreamsProps {
private final software.amazon.awscdk.services.events.RuleProps eventRuleProps;
private final java.lang.Boolean createCloudWatchAlarms;
private final software.amazon.awscdk.services.events.EventBusProps eventBusProps;
private final software.amazon.awscdk.services.events.IEventBus existingEventBusInterface;
private final software.amazon.awscdk.services.kinesis.Stream existingStreamObj;
private final java.lang.Object kinesisStreamProps;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.eventRuleProps = software.amazon.jsii.Kernel.get(this, "eventRuleProps", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.events.RuleProps.class));
this.createCloudWatchAlarms = software.amazon.jsii.Kernel.get(this, "createCloudWatchAlarms", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.eventBusProps = software.amazon.jsii.Kernel.get(this, "eventBusProps", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.events.EventBusProps.class));
this.existingEventBusInterface = software.amazon.jsii.Kernel.get(this, "existingEventBusInterface", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.events.IEventBus.class));
this.existingStreamObj = software.amazon.jsii.Kernel.get(this, "existingStreamObj", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.kinesis.Stream.class));
this.kinesisStreamProps = software.amazon.jsii.Kernel.get(this, "kinesisStreamProps", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.eventRuleProps = java.util.Objects.requireNonNull(builder.eventRuleProps, "eventRuleProps is required");
this.createCloudWatchAlarms = builder.createCloudWatchAlarms;
this.eventBusProps = builder.eventBusProps;
this.existingEventBusInterface = builder.existingEventBusInterface;
this.existingStreamObj = builder.existingStreamObj;
this.kinesisStreamProps = builder.kinesisStreamProps;
}
@Override
public final software.amazon.awscdk.services.events.RuleProps getEventRuleProps() {
return this.eventRuleProps;
}
@Override
public final java.lang.Boolean getCreateCloudWatchAlarms() {
return this.createCloudWatchAlarms;
}
@Override
public final software.amazon.awscdk.services.events.EventBusProps getEventBusProps() {
return this.eventBusProps;
}
@Override
public final software.amazon.awscdk.services.events.IEventBus getExistingEventBusInterface() {
return this.existingEventBusInterface;
}
@Override
public final software.amazon.awscdk.services.kinesis.Stream getExistingStreamObj() {
return this.existingStreamObj;
}
@Override
public final java.lang.Object getKinesisStreamProps() {
return this.kinesisStreamProps;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("eventRuleProps", om.valueToTree(this.getEventRuleProps()));
if (this.getCreateCloudWatchAlarms() != null) {
data.set("createCloudWatchAlarms", om.valueToTree(this.getCreateCloudWatchAlarms()));
}
if (this.getEventBusProps() != null) {
data.set("eventBusProps", om.valueToTree(this.getEventBusProps()));
}
if (this.getExistingEventBusInterface() != null) {
data.set("existingEventBusInterface", om.valueToTree(this.getExistingEventBusInterface()));
}
if (this.getExistingStreamObj() != null) {
data.set("existingStreamObj", om.valueToTree(this.getExistingStreamObj()));
}
if (this.getKinesisStreamProps() != null) {
data.set("kinesisStreamProps", om.valueToTree(this.getKinesisStreamProps()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@aws-solutions-constructs/aws-eventbridge-kinesisstreams.EventbridgeToKinesisStreamsProps"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
EventbridgeToKinesisStreamsProps.Jsii$Proxy that = (EventbridgeToKinesisStreamsProps.Jsii$Proxy) o;
if (!eventRuleProps.equals(that.eventRuleProps)) return false;
if (this.createCloudWatchAlarms != null ? !this.createCloudWatchAlarms.equals(that.createCloudWatchAlarms) : that.createCloudWatchAlarms != null) return false;
if (this.eventBusProps != null ? !this.eventBusProps.equals(that.eventBusProps) : that.eventBusProps != null) return false;
if (this.existingEventBusInterface != null ? !this.existingEventBusInterface.equals(that.existingEventBusInterface) : that.existingEventBusInterface != null) return false;
if (this.existingStreamObj != null ? !this.existingStreamObj.equals(that.existingStreamObj) : that.existingStreamObj != null) return false;
return this.kinesisStreamProps != null ? this.kinesisStreamProps.equals(that.kinesisStreamProps) : that.kinesisStreamProps == null;
}
@Override
public final int hashCode() {
int result = this.eventRuleProps.hashCode();
result = 31 * result + (this.createCloudWatchAlarms != null ? this.createCloudWatchAlarms.hashCode() : 0);
result = 31 * result + (this.eventBusProps != null ? this.eventBusProps.hashCode() : 0);
result = 31 * result + (this.existingEventBusInterface != null ? this.existingEventBusInterface.hashCode() : 0);
result = 31 * result + (this.existingStreamObj != null ? this.existingStreamObj.hashCode() : 0);
result = 31 * result + (this.kinesisStreamProps != null ? this.kinesisStreamProps.hashCode() : 0);
return result;
}
}
}