
software.amazon.awscdk.services.glue.CfnClassifierProps Maven / Gradle / Ivy
package software.amazon.awscdk.services.glue;
/**
* Properties for defining a `CfnClassifier`.
*
* Example:
*
*
* // The code below shows an example of how to instantiate this type.
* // The values are placeholders you should change.
* import software.amazon.awscdk.services.glue.*;
* CfnClassifierProps cfnClassifierProps = CfnClassifierProps.builder()
* .csvClassifier(CsvClassifierProperty.builder()
* .allowSingleColumn(false)
* .containsHeader("containsHeader")
* .delimiter("delimiter")
* .disableValueTrimming(false)
* .header(List.of("header"))
* .name("name")
* .quoteSymbol("quoteSymbol")
* .build())
* .grokClassifier(GrokClassifierProperty.builder()
* .classification("classification")
* .grokPattern("grokPattern")
* // the properties below are optional
* .customPatterns("customPatterns")
* .name("name")
* .build())
* .jsonClassifier(JsonClassifierProperty.builder()
* .jsonPath("jsonPath")
* // the properties below are optional
* .name("name")
* .build())
* .xmlClassifier(XMLClassifierProperty.builder()
* .classification("classification")
* .rowTag("rowTag")
* // the properties below are optional
* .name("name")
* .build())
* .build();
*
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.60.0 (build ebcefe6)", date = "2022-06-22T23:27:57.594Z")
@software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.glue.$Module.class, fqn = "@aws-cdk/aws-glue.CfnClassifierProps")
@software.amazon.jsii.Jsii.Proxy(CfnClassifierProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface CfnClassifierProps extends software.amazon.jsii.JsiiSerializable {
/**
* A classifier for comma-separated values (CSV).
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getCsvClassifier() {
return null;
}
/**
* A classifier that uses `grok` .
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getGrokClassifier() {
return null;
}
/**
* A classifier for JSON content.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getJsonClassifier() {
return null;
}
/**
* A classifier for XML content.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getXmlClassifier() {
return null;
}
/**
* @return a {@link Builder} of {@link CfnClassifierProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link CfnClassifierProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object csvClassifier;
java.lang.Object grokClassifier;
java.lang.Object jsonClassifier;
java.lang.Object xmlClassifier;
/**
* Sets the value of {@link CfnClassifierProps#getCsvClassifier}
* @param csvClassifier A classifier for comma-separated values (CSV).
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder csvClassifier(software.amazon.awscdk.services.glue.CfnClassifier.CsvClassifierProperty csvClassifier) {
this.csvClassifier = csvClassifier;
return this;
}
/**
* Sets the value of {@link CfnClassifierProps#getCsvClassifier}
* @param csvClassifier A classifier for comma-separated values (CSV).
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder csvClassifier(software.amazon.awscdk.core.IResolvable csvClassifier) {
this.csvClassifier = csvClassifier;
return this;
}
/**
* Sets the value of {@link CfnClassifierProps#getGrokClassifier}
* @param grokClassifier A classifier that uses `grok` .
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder grokClassifier(software.amazon.awscdk.core.IResolvable grokClassifier) {
this.grokClassifier = grokClassifier;
return this;
}
/**
* Sets the value of {@link CfnClassifierProps#getGrokClassifier}
* @param grokClassifier A classifier that uses `grok` .
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder grokClassifier(software.amazon.awscdk.services.glue.CfnClassifier.GrokClassifierProperty grokClassifier) {
this.grokClassifier = grokClassifier;
return this;
}
/**
* Sets the value of {@link CfnClassifierProps#getJsonClassifier}
* @param jsonClassifier A classifier for JSON content.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder jsonClassifier(software.amazon.awscdk.core.IResolvable jsonClassifier) {
this.jsonClassifier = jsonClassifier;
return this;
}
/**
* Sets the value of {@link CfnClassifierProps#getJsonClassifier}
* @param jsonClassifier A classifier for JSON content.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder jsonClassifier(software.amazon.awscdk.services.glue.CfnClassifier.JsonClassifierProperty jsonClassifier) {
this.jsonClassifier = jsonClassifier;
return this;
}
/**
* Sets the value of {@link CfnClassifierProps#getXmlClassifier}
* @param xmlClassifier A classifier for XML content.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder xmlClassifier(software.amazon.awscdk.core.IResolvable xmlClassifier) {
this.xmlClassifier = xmlClassifier;
return this;
}
/**
* Sets the value of {@link CfnClassifierProps#getXmlClassifier}
* @param xmlClassifier A classifier for XML content.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder xmlClassifier(software.amazon.awscdk.services.glue.CfnClassifier.XMLClassifierProperty xmlClassifier) {
this.xmlClassifier = xmlClassifier;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link CfnClassifierProps}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public CfnClassifierProps build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link CfnClassifierProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements CfnClassifierProps {
private final java.lang.Object csvClassifier;
private final java.lang.Object grokClassifier;
private final java.lang.Object jsonClassifier;
private final java.lang.Object xmlClassifier;
/**
* 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.csvClassifier = software.amazon.jsii.Kernel.get(this, "csvClassifier", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.grokClassifier = software.amazon.jsii.Kernel.get(this, "grokClassifier", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.jsonClassifier = software.amazon.jsii.Kernel.get(this, "jsonClassifier", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.xmlClassifier = software.amazon.jsii.Kernel.get(this, "xmlClassifier", 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.csvClassifier = builder.csvClassifier;
this.grokClassifier = builder.grokClassifier;
this.jsonClassifier = builder.jsonClassifier;
this.xmlClassifier = builder.xmlClassifier;
}
@Override
public final java.lang.Object getCsvClassifier() {
return this.csvClassifier;
}
@Override
public final java.lang.Object getGrokClassifier() {
return this.grokClassifier;
}
@Override
public final java.lang.Object getJsonClassifier() {
return this.jsonClassifier;
}
@Override
public final java.lang.Object getXmlClassifier() {
return this.xmlClassifier;
}
@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();
if (this.getCsvClassifier() != null) {
data.set("csvClassifier", om.valueToTree(this.getCsvClassifier()));
}
if (this.getGrokClassifier() != null) {
data.set("grokClassifier", om.valueToTree(this.getGrokClassifier()));
}
if (this.getJsonClassifier() != null) {
data.set("jsonClassifier", om.valueToTree(this.getJsonClassifier()));
}
if (this.getXmlClassifier() != null) {
data.set("xmlClassifier", om.valueToTree(this.getXmlClassifier()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@aws-cdk/aws-glue.CfnClassifierProps"));
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;
CfnClassifierProps.Jsii$Proxy that = (CfnClassifierProps.Jsii$Proxy) o;
if (this.csvClassifier != null ? !this.csvClassifier.equals(that.csvClassifier) : that.csvClassifier != null) return false;
if (this.grokClassifier != null ? !this.grokClassifier.equals(that.grokClassifier) : that.grokClassifier != null) return false;
if (this.jsonClassifier != null ? !this.jsonClassifier.equals(that.jsonClassifier) : that.jsonClassifier != null) return false;
return this.xmlClassifier != null ? this.xmlClassifier.equals(that.xmlClassifier) : that.xmlClassifier == null;
}
@Override
public final int hashCode() {
int result = this.csvClassifier != null ? this.csvClassifier.hashCode() : 0;
result = 31 * result + (this.grokClassifier != null ? this.grokClassifier.hashCode() : 0);
result = 31 * result + (this.jsonClassifier != null ? this.jsonClassifier.hashCode() : 0);
result = 31 * result + (this.xmlClassifier != null ? this.xmlClassifier.hashCode() : 0);
return result;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy