From f7d99d7dcde0b9ffd62ce13ef525cdb5107de4c2 Mon Sep 17 00:00:00 2001 From: Dovie Shalev Date: Wed, 28 Oct 2026 11:54:56 -0400 Subject: [PATCH 1/2] Regenerate chalk/aggregate/v1 protos with CreateAggregateBackfillV2 Generated from chalk-private e3bca561 with the java template in protos/generate.sh (protocolbuffers/java v25.1, grpc/java v1.64.0). Only chalk/aggregate/v1 is updated. Co-Authored-By: Claude Opus 5.5 --- .../chalk/aggregate/v1/AggregateBackfill.java | 157 + .../aggregate/v1/AggregateBackfillJob.java | 754 +++++ .../v1/AggregateBackfillJobOrBuilder.java | 87 + .../aggregate/v1/AggregateBackfillMode.java | 143 + .../v1/AggregateBackfillOrBuilder.java | 17 + .../aggregate/v1/AggregateBackfillStatus.java | 185 ++ .../aggregate/v1/AggregateBackfillTarget.java | 123 + .../v1/AggregateBackfillUserParams.java | 364 ++- .../AggregateBackfillUserParamsOrBuilder.java | 48 +- .../v1/AggregateBackfillWithCostEstimate.java | 54 +- ...gateBackfillWithCostEstimateOrBuilder.java | 16 +- .../aggregate/v1/AggregateServiceGrpc.java | 346 ++ .../aggregate/v1/AggregateTimeSeries.java | 713 +++- .../v1/AggregateTimeSeriesOrBuilder.java | 119 +- .../aggregate/v1/AggregateTimeSeriesRule.java | 164 + .../v1/AggregateTimeSeriesRuleOrBuilder.java | 20 + .../chalk/aggregate/v1/AggregationIndex.java | 1475 +++++++++ .../v1/AggregationIndexOrBuilder.java | 114 + .../aggregate/v1/AggregationIndexProto.java | 103 + .../v1/AggregationIndexServiceGrpc.java | 294 ++ .../chalk/aggregate/v1/BackfillProto.java | 113 +- .../v1/CreateAggregateBackfillJobRequest.java | 2488 ++++++++++++++ ...eAggregateBackfillJobRequestOrBuilder.java | 246 ++ .../CreateAggregateBackfillJobResponse.java | 1085 +++++++ ...AggregateBackfillJobResponseOrBuilder.java | 71 + .../v1/CreateAggregateBackfillV2Request.java | 2692 ++++++++++++++++ ...teAggregateBackfillV2RequestOrBuilder.java | 314 ++ .../v1/CreateAggregateBackfillV2Response.java | 1129 +++++++ ...eAggregateBackfillV2ResponseOrBuilder.java | 89 + .../aggregate/v1/CronAggregateBackfill.java | 2865 +++++++++++++++++ .../v1/CronAggregateBackfillOrBuilder.java | 269 ++ .../CronAggregateBackfillWithLatestRun.java | 784 +++++ ...gregateBackfillWithLatestRunOrBuilder.java | 40 + ...etActiveCronAggregateBackfillsRequest.java | 399 +++ ...ronAggregateBackfillsRequestOrBuilder.java | 10 + ...tActiveCronAggregateBackfillsResponse.java | 760 +++++ ...onAggregateBackfillsResponseOrBuilder.java | 34 + .../v1/GetAggregateBackfillJobsRequest.java | 411 +++ ...AggregateBackfillJobsRequestOrBuilder.java | 45 + .../v1/GetCronAggregateBackfillRequest.java | 692 ++++ ...CronAggregateBackfillRequestOrBuilder.java | 38 + .../v1/GetCronAggregateBackfillResponse.java | 599 ++++ ...ronAggregateBackfillResponseOrBuilder.java | 25 + .../GetDeploymentAggregationIndexRequest.java | 407 +++ ...ymentAggregationIndexRequestOrBuilder.java | 10 + ...GetDeploymentAggregationIndexResponse.java | 647 ++++ ...mentAggregationIndexResponseOrBuilder.java | 37 + .../v1/PlanAggregateBackfillResponse.java | 54 +- ...lanAggregateBackfillResponseOrBuilder.java | 16 +- .../chalk/aggregate/v1/ServiceProto.java | 303 +- .../chalk/aggregate/v1/TimeseriesProto.java | 35 +- 51 files changed, 21826 insertions(+), 177 deletions(-) create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillMode.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillStatus.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillTarget.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndex.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexProto.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexServiceGrpc.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobRequest.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobRequestOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobResponse.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobResponseOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2Request.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2RequestOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2Response.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2ResponseOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfill.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillWithLatestRun.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillWithLatestRunOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsRequest.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsRequestOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsResponse.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsResponseOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillRequest.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillRequestOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillResponse.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillResponseOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexRequest.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexRequestOrBuilder.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexResponse.java create mode 100644 src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexResponseOrBuilder.java diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfill.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfill.java index 2894b916..2f719f80 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfill.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfill.java @@ -23,6 +23,7 @@ private AggregateBackfill() { filtersDescription_ = ""; groupBy_ = com.google.protobuf.LazyStringArrayList.emptyList(); + inputSql_ = ""; } @java.lang.Override @@ -345,6 +346,53 @@ public com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder() { return upperBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; } + public static final int INPUT_SQL_FIELD_NUMBER = 10; + @SuppressWarnings("serial") + private volatile java.lang.Object inputSql_ = ""; + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + @java.lang.Override + public boolean hasInputSql() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return The inputSql. + */ + @java.lang.Override + public java.lang.String getInputSql() { + java.lang.Object ref = inputSql_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + inputSql_ = s; + return s; + } + } + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getInputSqlBytes() { + java.lang.Object ref = inputSql_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + inputSql_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -386,6 +434,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (((bitField0_ & 0x00000008) != 0)) { output.writeMessage(9, getUpperBound()); } + if (((bitField0_ & 0x00000010) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 10, inputSql_); + } getUnknownFields().writeTo(output); } @@ -432,6 +483,9 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeMessageSize(9, getUpperBound()); } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, inputSql_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -477,6 +531,11 @@ public boolean equals(final java.lang.Object obj) { if (!getUpperBound() .equals(other.getUpperBound())) return false; } + if (hasInputSql() != other.hasInputSql()) return false; + if (hasInputSql()) { + if (!getInputSql() + .equals(other.getInputSql())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -518,6 +577,10 @@ public int hashCode() { hash = (37 * hash) + UPPER_BOUND_FIELD_NUMBER; hash = (53 * hash) + getUpperBound().hashCode(); } + if (hasInputSql()) { + hash = (37 * hash) + INPUT_SQL_FIELD_NUMBER; + hash = (53 * hash) + getInputSql().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -691,6 +754,7 @@ public Builder clear() { upperBoundBuilder_.dispose(); upperBoundBuilder_ = null; } + inputSql_ = ""; return this; } @@ -775,6 +839,10 @@ private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfill : upperBoundBuilder_.build(); to_bitField0_ |= 0x00000008; } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.inputSql_ = inputSql_; + to_bitField0_ |= 0x00000010; + } result.bitField0_ |= to_bitField0_; } @@ -885,6 +953,11 @@ public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfill ot if (other.hasUpperBound()) { mergeUpperBound(other.getUpperBound()); } + if (other.hasInputSql()) { + inputSql_ = other.inputSql_; + bitField0_ |= 0x00000200; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -973,6 +1046,11 @@ public Builder mergeFrom( bitField0_ |= 0x00000100; break; } // case 74 + case 82: { + inputSql_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000200; + break; + } // case 82 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -2040,6 +2118,85 @@ public com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder() { } return upperBoundBuilder_; } + + private java.lang.Object inputSql_ = ""; + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + public boolean hasInputSql() { + return ((bitField0_ & 0x00000200) != 0); + } + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return The inputSql. + */ + public java.lang.String getInputSql() { + java.lang.Object ref = inputSql_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + inputSql_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + public com.google.protobuf.ByteString + getInputSqlBytes() { + java.lang.Object ref = inputSql_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + inputSql_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @param value The inputSql to set. + * @return This builder for chaining. + */ + public Builder setInputSql( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + inputSql_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return This builder for chaining. + */ + public Builder clearInputSql() { + inputSql_ = getDefaultInstance().getInputSql(); + bitField0_ = (bitField0_ & ~0x00000200); + onChanged(); + return this; + } + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @param value The bytes for inputSql to set. + * @return This builder for chaining. + */ + public Builder setInputSqlBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + inputSql_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillJob.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillJob.java index 1cbbacca..7dbcd48f 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillJob.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillJob.java @@ -26,6 +26,12 @@ private AggregateBackfillJob() { deploymentId_ = ""; resolvers_ = com.google.protobuf.LazyStringArrayList.emptyList(); + cronAggregateBackfillId_ = ""; + planHash_ = ""; + status_ = 0; + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + cronAggregateBackfillName_ = ""; } @java.lang.Override @@ -394,6 +400,202 @@ public java.lang.String getResolvers(int index) { return resolvers_.getByteString(index); } + public static final int CRON_AGGREGATE_BACKFILL_ID_FIELD_NUMBER = 10; + @SuppressWarnings("serial") + private volatile java.lang.Object cronAggregateBackfillId_ = ""; + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return Whether the cronAggregateBackfillId field is set. + */ + @java.lang.Override + public boolean hasCronAggregateBackfillId() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return The cronAggregateBackfillId. + */ + @java.lang.Override + public java.lang.String getCronAggregateBackfillId() { + java.lang.Object ref = cronAggregateBackfillId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + cronAggregateBackfillId_ = s; + return s; + } + } + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return The bytes for cronAggregateBackfillId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getCronAggregateBackfillIdBytes() { + java.lang.Object ref = cronAggregateBackfillId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + cronAggregateBackfillId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PLAN_HASH_FIELD_NUMBER = 11; + @SuppressWarnings("serial") + private volatile java.lang.Object planHash_ = ""; + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return Whether the planHash field is set. + */ + @java.lang.Override + public boolean hasPlanHash() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return The planHash. + */ + @java.lang.Override + public java.lang.String getPlanHash() { + java.lang.Object ref = planHash_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + planHash_ = s; + return s; + } + } + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getPlanHashBytes() { + java.lang.Object ref = planHash_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + planHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int STATUS_FIELD_NUMBER = 12; + private int status_ = 0; + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @return The enum numeric value on the wire for status. + */ + @java.lang.Override public int getStatusValue() { + return status_; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @return The status. + */ + @java.lang.Override public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus getStatus() { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.forNumber(status_); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.UNRECOGNIZED : result; + } + + public static final int QUERY_TAGS_FIELD_NUMBER = 13; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + public com.google.protobuf.ProtocolStringList + getQueryTagsList() { + return queryTags_; + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + public int getQueryTagsCount() { + return queryTags_.size(); + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + public java.lang.String getQueryTags(int index) { + return queryTags_.get(index); + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + public com.google.protobuf.ByteString + getQueryTagsBytes(int index) { + return queryTags_.getByteString(index); + } + + public static final int CRON_AGGREGATE_BACKFILL_NAME_FIELD_NUMBER = 14; + @SuppressWarnings("serial") + private volatile java.lang.Object cronAggregateBackfillName_ = ""; + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return Whether the cronAggregateBackfillName field is set. + */ + @java.lang.Override + public boolean hasCronAggregateBackfillName() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return The cronAggregateBackfillName. + */ + @java.lang.Override + public java.lang.String getCronAggregateBackfillName() { + java.lang.Object ref = cronAggregateBackfillName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + cronAggregateBackfillName_ = s; + return s; + } + } + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return The bytes for cronAggregateBackfillName. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getCronAggregateBackfillNameBytes() { + java.lang.Object ref = cronAggregateBackfillName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + cronAggregateBackfillName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -435,6 +637,21 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) for (int i = 0; i < resolvers_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 9, resolvers_.getRaw(i)); } + if (((bitField0_ & 0x00000020) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 10, cronAggregateBackfillId_); + } + if (((bitField0_ & 0x00000040) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 11, planHash_); + } + if (status_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.AGGREGATE_BACKFILL_STATUS_UNSPECIFIED.getNumber()) { + output.writeEnum(12, status_); + } + for (int i = 0; i < queryTags_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 13, queryTags_.getRaw(i)); + } + if (((bitField0_ & 0x00000080) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 14, cronAggregateBackfillName_); + } getUnknownFields().writeTo(output); } @@ -483,6 +700,27 @@ public int getSerializedSize() { size += dataSize; size += 1 * getResolversList().size(); } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, cronAggregateBackfillId_); + } + if (((bitField0_ & 0x00000040) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, planHash_); + } + if (status_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.AGGREGATE_BACKFILL_STATUS_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(12, status_); + } + { + int dataSize = 0; + for (int i = 0; i < queryTags_.size(); i++) { + dataSize += computeStringSizeNoTag(queryTags_.getRaw(i)); + } + size += dataSize; + size += 1 * getQueryTagsList().size(); + } + if (((bitField0_ & 0x00000080) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, cronAggregateBackfillName_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -531,6 +769,24 @@ public boolean equals(final java.lang.Object obj) { } if (!getResolversList() .equals(other.getResolversList())) return false; + if (hasCronAggregateBackfillId() != other.hasCronAggregateBackfillId()) return false; + if (hasCronAggregateBackfillId()) { + if (!getCronAggregateBackfillId() + .equals(other.getCronAggregateBackfillId())) return false; + } + if (hasPlanHash() != other.hasPlanHash()) return false; + if (hasPlanHash()) { + if (!getPlanHash() + .equals(other.getPlanHash())) return false; + } + if (status_ != other.status_) return false; + if (!getQueryTagsList() + .equals(other.getQueryTagsList())) return false; + if (hasCronAggregateBackfillName() != other.hasCronAggregateBackfillName()) return false; + if (hasCronAggregateBackfillName()) { + if (!getCronAggregateBackfillName() + .equals(other.getCronAggregateBackfillName())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -574,6 +830,24 @@ public int hashCode() { hash = (37 * hash) + RESOLVERS_FIELD_NUMBER; hash = (53 * hash) + getResolversList().hashCode(); } + if (hasCronAggregateBackfillId()) { + hash = (37 * hash) + CRON_AGGREGATE_BACKFILL_ID_FIELD_NUMBER; + hash = (53 * hash) + getCronAggregateBackfillId().hashCode(); + } + if (hasPlanHash()) { + hash = (37 * hash) + PLAN_HASH_FIELD_NUMBER; + hash = (53 * hash) + getPlanHash().hashCode(); + } + hash = (37 * hash) + STATUS_FIELD_NUMBER; + hash = (53 * hash) + status_; + if (getQueryTagsCount() > 0) { + hash = (37 * hash) + QUERY_TAGS_FIELD_NUMBER; + hash = (53 * hash) + getQueryTagsList().hashCode(); + } + if (hasCronAggregateBackfillName()) { + hash = (37 * hash) + CRON_AGGREGATE_BACKFILL_NAME_FIELD_NUMBER; + hash = (53 * hash) + getCronAggregateBackfillName().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -731,6 +1005,12 @@ public Builder clear() { } resolvers_ = com.google.protobuf.LazyStringArrayList.emptyList(); + cronAggregateBackfillId_ = ""; + planHash_ = ""; + status_ = 0; + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + cronAggregateBackfillName_ = ""; return this; } @@ -803,6 +1083,25 @@ private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJ resolvers_.makeImmutable(); result.resolvers_ = resolvers_; } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.cronAggregateBackfillId_ = cronAggregateBackfillId_; + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.planHash_ = planHash_; + to_bitField0_ |= 0x00000040; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.status_ = status_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + queryTags_.makeImmutable(); + result.queryTags_ = queryTags_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.cronAggregateBackfillName_ = cronAggregateBackfillName_; + to_bitField0_ |= 0x00000080; + } result.bitField0_ |= to_bitField0_; } @@ -901,6 +1200,34 @@ public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob } onChanged(); } + if (other.hasCronAggregateBackfillId()) { + cronAggregateBackfillId_ = other.cronAggregateBackfillId_; + bitField0_ |= 0x00000200; + onChanged(); + } + if (other.hasPlanHash()) { + planHash_ = other.planHash_; + bitField0_ |= 0x00000400; + onChanged(); + } + if (other.status_ != 0) { + setStatusValue(other.getStatusValue()); + } + if (!other.queryTags_.isEmpty()) { + if (queryTags_.isEmpty()) { + queryTags_ = other.queryTags_; + bitField0_ |= 0x00001000; + } else { + ensureQueryTagsIsMutable(); + queryTags_.addAll(other.queryTags_); + } + onChanged(); + } + if (other.hasCronAggregateBackfillName()) { + cronAggregateBackfillName_ = other.cronAggregateBackfillName_; + bitField0_ |= 0x00002000; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -978,6 +1305,32 @@ public Builder mergeFrom( resolvers_.add(s); break; } // case 74 + case 82: { + cronAggregateBackfillId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000200; + break; + } // case 82 + case 90: { + planHash_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000400; + break; + } // case 90 + case 96: { + status_ = input.readEnum(); + bitField0_ |= 0x00000800; + break; + } // case 96 + case 106: { + java.lang.String s = input.readStringRequireUtf8(); + ensureQueryTagsIsMutable(); + queryTags_.add(s); + break; + } // case 106 + case 114: { + cronAggregateBackfillName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00002000; + break; + } // case 114 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -1839,6 +2192,407 @@ public Builder addResolversBytes( onChanged(); return this; } + + private java.lang.Object cronAggregateBackfillId_ = ""; + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return Whether the cronAggregateBackfillId field is set. + */ + public boolean hasCronAggregateBackfillId() { + return ((bitField0_ & 0x00000200) != 0); + } + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return The cronAggregateBackfillId. + */ + public java.lang.String getCronAggregateBackfillId() { + java.lang.Object ref = cronAggregateBackfillId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + cronAggregateBackfillId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return The bytes for cronAggregateBackfillId. + */ + public com.google.protobuf.ByteString + getCronAggregateBackfillIdBytes() { + java.lang.Object ref = cronAggregateBackfillId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + cronAggregateBackfillId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @param value The cronAggregateBackfillId to set. + * @return This builder for chaining. + */ + public Builder setCronAggregateBackfillId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + cronAggregateBackfillId_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return This builder for chaining. + */ + public Builder clearCronAggregateBackfillId() { + cronAggregateBackfillId_ = getDefaultInstance().getCronAggregateBackfillId(); + bitField0_ = (bitField0_ & ~0x00000200); + onChanged(); + return this; + } + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @param value The bytes for cronAggregateBackfillId to set. + * @return This builder for chaining. + */ + public Builder setCronAggregateBackfillIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + cronAggregateBackfillId_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + + private java.lang.Object planHash_ = ""; + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return Whether the planHash field is set. + */ + public boolean hasPlanHash() { + return ((bitField0_ & 0x00000400) != 0); + } + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return The planHash. + */ + public java.lang.String getPlanHash() { + java.lang.Object ref = planHash_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + planHash_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + public com.google.protobuf.ByteString + getPlanHashBytes() { + java.lang.Object ref = planHash_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + planHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @param value The planHash to set. + * @return This builder for chaining. + */ + public Builder setPlanHash( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + planHash_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return This builder for chaining. + */ + public Builder clearPlanHash() { + planHash_ = getDefaultInstance().getPlanHash(); + bitField0_ = (bitField0_ & ~0x00000400); + onChanged(); + return this; + } + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @param value The bytes for planHash to set. + * @return This builder for chaining. + */ + public Builder setPlanHashBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + planHash_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + + private int status_ = 0; + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @return The enum numeric value on the wire for status. + */ + @java.lang.Override public int getStatusValue() { + return status_; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @param value The enum numeric value on the wire for status to set. + * @return This builder for chaining. + */ + public Builder setStatusValue(int value) { + status_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @return The status. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus getStatus() { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.forNumber(status_); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.UNRECOGNIZED : result; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @param value The status to set. + * @return This builder for chaining. + */ + public Builder setStatus(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000800; + status_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @return This builder for chaining. + */ + public Builder clearStatus() { + bitField0_ = (bitField0_ & ~0x00000800); + status_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureQueryTagsIsMutable() { + if (!queryTags_.isModifiable()) { + queryTags_ = new com.google.protobuf.LazyStringArrayList(queryTags_); + } + bitField0_ |= 0x00001000; + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + public com.google.protobuf.ProtocolStringList + getQueryTagsList() { + queryTags_.makeImmutable(); + return queryTags_; + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + public int getQueryTagsCount() { + return queryTags_.size(); + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + public java.lang.String getQueryTags(int index) { + return queryTags_.get(index); + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + public com.google.protobuf.ByteString + getQueryTagsBytes(int index) { + return queryTags_.getByteString(index); + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param index The index to set the value at. + * @param value The queryTags to set. + * @return This builder for chaining. + */ + public Builder setQueryTags( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureQueryTagsIsMutable(); + queryTags_.set(index, value); + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param value The queryTags to add. + * @return This builder for chaining. + */ + public Builder addQueryTags( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureQueryTagsIsMutable(); + queryTags_.add(value); + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param values The queryTags to add. + * @return This builder for chaining. + */ + public Builder addAllQueryTags( + java.lang.Iterable values) { + ensureQueryTagsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, queryTags_); + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @return This builder for chaining. + */ + public Builder clearQueryTags() { + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00001000);; + onChanged(); + return this; + } + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param value The bytes of the queryTags to add. + * @return This builder for chaining. + */ + public Builder addQueryTagsBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureQueryTagsIsMutable(); + queryTags_.add(value); + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + + private java.lang.Object cronAggregateBackfillName_ = ""; + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return Whether the cronAggregateBackfillName field is set. + */ + public boolean hasCronAggregateBackfillName() { + return ((bitField0_ & 0x00002000) != 0); + } + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return The cronAggregateBackfillName. + */ + public java.lang.String getCronAggregateBackfillName() { + java.lang.Object ref = cronAggregateBackfillName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + cronAggregateBackfillName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return The bytes for cronAggregateBackfillName. + */ + public com.google.protobuf.ByteString + getCronAggregateBackfillNameBytes() { + java.lang.Object ref = cronAggregateBackfillName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + cronAggregateBackfillName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @param value The cronAggregateBackfillName to set. + * @return This builder for chaining. + */ + public Builder setCronAggregateBackfillName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + cronAggregateBackfillName_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return This builder for chaining. + */ + public Builder clearCronAggregateBackfillName() { + cronAggregateBackfillName_ = getDefaultInstance().getCronAggregateBackfillName(); + bitField0_ = (bitField0_ & ~0x00002000); + onChanged(); + return this; + } + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @param value The bytes for cronAggregateBackfillName to set. + * @return This builder for chaining. + */ + public Builder setCronAggregateBackfillNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + cronAggregateBackfillName_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillJobOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillJobOrBuilder.java index 57b79383..04b2c2ed 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillJobOrBuilder.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillJobOrBuilder.java @@ -162,4 +162,91 @@ public interface AggregateBackfillJobOrBuilder extends */ com.google.protobuf.ByteString getResolversBytes(int index); + + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return Whether the cronAggregateBackfillId field is set. + */ + boolean hasCronAggregateBackfillId(); + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return The cronAggregateBackfillId. + */ + java.lang.String getCronAggregateBackfillId(); + /** + * optional string cron_aggregate_backfill_id = 10 [json_name = "cronAggregateBackfillId"]; + * @return The bytes for cronAggregateBackfillId. + */ + com.google.protobuf.ByteString + getCronAggregateBackfillIdBytes(); + + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return Whether the planHash field is set. + */ + boolean hasPlanHash(); + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return The planHash. + */ + java.lang.String getPlanHash(); + /** + * optional string plan_hash = 11 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + com.google.protobuf.ByteString + getPlanHashBytes(); + + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @return The enum numeric value on the wire for status. + */ + int getStatusValue(); + /** + * .chalk.aggregate.v1.AggregateBackfillStatus status = 12 [json_name = "status"]; + * @return The status. + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus getStatus(); + + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + java.util.List + getQueryTagsList(); + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + int getQueryTagsCount(); + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + java.lang.String getQueryTags(int index); + /** + * repeated string query_tags = 13 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + com.google.protobuf.ByteString + getQueryTagsBytes(int index); + + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return Whether the cronAggregateBackfillName field is set. + */ + boolean hasCronAggregateBackfillName(); + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return The cronAggregateBackfillName. + */ + java.lang.String getCronAggregateBackfillName(); + /** + * optional string cron_aggregate_backfill_name = 14 [json_name = "cronAggregateBackfillName"]; + * @return The bytes for cronAggregateBackfillName. + */ + com.google.protobuf.ByteString + getCronAggregateBackfillNameBytes(); } diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillMode.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillMode.java new file mode 100644 index 00000000..763f1382 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillMode.java @@ -0,0 +1,143 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + *
+ * Whether CreateAggregateBackfillV2 stops after planning or goes on to create jobs.
+ * 
+ * + * Protobuf enum {@code chalk.aggregate.v1.AggregateBackfillMode} + */ +public enum AggregateBackfillMode + implements com.google.protobuf.ProtocolMessageEnum { + /** + * AGGREGATE_BACKFILL_MODE_UNSPECIFIED = 0; + */ + AGGREGATE_BACKFILL_MODE_UNSPECIFIED(0), + /** + *
+   * Plan only: return sub_backfills and create nothing.
+   * 
+ * + * AGGREGATE_BACKFILL_MODE_PLAN = 1; + */ + AGGREGATE_BACKFILL_MODE_PLAN(1), + /** + *
+   * Plan, then create a job for every sub-backfill.
+   * 
+ * + * AGGREGATE_BACKFILL_MODE_CREATE = 2; + */ + AGGREGATE_BACKFILL_MODE_CREATE(2), + UNRECOGNIZED(-1), + ; + + /** + * AGGREGATE_BACKFILL_MODE_UNSPECIFIED = 0; + */ + public static final int AGGREGATE_BACKFILL_MODE_UNSPECIFIED_VALUE = 0; + /** + *
+   * Plan only: return sub_backfills and create nothing.
+   * 
+ * + * AGGREGATE_BACKFILL_MODE_PLAN = 1; + */ + public static final int AGGREGATE_BACKFILL_MODE_PLAN_VALUE = 1; + /** + *
+   * Plan, then create a job for every sub-backfill.
+   * 
+ * + * AGGREGATE_BACKFILL_MODE_CREATE = 2; + */ + public static final int AGGREGATE_BACKFILL_MODE_CREATE_VALUE = 2; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static AggregateBackfillMode valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static AggregateBackfillMode forNumber(int value) { + switch (value) { + case 0: return AGGREGATE_BACKFILL_MODE_UNSPECIFIED; + case 1: return AGGREGATE_BACKFILL_MODE_PLAN; + case 2: return AGGREGATE_BACKFILL_MODE_CREATE; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + AggregateBackfillMode> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public AggregateBackfillMode findValueByNumber(int number) { + return AggregateBackfillMode.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.getDescriptor().getEnumTypes().get(0); + } + + private static final AggregateBackfillMode[] VALUES = values(); + + public static AggregateBackfillMode valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private AggregateBackfillMode(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:chalk.aggregate.v1.AggregateBackfillMode) +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillOrBuilder.java index 0980e5bc..38ab620b 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillOrBuilder.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillOrBuilder.java @@ -152,4 +152,21 @@ ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesOrBuilder getSeriesOrBuild * .google.protobuf.Timestamp upper_bound = 9 [json_name = "upperBound"]; */ com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder(); + + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + boolean hasInputSql(); + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return The inputSql. + */ + java.lang.String getInputSql(); + /** + * optional string input_sql = 10 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + com.google.protobuf.ByteString + getInputSqlBytes(); } diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillStatus.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillStatus.java new file mode 100644 index 00000000..4e13bc88 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillStatus.java @@ -0,0 +1,185 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/backfill.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf enum {@code chalk.aggregate.v1.AggregateBackfillStatus} + */ +public enum AggregateBackfillStatus + implements com.google.protobuf.ProtocolMessageEnum { + /** + * AGGREGATE_BACKFILL_STATUS_UNSPECIFIED = 0; + */ + AGGREGATE_BACKFILL_STATUS_UNSPECIFIED(0), + /** + * AGGREGATE_BACKFILL_STATUS_INITIALIZING = 1; + */ + AGGREGATE_BACKFILL_STATUS_INITIALIZING(1), + /** + * AGGREGATE_BACKFILL_STATUS_INIT_FAILED = 2; + */ + AGGREGATE_BACKFILL_STATUS_INIT_FAILED(2), + /** + * AGGREGATE_BACKFILL_STATUS_SKIPPED = 3; + */ + AGGREGATE_BACKFILL_STATUS_SKIPPED(3), + /** + *
+   * init completed
+   * 
+ * + * AGGREGATE_BACKFILL_STATUS_QUEUED = 4; + */ + AGGREGATE_BACKFILL_STATUS_QUEUED(4), + /** + * AGGREGATE_BACKFILL_STATUS_WORKING = 5; + */ + AGGREGATE_BACKFILL_STATUS_WORKING(5), + /** + * AGGREGATE_BACKFILL_STATUS_COMPLETED = 6; + */ + AGGREGATE_BACKFILL_STATUS_COMPLETED(6), + /** + * AGGREGATE_BACKFILL_STATUS_FAILED = 7; + */ + AGGREGATE_BACKFILL_STATUS_FAILED(7), + /** + * AGGREGATE_BACKFILL_STATUS_CANCELED = 8; + */ + AGGREGATE_BACKFILL_STATUS_CANCELED(8), + UNRECOGNIZED(-1), + ; + + /** + * AGGREGATE_BACKFILL_STATUS_UNSPECIFIED = 0; + */ + public static final int AGGREGATE_BACKFILL_STATUS_UNSPECIFIED_VALUE = 0; + /** + * AGGREGATE_BACKFILL_STATUS_INITIALIZING = 1; + */ + public static final int AGGREGATE_BACKFILL_STATUS_INITIALIZING_VALUE = 1; + /** + * AGGREGATE_BACKFILL_STATUS_INIT_FAILED = 2; + */ + public static final int AGGREGATE_BACKFILL_STATUS_INIT_FAILED_VALUE = 2; + /** + * AGGREGATE_BACKFILL_STATUS_SKIPPED = 3; + */ + public static final int AGGREGATE_BACKFILL_STATUS_SKIPPED_VALUE = 3; + /** + *
+   * init completed
+   * 
+ * + * AGGREGATE_BACKFILL_STATUS_QUEUED = 4; + */ + public static final int AGGREGATE_BACKFILL_STATUS_QUEUED_VALUE = 4; + /** + * AGGREGATE_BACKFILL_STATUS_WORKING = 5; + */ + public static final int AGGREGATE_BACKFILL_STATUS_WORKING_VALUE = 5; + /** + * AGGREGATE_BACKFILL_STATUS_COMPLETED = 6; + */ + public static final int AGGREGATE_BACKFILL_STATUS_COMPLETED_VALUE = 6; + /** + * AGGREGATE_BACKFILL_STATUS_FAILED = 7; + */ + public static final int AGGREGATE_BACKFILL_STATUS_FAILED_VALUE = 7; + /** + * AGGREGATE_BACKFILL_STATUS_CANCELED = 8; + */ + public static final int AGGREGATE_BACKFILL_STATUS_CANCELED_VALUE = 8; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static AggregateBackfillStatus valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static AggregateBackfillStatus forNumber(int value) { + switch (value) { + case 0: return AGGREGATE_BACKFILL_STATUS_UNSPECIFIED; + case 1: return AGGREGATE_BACKFILL_STATUS_INITIALIZING; + case 2: return AGGREGATE_BACKFILL_STATUS_INIT_FAILED; + case 3: return AGGREGATE_BACKFILL_STATUS_SKIPPED; + case 4: return AGGREGATE_BACKFILL_STATUS_QUEUED; + case 5: return AGGREGATE_BACKFILL_STATUS_WORKING; + case 6: return AGGREGATE_BACKFILL_STATUS_COMPLETED; + case 7: return AGGREGATE_BACKFILL_STATUS_FAILED; + case 8: return AGGREGATE_BACKFILL_STATUS_CANCELED; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + AggregateBackfillStatus> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public AggregateBackfillStatus findValueByNumber(int number) { + return AggregateBackfillStatus.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.BackfillProto.getDescriptor().getEnumTypes().get(0); + } + + private static final AggregateBackfillStatus[] VALUES = values(); + + public static AggregateBackfillStatus valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private AggregateBackfillStatus(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:chalk.aggregate.v1.AggregateBackfillStatus) +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillTarget.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillTarget.java new file mode 100644 index 00000000..d2116351 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillTarget.java @@ -0,0 +1,123 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/backfill.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf enum {@code chalk.aggregate.v1.AggregateBackfillTarget} + */ +public enum AggregateBackfillTarget + implements com.google.protobuf.ProtocolMessageEnum { + /** + * AGGREGATE_BACKFILL_TARGET_UNSPECIFIED = 0; + */ + AGGREGATE_BACKFILL_TARGET_UNSPECIFIED(0), + /** + * AGGREGATE_BACKFILL_TARGET_ONLINE = 1; + */ + AGGREGATE_BACKFILL_TARGET_ONLINE(1), + /** + * AGGREGATE_BACKFILL_TARGET_OFFLINE = 2; + */ + AGGREGATE_BACKFILL_TARGET_OFFLINE(2), + UNRECOGNIZED(-1), + ; + + /** + * AGGREGATE_BACKFILL_TARGET_UNSPECIFIED = 0; + */ + public static final int AGGREGATE_BACKFILL_TARGET_UNSPECIFIED_VALUE = 0; + /** + * AGGREGATE_BACKFILL_TARGET_ONLINE = 1; + */ + public static final int AGGREGATE_BACKFILL_TARGET_ONLINE_VALUE = 1; + /** + * AGGREGATE_BACKFILL_TARGET_OFFLINE = 2; + */ + public static final int AGGREGATE_BACKFILL_TARGET_OFFLINE_VALUE = 2; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static AggregateBackfillTarget valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static AggregateBackfillTarget forNumber(int value) { + switch (value) { + case 0: return AGGREGATE_BACKFILL_TARGET_UNSPECIFIED; + case 1: return AGGREGATE_BACKFILL_TARGET_ONLINE; + case 2: return AGGREGATE_BACKFILL_TARGET_OFFLINE; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + AggregateBackfillTarget> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public AggregateBackfillTarget findValueByNumber(int number) { + return AggregateBackfillTarget.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.BackfillProto.getDescriptor().getEnumTypes().get(1); + } + + private static final AggregateBackfillTarget[] VALUES = values(); + + public static AggregateBackfillTarget valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private AggregateBackfillTarget(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:chalk.aggregate.v1.AggregateBackfillTarget) +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillUserParams.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillUserParams.java index d36d3ffc..3f390217 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillUserParams.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillUserParams.java @@ -21,6 +21,9 @@ private AggregateBackfillUserParams() { com.google.protobuf.LazyStringArrayList.emptyList(); resolver_ = ""; timestampColumnName_ = ""; + tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + inputSql_ = ""; } @java.lang.Override @@ -134,7 +137,7 @@ public java.lang.String getResolver() { /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return Whether the timestampColumnName field is set. */ @java.lang.Override @@ -144,7 +147,7 @@ public java.lang.String getResolver() { /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return The timestampColumnName. */ @java.lang.Override @@ -163,7 +166,7 @@ public java.lang.String getResolver() { /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return The bytes for timestampColumnName. */ @java.lang.Override @@ -244,6 +247,90 @@ public boolean getExact() { return exact_; } + public static final int TAGS_FIELD_NUMBER = 7; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string tags = 7 [json_name = "tags"]; + * @return A list containing the tags. + */ + public com.google.protobuf.ProtocolStringList + getTagsList() { + return tags_; + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @return The count of tags. + */ + public int getTagsCount() { + return tags_.size(); + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param index The index of the element to return. + * @return The tags at the given index. + */ + public java.lang.String getTags(int index) { + return tags_.get(index); + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + public com.google.protobuf.ByteString + getTagsBytes(int index) { + return tags_.getByteString(index); + } + + public static final int INPUT_SQL_FIELD_NUMBER = 8; + @SuppressWarnings("serial") + private volatile java.lang.Object inputSql_ = ""; + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + @java.lang.Override + public boolean hasInputSql() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return The inputSql. + */ + @java.lang.Override + public java.lang.String getInputSql() { + java.lang.Object ref = inputSql_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + inputSql_ = s; + return s; + } + } + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getInputSqlBytes() { + java.lang.Object ref = inputSql_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + inputSql_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -276,6 +363,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (exact_ != false) { output.writeBool(6, exact_); } + for (int i = 0; i < tags_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 7, tags_.getRaw(i)); + } + if (((bitField0_ & 0x00000010) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 8, inputSql_); + } getUnknownFields().writeTo(output); } @@ -311,6 +404,17 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBoolSize(6, exact_); } + { + int dataSize = 0; + for (int i = 0; i < tags_.size(); i++) { + dataSize += computeStringSizeNoTag(tags_.getRaw(i)); + } + size += dataSize; + size += 1 * getTagsList().size(); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, inputSql_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -350,6 +454,13 @@ public boolean equals(final java.lang.Object obj) { } if (getExact() != other.getExact()) return false; + if (!getTagsList() + .equals(other.getTagsList())) return false; + if (hasInputSql() != other.hasInputSql()) return false; + if (hasInputSql()) { + if (!getInputSql() + .equals(other.getInputSql())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -384,6 +495,14 @@ public int hashCode() { hash = (37 * hash) + EXACT_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getExact()); + if (getTagsCount() > 0) { + hash = (37 * hash) + TAGS_FIELD_NUMBER; + hash = (53 * hash) + getTagsList().hashCode(); + } + if (hasInputSql()) { + hash = (37 * hash) + INPUT_SQL_FIELD_NUMBER; + hash = (53 * hash) + getInputSql().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -537,6 +656,9 @@ public Builder clear() { upperBoundBuilder_ = null; } exact_ = false; + tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + inputSql_ = ""; return this; } @@ -598,6 +720,14 @@ private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillU if (((from_bitField0_ & 0x00000020) != 0)) { result.exact_ = exact_; } + if (((from_bitField0_ & 0x00000040) != 0)) { + tags_.makeImmutable(); + result.tags_ = tags_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.inputSql_ = inputSql_; + to_bitField0_ |= 0x00000010; + } result.bitField0_ |= to_bitField0_; } @@ -674,6 +804,21 @@ public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillUse if (other.getExact() != false) { setExact(other.getExact()); } + if (!other.tags_.isEmpty()) { + if (tags_.isEmpty()) { + tags_ = other.tags_; + bitField0_ |= 0x00000040; + } else { + ensureTagsIsMutable(); + tags_.addAll(other.tags_); + } + onChanged(); + } + if (other.hasInputSql()) { + inputSql_ = other.inputSql_; + bitField0_ |= 0x00000080; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -735,6 +880,17 @@ public Builder mergeFrom( bitField0_ |= 0x00000020; break; } // case 48 + case 58: { + java.lang.String s = input.readStringRequireUtf8(); + ensureTagsIsMutable(); + tags_.add(s); + break; + } // case 58 + case 66: { + inputSql_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000080; + break; + } // case 66 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -946,7 +1102,7 @@ public Builder setResolverBytes( /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return Whether the timestampColumnName field is set. */ @java.lang.Deprecated public boolean hasTimestampColumnName() { @@ -955,7 +1111,7 @@ public Builder setResolverBytes( /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return The timestampColumnName. */ @java.lang.Deprecated public java.lang.String getTimestampColumnName() { @@ -973,7 +1129,7 @@ public Builder setResolverBytes( /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return The bytes for timestampColumnName. */ @java.lang.Deprecated public com.google.protobuf.ByteString @@ -992,7 +1148,7 @@ public Builder setResolverBytes( /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @param value The timestampColumnName to set. * @return This builder for chaining. */ @@ -1007,7 +1163,7 @@ public Builder setResolverBytes( /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return This builder for chaining. */ @java.lang.Deprecated public Builder clearTimestampColumnName() { @@ -1019,7 +1175,7 @@ public Builder setResolverBytes( /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @param value The bytes for timestampColumnName to set. * @return This builder for chaining. */ @@ -1306,6 +1462,196 @@ public Builder clearExact() { onChanged(); return this; } + + private com.google.protobuf.LazyStringArrayList tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureTagsIsMutable() { + if (!tags_.isModifiable()) { + tags_ = new com.google.protobuf.LazyStringArrayList(tags_); + } + bitField0_ |= 0x00000040; + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @return A list containing the tags. + */ + public com.google.protobuf.ProtocolStringList + getTagsList() { + tags_.makeImmutable(); + return tags_; + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @return The count of tags. + */ + public int getTagsCount() { + return tags_.size(); + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param index The index of the element to return. + * @return The tags at the given index. + */ + public java.lang.String getTags(int index) { + return tags_.get(index); + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + public com.google.protobuf.ByteString + getTagsBytes(int index) { + return tags_.getByteString(index); + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param index The index to set the value at. + * @param value The tags to set. + * @return This builder for chaining. + */ + public Builder setTags( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureTagsIsMutable(); + tags_.set(index, value); + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param value The tags to add. + * @return This builder for chaining. + */ + public Builder addTags( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureTagsIsMutable(); + tags_.add(value); + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param values The tags to add. + * @return This builder for chaining. + */ + public Builder addAllTags( + java.lang.Iterable values) { + ensureTagsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, tags_); + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @return This builder for chaining. + */ + public Builder clearTags() { + tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000040);; + onChanged(); + return this; + } + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param value The bytes of the tags to add. + * @return This builder for chaining. + */ + public Builder addTagsBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureTagsIsMutable(); + tags_.add(value); + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + private java.lang.Object inputSql_ = ""; + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + public boolean hasInputSql() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return The inputSql. + */ + public java.lang.String getInputSql() { + java.lang.Object ref = inputSql_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + inputSql_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + public com.google.protobuf.ByteString + getInputSqlBytes() { + java.lang.Object ref = inputSql_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + inputSql_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @param value The inputSql to set. + * @return This builder for chaining. + */ + public Builder setInputSql( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + inputSql_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return This builder for chaining. + */ + public Builder clearInputSql() { + inputSql_ = getDefaultInstance().getInputSql(); + bitField0_ = (bitField0_ & ~0x00000080); + onChanged(); + return this; + } + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @param value The bytes for inputSql to set. + * @return This builder for chaining. + */ + public Builder setInputSqlBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + inputSql_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillUserParamsOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillUserParamsOrBuilder.java index 73179611..4cdc996c 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillUserParamsOrBuilder.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillUserParamsOrBuilder.java @@ -53,21 +53,21 @@ public interface AggregateBackfillUserParamsOrBuilder extends /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return Whether the timestampColumnName field is set. */ @java.lang.Deprecated boolean hasTimestampColumnName(); /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return The timestampColumnName. */ @java.lang.Deprecated java.lang.String getTimestampColumnName(); /** * optional string timestamp_column_name = 3 [json_name = "timestampColumnName", deprecated = true]; * @deprecated chalk.aggregate.v1.AggregateBackfillUserParams.timestamp_column_name is deprecated. - * See chalk/aggregate/v1/backfill.proto;l=21 + * See chalk/aggregate/v1/backfill.proto;l=35 * @return The bytes for timestampColumnName. */ @java.lang.Deprecated com.google.protobuf.ByteString @@ -108,4 +108,46 @@ public interface AggregateBackfillUserParamsOrBuilder extends * @return The exact. */ boolean getExact(); + + /** + * repeated string tags = 7 [json_name = "tags"]; + * @return A list containing the tags. + */ + java.util.List + getTagsList(); + /** + * repeated string tags = 7 [json_name = "tags"]; + * @return The count of tags. + */ + int getTagsCount(); + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param index The index of the element to return. + * @return The tags at the given index. + */ + java.lang.String getTags(int index); + /** + * repeated string tags = 7 [json_name = "tags"]; + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + com.google.protobuf.ByteString + getTagsBytes(int index); + + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + boolean hasInputSql(); + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return The inputSql. + */ + java.lang.String getInputSql(); + /** + * optional string input_sql = 8 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + com.google.protobuf.ByteString + getInputSqlBytes(); } diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillWithCostEstimate.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillWithCostEstimate.java index f71f6d4c..22d1f973 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillWithCostEstimate.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillWithCostEstimate.java @@ -69,26 +69,30 @@ public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillOrBuilder getBackfill public static final int ESTIMATE_FIELD_NUMBER = 2; private ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate estimate_; /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateBackfillWithCostEstimate.estimate is deprecated. + * See chalk/aggregate/v1/backfill.proto;l=58 * @return Whether the estimate field is set. */ @java.lang.Override - public boolean hasEstimate() { + @java.lang.Deprecated public boolean hasEstimate() { return ((bitField0_ & 0x00000002) != 0); } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateBackfillWithCostEstimate.estimate is deprecated. + * See chalk/aggregate/v1/backfill.proto;l=58 * @return The estimate. */ @java.lang.Override - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate() { return estimate_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.getDefaultInstance() : estimate_; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ @java.lang.Override - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder() { return estimate_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.getDefaultInstance() : estimate_; } @@ -602,17 +606,21 @@ public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillOrBuilder getBackfill private com.google.protobuf.SingleFieldBuilderV3< ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder> estimateBuilder_; /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateBackfillWithCostEstimate.estimate is deprecated. + * See chalk/aggregate/v1/backfill.proto;l=58 * @return Whether the estimate field is set. */ - public boolean hasEstimate() { + @java.lang.Deprecated public boolean hasEstimate() { return ((bitField0_ & 0x00000002) != 0); } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateBackfillWithCostEstimate.estimate is deprecated. + * See chalk/aggregate/v1/backfill.proto;l=58 * @return The estimate. */ - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate() { if (estimateBuilder_ == null) { return estimate_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.getDefaultInstance() : estimate_; } else { @@ -620,9 +628,9 @@ public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstim } } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public Builder setEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate value) { + @java.lang.Deprecated public Builder setEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate value) { if (estimateBuilder_ == null) { if (value == null) { throw new NullPointerException(); @@ -636,9 +644,9 @@ public Builder setEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillC return this; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public Builder setEstimate( + @java.lang.Deprecated public Builder setEstimate( ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder builderForValue) { if (estimateBuilder_ == null) { estimate_ = builderForValue.build(); @@ -650,9 +658,9 @@ public Builder setEstimate( return this; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public Builder mergeEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate value) { + @java.lang.Deprecated public Builder mergeEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate value) { if (estimateBuilder_ == null) { if (((bitField0_ & 0x00000002) != 0) && estimate_ != null && @@ -671,9 +679,9 @@ public Builder mergeEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfil return this; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public Builder clearEstimate() { + @java.lang.Deprecated public Builder clearEstimate() { bitField0_ = (bitField0_ & ~0x00000002); estimate_ = null; if (estimateBuilder_ != null) { @@ -684,17 +692,17 @@ public Builder clearEstimate() { return this; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder getEstimateBuilder() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder getEstimateBuilder() { bitField0_ |= 0x00000002; onChanged(); return getEstimateFieldBuilder().getBuilder(); } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder() { if (estimateBuilder_ != null) { return estimateBuilder_.getMessageOrBuilder(); } else { @@ -703,7 +711,7 @@ public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder } } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ private com.google.protobuf.SingleFieldBuilderV3< ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder> diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillWithCostEstimateOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillWithCostEstimateOrBuilder.java index f1ddd308..70225b9e 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillWithCostEstimateOrBuilder.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateBackfillWithCostEstimateOrBuilder.java @@ -24,17 +24,21 @@ public interface AggregateBackfillWithCostEstimateOrBuilder extends ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillOrBuilder getBackfillOrBuilder(); /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateBackfillWithCostEstimate.estimate is deprecated. + * See chalk/aggregate/v1/backfill.proto;l=58 * @return Whether the estimate field is set. */ - boolean hasEstimate(); + @java.lang.Deprecated boolean hasEstimate(); /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateBackfillWithCostEstimate.estimate is deprecated. + * See chalk/aggregate/v1/backfill.proto;l=58 * @return The estimate. */ - ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate(); + @java.lang.Deprecated ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate(); /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder(); + @java.lang.Deprecated ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder(); } diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateServiceGrpc.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateServiceGrpc.java index 542bee13..2b7929bb 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateServiceGrpc.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateServiceGrpc.java @@ -143,6 +143,132 @@ ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobResponse> getGetAggreg return getGetAggregateBackfillJobMethod; } + private static volatile io.grpc.MethodDescriptor getGetCronAggregateBackfillMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "GetCronAggregateBackfill", + requestType = ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.class, + responseType = ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor getGetCronAggregateBackfillMethod() { + io.grpc.MethodDescriptor getGetCronAggregateBackfillMethod; + if ((getGetCronAggregateBackfillMethod = AggregateServiceGrpc.getGetCronAggregateBackfillMethod) == null) { + synchronized (AggregateServiceGrpc.class) { + if ((getGetCronAggregateBackfillMethod = AggregateServiceGrpc.getGetCronAggregateBackfillMethod) == null) { + AggregateServiceGrpc.getGetCronAggregateBackfillMethod = getGetCronAggregateBackfillMethod = + io.grpc.MethodDescriptor.newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetCronAggregateBackfill")) + .setSafe(true) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.getDefaultInstance())) + .setSchemaDescriptor(new AggregateServiceMethodDescriptorSupplier("GetCronAggregateBackfill")) + .build(); + } + } + } + return getGetCronAggregateBackfillMethod; + } + + private static volatile io.grpc.MethodDescriptor getGetActiveCronAggregateBackfillsMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "GetActiveCronAggregateBackfills", + requestType = ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.class, + responseType = ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor getGetActiveCronAggregateBackfillsMethod() { + io.grpc.MethodDescriptor getGetActiveCronAggregateBackfillsMethod; + if ((getGetActiveCronAggregateBackfillsMethod = AggregateServiceGrpc.getGetActiveCronAggregateBackfillsMethod) == null) { + synchronized (AggregateServiceGrpc.class) { + if ((getGetActiveCronAggregateBackfillsMethod = AggregateServiceGrpc.getGetActiveCronAggregateBackfillsMethod) == null) { + AggregateServiceGrpc.getGetActiveCronAggregateBackfillsMethod = getGetActiveCronAggregateBackfillsMethod = + io.grpc.MethodDescriptor.newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetActiveCronAggregateBackfills")) + .setSafe(true) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.getDefaultInstance())) + .setSchemaDescriptor(new AggregateServiceMethodDescriptorSupplier("GetActiveCronAggregateBackfills")) + .build(); + } + } + } + return getGetActiveCronAggregateBackfillsMethod; + } + + private static volatile io.grpc.MethodDescriptor getCreateAggregateBackfillJobMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "CreateAggregateBackfillJob", + requestType = ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.class, + responseType = ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor getCreateAggregateBackfillJobMethod() { + io.grpc.MethodDescriptor getCreateAggregateBackfillJobMethod; + if ((getCreateAggregateBackfillJobMethod = AggregateServiceGrpc.getCreateAggregateBackfillJobMethod) == null) { + synchronized (AggregateServiceGrpc.class) { + if ((getCreateAggregateBackfillJobMethod = AggregateServiceGrpc.getCreateAggregateBackfillJobMethod) == null) { + AggregateServiceGrpc.getCreateAggregateBackfillJobMethod = getCreateAggregateBackfillJobMethod = + io.grpc.MethodDescriptor.newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "CreateAggregateBackfillJob")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.getDefaultInstance())) + .setSchemaDescriptor(new AggregateServiceMethodDescriptorSupplier("CreateAggregateBackfillJob")) + .build(); + } + } + } + return getCreateAggregateBackfillJobMethod; + } + + private static volatile io.grpc.MethodDescriptor getCreateAggregateBackfillV2Method; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "CreateAggregateBackfillV2", + requestType = ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.class, + responseType = ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor getCreateAggregateBackfillV2Method() { + io.grpc.MethodDescriptor getCreateAggregateBackfillV2Method; + if ((getCreateAggregateBackfillV2Method = AggregateServiceGrpc.getCreateAggregateBackfillV2Method) == null) { + synchronized (AggregateServiceGrpc.class) { + if ((getCreateAggregateBackfillV2Method = AggregateServiceGrpc.getCreateAggregateBackfillV2Method) == null) { + AggregateServiceGrpc.getCreateAggregateBackfillV2Method = getCreateAggregateBackfillV2Method = + io.grpc.MethodDescriptor.newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "CreateAggregateBackfillV2")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.getDefaultInstance())) + .setSchemaDescriptor(new AggregateServiceMethodDescriptorSupplier("CreateAggregateBackfillV2")) + .build(); + } + } + } + return getCreateAggregateBackfillV2Method; + } + /** * Creates a new async stub that supports all call types for the service */ @@ -232,6 +358,46 @@ default void getAggregateBackfillJob(ai.chalk.protos.chalk.aggregate.v1.GetAggre io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetAggregateBackfillJobMethod(), responseObserver); } + + /** + */ + default void getCronAggregateBackfill(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetCronAggregateBackfillMethod(), responseObserver); + } + + /** + */ + default void getActiveCronAggregateBackfills(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetActiveCronAggregateBackfillsMethod(), responseObserver); + } + + /** + *
+     * Creates one backfill job for a single already-planned sub-backfill, so callers must
+     * plan first and then call this once per planned sub-backfill.
+     * Prefer CreateAggregateBackfillV2, which does the planning and the fan-out server side.
+     * Kept for clients pinned to versions that predate V2.
+     * 
+ */ + default void createAggregateBackfillJob(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getCreateAggregateBackfillJobMethod(), responseObserver); + } + + /** + *
+     * CreateAggregateBackfillV2 plans an aggregate backfill and, unless the request asks for
+     * plan mode, creates the jobs for it. This replaces the client-side
+     * plan-then-create-each-sub-backfill loop that PlanAggregateBackfill plus
+     * CreateAggregateBackfillJob require.
+     * 
+ */ + default void createAggregateBackfillV2(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getCreateAggregateBackfillV2Method(), responseObserver); + } } /** @@ -306,6 +472,50 @@ public void getAggregateBackfillJob(ai.chalk.protos.chalk.aggregate.v1.GetAggreg io.grpc.stub.ClientCalls.asyncUnaryCall( getChannel().newCall(getGetAggregateBackfillJobMethod(), getCallOptions()), request, responseObserver); } + + /** + */ + public void getCronAggregateBackfill(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getGetCronAggregateBackfillMethod(), getCallOptions()), request, responseObserver); + } + + /** + */ + public void getActiveCronAggregateBackfills(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getGetActiveCronAggregateBackfillsMethod(), getCallOptions()), request, responseObserver); + } + + /** + *
+     * Creates one backfill job for a single already-planned sub-backfill, so callers must
+     * plan first and then call this once per planned sub-backfill.
+     * Prefer CreateAggregateBackfillV2, which does the planning and the fan-out server side.
+     * Kept for clients pinned to versions that predate V2.
+     * 
+ */ + public void createAggregateBackfillJob(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getCreateAggregateBackfillJobMethod(), getCallOptions()), request, responseObserver); + } + + /** + *
+     * CreateAggregateBackfillV2 plans an aggregate backfill and, unless the request asks for
+     * plan mode, creates the jobs for it. This replaces the client-side
+     * plan-then-create-each-sub-backfill loop that PlanAggregateBackfill plus
+     * CreateAggregateBackfillJob require.
+     * 
+ */ + public void createAggregateBackfillV2(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getCreateAggregateBackfillV2Method(), getCallOptions()), request, responseObserver); + } } /** @@ -365,6 +575,46 @@ public ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobResponse getAgg return io.grpc.stub.ClientCalls.blockingUnaryCall( getChannel(), getGetAggregateBackfillJobMethod(), getCallOptions(), request); } + + /** + */ + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse getCronAggregateBackfill(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getGetCronAggregateBackfillMethod(), getCallOptions(), request); + } + + /** + */ + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse getActiveCronAggregateBackfills(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getGetActiveCronAggregateBackfillsMethod(), getCallOptions(), request); + } + + /** + *
+     * Creates one backfill job for a single already-planned sub-backfill, so callers must
+     * plan first and then call this once per planned sub-backfill.
+     * Prefer CreateAggregateBackfillV2, which does the planning and the fan-out server side.
+     * Kept for clients pinned to versions that predate V2.
+     * 
+ */ + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse createAggregateBackfillJob(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getCreateAggregateBackfillJobMethod(), getCallOptions(), request); + } + + /** + *
+     * CreateAggregateBackfillV2 plans an aggregate backfill and, unless the request asks for
+     * plan mode, creates the jobs for it. This replaces the client-side
+     * plan-then-create-each-sub-backfill loop that PlanAggregateBackfill plus
+     * CreateAggregateBackfillJob require.
+     * 
+ */ + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response createAggregateBackfillV2(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getCreateAggregateBackfillV2Method(), getCallOptions(), request); + } } /** @@ -428,12 +678,60 @@ public com.google.common.util.concurrent.ListenableFuture getCronAggregateBackfill( + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getGetCronAggregateBackfillMethod(), getCallOptions()), request); + } + + /** + */ + public com.google.common.util.concurrent.ListenableFuture getActiveCronAggregateBackfills( + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getGetActiveCronAggregateBackfillsMethod(), getCallOptions()), request); + } + + /** + *
+     * Creates one backfill job for a single already-planned sub-backfill, so callers must
+     * plan first and then call this once per planned sub-backfill.
+     * Prefer CreateAggregateBackfillV2, which does the planning and the fan-out server side.
+     * Kept for clients pinned to versions that predate V2.
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture createAggregateBackfillJob( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getCreateAggregateBackfillJobMethod(), getCallOptions()), request); + } + + /** + *
+     * CreateAggregateBackfillV2 plans an aggregate backfill and, unless the request asks for
+     * plan mode, creates the jobs for it. This replaces the client-side
+     * plan-then-create-each-sub-backfill loop that PlanAggregateBackfill plus
+     * CreateAggregateBackfillJob require.
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture createAggregateBackfillV2( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getCreateAggregateBackfillV2Method(), getCallOptions()), request); + } } private static final int METHODID_PLAN_AGGREGATE_BACKFILL = 0; private static final int METHODID_GET_AGGREGATES = 1; private static final int METHODID_GET_AGGREGATE_BACKFILL_JOBS = 2; private static final int METHODID_GET_AGGREGATE_BACKFILL_JOB = 3; + private static final int METHODID_GET_CRON_AGGREGATE_BACKFILL = 4; + private static final int METHODID_GET_ACTIVE_CRON_AGGREGATE_BACKFILLS = 5; + private static final int METHODID_CREATE_AGGREGATE_BACKFILL_JOB = 6; + private static final int METHODID_CREATE_AGGREGATE_BACKFILL_V2 = 7; private static final class MethodHandlers implements io.grpc.stub.ServerCalls.UnaryMethod, @@ -468,6 +766,22 @@ public void invoke(Req request, io.grpc.stub.StreamObserver responseObserv serviceImpl.getAggregateBackfillJob((ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobRequest) request, (io.grpc.stub.StreamObserver) responseObserver); break; + case METHODID_GET_CRON_AGGREGATE_BACKFILL: + serviceImpl.getCronAggregateBackfill((ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest) request, + (io.grpc.stub.StreamObserver) responseObserver); + break; + case METHODID_GET_ACTIVE_CRON_AGGREGATE_BACKFILLS: + serviceImpl.getActiveCronAggregateBackfills((ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest) request, + (io.grpc.stub.StreamObserver) responseObserver); + break; + case METHODID_CREATE_AGGREGATE_BACKFILL_JOB: + serviceImpl.createAggregateBackfillJob((ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest) request, + (io.grpc.stub.StreamObserver) responseObserver); + break; + case METHODID_CREATE_AGGREGATE_BACKFILL_V2: + serviceImpl.createAggregateBackfillV2((ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request) request, + (io.grpc.stub.StreamObserver) responseObserver); + break; default: throw new AssertionError(); } @@ -514,6 +828,34 @@ public static final io.grpc.ServerServiceDefinition bindService(AsyncService ser ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobRequest, ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobResponse>( service, METHODID_GET_AGGREGATE_BACKFILL_JOB))) + .addMethod( + getGetCronAggregateBackfillMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest, + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse>( + service, METHODID_GET_CRON_AGGREGATE_BACKFILL))) + .addMethod( + getGetActiveCronAggregateBackfillsMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest, + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse>( + service, METHODID_GET_ACTIVE_CRON_AGGREGATE_BACKFILLS))) + .addMethod( + getCreateAggregateBackfillJobMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest, + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse>( + service, METHODID_CREATE_AGGREGATE_BACKFILL_JOB))) + .addMethod( + getCreateAggregateBackfillV2Method(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request, + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response>( + service, METHODID_CREATE_AGGREGATE_BACKFILL_V2))) .build(); } @@ -566,6 +908,10 @@ public static io.grpc.ServiceDescriptor getServiceDescriptor() { .addMethod(getGetAggregatesMethod()) .addMethod(getGetAggregateBackfillJobsMethod()) .addMethod(getGetAggregateBackfillJobMethod()) + .addMethod(getGetCronAggregateBackfillMethod()) + .addMethod(getGetActiveCronAggregateBackfillsMethod()) + .addMethod(getCreateAggregateBackfillJobMethod()) + .addMethod(getCreateAggregateBackfillV2Method()) .build(); } } diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeries.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeries.java index aaf058cc..9a6cfc80 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeries.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeries.java @@ -24,6 +24,12 @@ private AggregateTimeSeries() { rules_ = java.util.Collections.emptyList(); filtersDescription_ = ""; bucketFeature_ = ""; + aggregateOnFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + filterFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + projectionFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); } @java.lang.Override @@ -89,11 +95,13 @@ public java.lang.String getNamespace() { @SuppressWarnings("serial") private volatile java.lang.Object aggregateOn_ = ""; /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @return The aggregateOn. */ @java.lang.Override - public java.lang.String getAggregateOn() { + @java.lang.Deprecated public java.lang.String getAggregateOn() { java.lang.Object ref = aggregateOn_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; @@ -106,11 +114,13 @@ public java.lang.String getAggregateOn() { } } /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @return The bytes for aggregateOn. */ @java.lang.Override - public com.google.protobuf.ByteString + @java.lang.Deprecated public com.google.protobuf.ByteString getAggregateOnBytes() { java.lang.Object ref = aggregateOn_; if (ref instanceof java.lang.String) { @@ -280,6 +290,149 @@ public java.lang.String getBucketFeature() { } } + public static final int AGGREGATE_ON_FEATURES_FIELD_NUMBER = 8; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList aggregateOnFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @return A list containing the aggregateOnFeatures. + */ + public com.google.protobuf.ProtocolStringList + getAggregateOnFeaturesList() { + return aggregateOnFeatures_; + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @return The count of aggregateOnFeatures. + */ + public int getAggregateOnFeaturesCount() { + return aggregateOnFeatures_.size(); + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param index The index of the element to return. + * @return The aggregateOnFeatures at the given index. + */ + public java.lang.String getAggregateOnFeatures(int index) { + return aggregateOnFeatures_.get(index); + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the aggregateOnFeatures at the given index. + */ + public com.google.protobuf.ByteString + getAggregateOnFeaturesBytes(int index) { + return aggregateOnFeatures_.getByteString(index); + } + + public static final int FILTER_FEATURES_FIELD_NUMBER = 9; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList filterFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + *
+   * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+   * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @return A list containing the filterFeatures. + */ + public com.google.protobuf.ProtocolStringList + getFilterFeaturesList() { + return filterFeatures_; + } + /** + *
+   * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+   * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @return The count of filterFeatures. + */ + public int getFilterFeaturesCount() { + return filterFeatures_.size(); + } + /** + *
+   * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+   * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param index The index of the element to return. + * @return The filterFeatures at the given index. + */ + public java.lang.String getFilterFeatures(int index) { + return filterFeatures_.get(index); + } + /** + *
+   * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+   * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the filterFeatures at the given index. + */ + public com.google.protobuf.ByteString + getFilterFeaturesBytes(int index) { + return filterFeatures_.getByteString(index); + } + + public static final int PROJECTION_FEATURES_FIELD_NUMBER = 10; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList projectionFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + *
+   * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+   * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @return A list containing the projectionFeatures. + */ + public com.google.protobuf.ProtocolStringList + getProjectionFeaturesList() { + return projectionFeatures_; + } + /** + *
+   * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+   * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @return The count of projectionFeatures. + */ + public int getProjectionFeaturesCount() { + return projectionFeatures_.size(); + } + /** + *
+   * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+   * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param index The index of the element to return. + * @return The projectionFeatures at the given index. + */ + public java.lang.String getProjectionFeatures(int index) { + return projectionFeatures_.get(index); + } + /** + *
+   * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+   * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the projectionFeatures at the given index. + */ + public com.google.protobuf.ByteString + getProjectionFeaturesBytes(int index) { + return projectionFeatures_.getByteString(index); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -312,6 +465,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bucketFeature_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, bucketFeature_); } + for (int i = 0; i < aggregateOnFeatures_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 8, aggregateOnFeatures_.getRaw(i)); + } + for (int i = 0; i < filterFeatures_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 9, filterFeatures_.getRaw(i)); + } + for (int i = 0; i < projectionFeatures_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 10, projectionFeatures_.getRaw(i)); + } getUnknownFields().writeTo(output); } @@ -345,6 +507,30 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bucketFeature_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, bucketFeature_); } + { + int dataSize = 0; + for (int i = 0; i < aggregateOnFeatures_.size(); i++) { + dataSize += computeStringSizeNoTag(aggregateOnFeatures_.getRaw(i)); + } + size += dataSize; + size += 1 * getAggregateOnFeaturesList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < filterFeatures_.size(); i++) { + dataSize += computeStringSizeNoTag(filterFeatures_.getRaw(i)); + } + size += dataSize; + size += 1 * getFilterFeaturesList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < projectionFeatures_.size(); i++) { + dataSize += computeStringSizeNoTag(projectionFeatures_.getRaw(i)); + } + size += dataSize; + size += 1 * getProjectionFeaturesList().size(); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -372,6 +558,12 @@ public boolean equals(final java.lang.Object obj) { .equals(other.getFiltersDescription())) return false; if (!getBucketFeature() .equals(other.getBucketFeature())) return false; + if (!getAggregateOnFeaturesList() + .equals(other.getAggregateOnFeaturesList())) return false; + if (!getFilterFeaturesList() + .equals(other.getFilterFeaturesList())) return false; + if (!getProjectionFeaturesList() + .equals(other.getProjectionFeaturesList())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -399,6 +591,18 @@ public int hashCode() { hash = (53 * hash) + getFiltersDescription().hashCode(); hash = (37 * hash) + BUCKET_FEATURE_FIELD_NUMBER; hash = (53 * hash) + getBucketFeature().hashCode(); + if (getAggregateOnFeaturesCount() > 0) { + hash = (37 * hash) + AGGREGATE_ON_FEATURES_FIELD_NUMBER; + hash = (53 * hash) + getAggregateOnFeaturesList().hashCode(); + } + if (getFilterFeaturesCount() > 0) { + hash = (37 * hash) + FILTER_FEATURES_FIELD_NUMBER; + hash = (53 * hash) + getFilterFeaturesList().hashCode(); + } + if (getProjectionFeaturesCount() > 0) { + hash = (37 * hash) + PROJECTION_FEATURES_FIELD_NUMBER; + hash = (53 * hash) + getProjectionFeaturesList().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -543,6 +747,12 @@ public Builder clear() { bitField0_ = (bitField0_ & ~0x00000008); filtersDescription_ = ""; bucketFeature_ = ""; + aggregateOnFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + filterFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + projectionFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); return this; } @@ -605,6 +815,18 @@ private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSerie if (((from_bitField0_ & 0x00000020) != 0)) { result.bucketFeature_ = bucketFeature_; } + if (((from_bitField0_ & 0x00000040) != 0)) { + aggregateOnFeatures_.makeImmutable(); + result.aggregateOnFeatures_ = aggregateOnFeatures_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + filterFeatures_.makeImmutable(); + result.filterFeatures_ = filterFeatures_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + projectionFeatures_.makeImmutable(); + result.projectionFeatures_ = projectionFeatures_; + } } @java.lang.Override @@ -707,6 +929,36 @@ public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries bitField0_ |= 0x00000020; onChanged(); } + if (!other.aggregateOnFeatures_.isEmpty()) { + if (aggregateOnFeatures_.isEmpty()) { + aggregateOnFeatures_ = other.aggregateOnFeatures_; + bitField0_ |= 0x00000040; + } else { + ensureAggregateOnFeaturesIsMutable(); + aggregateOnFeatures_.addAll(other.aggregateOnFeatures_); + } + onChanged(); + } + if (!other.filterFeatures_.isEmpty()) { + if (filterFeatures_.isEmpty()) { + filterFeatures_ = other.filterFeatures_; + bitField0_ |= 0x00000080; + } else { + ensureFilterFeaturesIsMutable(); + filterFeatures_.addAll(other.filterFeatures_); + } + onChanged(); + } + if (!other.projectionFeatures_.isEmpty()) { + if (projectionFeatures_.isEmpty()) { + projectionFeatures_ = other.projectionFeatures_; + bitField0_ |= 0x00000100; + } else { + ensureProjectionFeaturesIsMutable(); + projectionFeatures_.addAll(other.projectionFeatures_); + } + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -772,6 +1024,24 @@ public Builder mergeFrom( bitField0_ |= 0x00000020; break; } // case 58 + case 66: { + java.lang.String s = input.readStringRequireUtf8(); + ensureAggregateOnFeaturesIsMutable(); + aggregateOnFeatures_.add(s); + break; + } // case 66 + case 74: { + java.lang.String s = input.readStringRequireUtf8(); + ensureFilterFeaturesIsMutable(); + filterFeatures_.add(s); + break; + } // case 74 + case 82: { + java.lang.String s = input.readStringRequireUtf8(); + ensureProjectionFeaturesIsMutable(); + projectionFeatures_.add(s); + break; + } // case 82 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -863,10 +1133,12 @@ public Builder setNamespaceBytes( private java.lang.Object aggregateOn_ = ""; /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @return The aggregateOn. */ - public java.lang.String getAggregateOn() { + @java.lang.Deprecated public java.lang.String getAggregateOn() { java.lang.Object ref = aggregateOn_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = @@ -879,10 +1151,12 @@ public java.lang.String getAggregateOn() { } } /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @return The bytes for aggregateOn. */ - public com.google.protobuf.ByteString + @java.lang.Deprecated public com.google.protobuf.ByteString getAggregateOnBytes() { java.lang.Object ref = aggregateOn_; if (ref instanceof String) { @@ -896,11 +1170,13 @@ public java.lang.String getAggregateOn() { } } /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @param value The aggregateOn to set. * @return This builder for chaining. */ - public Builder setAggregateOn( + @java.lang.Deprecated public Builder setAggregateOn( java.lang.String value) { if (value == null) { throw new NullPointerException(); } aggregateOn_ = value; @@ -909,21 +1185,25 @@ public Builder setAggregateOn( return this; } /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @return This builder for chaining. */ - public Builder clearAggregateOn() { + @java.lang.Deprecated public Builder clearAggregateOn() { aggregateOn_ = getDefaultInstance().getAggregateOn(); bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @param value The bytes for aggregateOn to set. * @return This builder for chaining. */ - public Builder setAggregateOnBytes( + @java.lang.Deprecated public Builder setAggregateOnBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); @@ -1427,6 +1707,411 @@ public Builder setBucketFeatureBytes( onChanged(); return this; } + + private com.google.protobuf.LazyStringArrayList aggregateOnFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureAggregateOnFeaturesIsMutable() { + if (!aggregateOnFeatures_.isModifiable()) { + aggregateOnFeatures_ = new com.google.protobuf.LazyStringArrayList(aggregateOnFeatures_); + } + bitField0_ |= 0x00000040; + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @return A list containing the aggregateOnFeatures. + */ + public com.google.protobuf.ProtocolStringList + getAggregateOnFeaturesList() { + aggregateOnFeatures_.makeImmutable(); + return aggregateOnFeatures_; + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @return The count of aggregateOnFeatures. + */ + public int getAggregateOnFeaturesCount() { + return aggregateOnFeatures_.size(); + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param index The index of the element to return. + * @return The aggregateOnFeatures at the given index. + */ + public java.lang.String getAggregateOnFeatures(int index) { + return aggregateOnFeatures_.get(index); + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the aggregateOnFeatures at the given index. + */ + public com.google.protobuf.ByteString + getAggregateOnFeaturesBytes(int index) { + return aggregateOnFeatures_.getByteString(index); + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param index The index to set the value at. + * @param value The aggregateOnFeatures to set. + * @return This builder for chaining. + */ + public Builder setAggregateOnFeatures( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureAggregateOnFeaturesIsMutable(); + aggregateOnFeatures_.set(index, value); + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param value The aggregateOnFeatures to add. + * @return This builder for chaining. + */ + public Builder addAggregateOnFeatures( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureAggregateOnFeaturesIsMutable(); + aggregateOnFeatures_.add(value); + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param values The aggregateOnFeatures to add. + * @return This builder for chaining. + */ + public Builder addAllAggregateOnFeatures( + java.lang.Iterable values) { + ensureAggregateOnFeaturesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, aggregateOnFeatures_); + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @return This builder for chaining. + */ + public Builder clearAggregateOnFeatures() { + aggregateOnFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000040);; + onChanged(); + return this; + } + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param value The bytes of the aggregateOnFeatures to add. + * @return This builder for chaining. + */ + public Builder addAggregateOnFeaturesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureAggregateOnFeaturesIsMutable(); + aggregateOnFeatures_.add(value); + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList filterFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureFilterFeaturesIsMutable() { + if (!filterFeatures_.isModifiable()) { + filterFeatures_ = new com.google.protobuf.LazyStringArrayList(filterFeatures_); + } + bitField0_ |= 0x00000080; + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @return A list containing the filterFeatures. + */ + public com.google.protobuf.ProtocolStringList + getFilterFeaturesList() { + filterFeatures_.makeImmutable(); + return filterFeatures_; + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @return The count of filterFeatures. + */ + public int getFilterFeaturesCount() { + return filterFeatures_.size(); + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param index The index of the element to return. + * @return The filterFeatures at the given index. + */ + public java.lang.String getFilterFeatures(int index) { + return filterFeatures_.get(index); + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the filterFeatures at the given index. + */ + public com.google.protobuf.ByteString + getFilterFeaturesBytes(int index) { + return filterFeatures_.getByteString(index); + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param index The index to set the value at. + * @param value The filterFeatures to set. + * @return This builder for chaining. + */ + public Builder setFilterFeatures( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFilterFeaturesIsMutable(); + filterFeatures_.set(index, value); + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param value The filterFeatures to add. + * @return This builder for chaining. + */ + public Builder addFilterFeatures( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFilterFeaturesIsMutable(); + filterFeatures_.add(value); + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param values The filterFeatures to add. + * @return This builder for chaining. + */ + public Builder addAllFilterFeatures( + java.lang.Iterable values) { + ensureFilterFeaturesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, filterFeatures_); + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @return This builder for chaining. + */ + public Builder clearFilterFeatures() { + filterFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000080);; + onChanged(); + return this; + } + /** + *
+     * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+     * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param value The bytes of the filterFeatures to add. + * @return This builder for chaining. + */ + public Builder addFilterFeaturesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureFilterFeaturesIsMutable(); + filterFeatures_.add(value); + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList projectionFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureProjectionFeaturesIsMutable() { + if (!projectionFeatures_.isModifiable()) { + projectionFeatures_ = new com.google.protobuf.LazyStringArrayList(projectionFeatures_); + } + bitField0_ |= 0x00000100; + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @return A list containing the projectionFeatures. + */ + public com.google.protobuf.ProtocolStringList + getProjectionFeaturesList() { + projectionFeatures_.makeImmutable(); + return projectionFeatures_; + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @return The count of projectionFeatures. + */ + public int getProjectionFeaturesCount() { + return projectionFeatures_.size(); + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param index The index of the element to return. + * @return The projectionFeatures at the given index. + */ + public java.lang.String getProjectionFeatures(int index) { + return projectionFeatures_.get(index); + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the projectionFeatures at the given index. + */ + public com.google.protobuf.ByteString + getProjectionFeaturesBytes(int index) { + return projectionFeatures_.getByteString(index); + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param index The index to set the value at. + * @param value The projectionFeatures to set. + * @return This builder for chaining. + */ + public Builder setProjectionFeatures( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureProjectionFeaturesIsMutable(); + projectionFeatures_.set(index, value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param value The projectionFeatures to add. + * @return This builder for chaining. + */ + public Builder addProjectionFeatures( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureProjectionFeaturesIsMutable(); + projectionFeatures_.add(value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param values The projectionFeatures to add. + * @return This builder for chaining. + */ + public Builder addAllProjectionFeatures( + java.lang.Iterable values) { + ensureProjectionFeaturesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, projectionFeatures_); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @return This builder for chaining. + */ + public Builder clearProjectionFeatures() { + projectionFeatures_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000100);; + onChanged(); + return this; + } + /** + *
+     * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+     * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param value The bytes of the projectionFeatures to add. + * @return This builder for chaining. + */ + public Builder addProjectionFeaturesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureProjectionFeaturesIsMutable(); + projectionFeatures_.add(value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesOrBuilder.java index 5823bdd9..cb85e280 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesOrBuilder.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesOrBuilder.java @@ -21,15 +21,19 @@ public interface AggregateTimeSeriesOrBuilder extends getNamespaceBytes(); /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @return The aggregateOn. */ - java.lang.String getAggregateOn(); + @java.lang.Deprecated java.lang.String getAggregateOn(); /** - * string aggregate_on = 2 [json_name = "aggregateOn"]; + * string aggregate_on = 2 [json_name = "aggregateOn", deprecated = true]; + * @deprecated chalk.aggregate.v1.AggregateTimeSeries.aggregate_on is deprecated. + * See chalk/aggregate/v1/timeseries.proto;l=22 * @return The bytes for aggregateOn. */ - com.google.protobuf.ByteString + @java.lang.Deprecated com.google.protobuf.ByteString getAggregateOnBytes(); /** @@ -104,4 +108,111 @@ ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesRuleOrBuilder getRulesOrBu */ com.google.protobuf.ByteString getBucketFeatureBytes(); + + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @return A list containing the aggregateOnFeatures. + */ + java.util.List + getAggregateOnFeaturesList(); + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @return The count of aggregateOnFeatures. + */ + int getAggregateOnFeaturesCount(); + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param index The index of the element to return. + * @return The aggregateOnFeatures at the given index. + */ + java.lang.String getAggregateOnFeatures(int index); + /** + * repeated string aggregate_on_features = 8 [json_name = "aggregateOnFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the aggregateOnFeatures at the given index. + */ + com.google.protobuf.ByteString + getAggregateOnFeaturesBytes(int index); + + /** + *
+   * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+   * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @return A list containing the filterFeatures. + */ + java.util.List + getFilterFeaturesList(); + /** + *
+   * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+   * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @return The count of filterFeatures. + */ + int getFilterFeaturesCount(); + /** + *
+   * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+   * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param index The index of the element to return. + * @return The filterFeatures at the given index. + */ + java.lang.String getFilterFeatures(int index); + /** + *
+   * Features the series' filters read, e.g. `transaction.status` in `_.status == "approved"`.
+   * 
+ * + * repeated string filter_features = 9 [json_name = "filterFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the filterFeatures at the given index. + */ + com.google.protobuf.ByteString + getFilterFeaturesBytes(int index); + + /** + *
+   * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+   * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @return A list containing the projectionFeatures. + */ + java.util.List + getProjectionFeaturesList(); + /** + *
+   * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+   * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @return The count of projectionFeatures. + */ + int getProjectionFeaturesCount(); + /** + *
+   * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+   * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param index The index of the element to return. + * @return The projectionFeatures at the given index. + */ + java.lang.String getProjectionFeatures(int index); + /** + *
+   * Features read by projections in the aggregated column, e.g. `transaction.fx_rate` in `_.amount * _.fx_rate`.
+   * 
+ * + * repeated string projection_features = 10 [json_name = "projectionFeatures"]; + * @param index The index of the value to return. + * @return The bytes of the projectionFeatures at the given index. + */ + com.google.protobuf.ByteString + getProjectionFeaturesBytes(int index); } diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesRule.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesRule.java index 569aa3c6..a41545fc 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesRule.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesRule.java @@ -21,6 +21,7 @@ private AggregateTimeSeriesRule() { dependentFeatures_ = com.google.protobuf.LazyStringArrayList.emptyList(); datetimeFeature_ = ""; + materializationKeyHash_ = ""; } @java.lang.Override @@ -227,6 +228,53 @@ public java.lang.String getDatetimeFeature() { } } + public static final int MATERIALIZATION_KEY_HASH_FIELD_NUMBER = 6; + @SuppressWarnings("serial") + private volatile java.lang.Object materializationKeyHash_ = ""; + /** + *
+   * The tile-manifest materialization_key_hash this rule's lookups read.
+   * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @return The materializationKeyHash. + */ + @java.lang.Override + public java.lang.String getMaterializationKeyHash() { + java.lang.Object ref = materializationKeyHash_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + materializationKeyHash_ = s; + return s; + } + } + /** + *
+   * The tile-manifest materialization_key_hash this rule's lookups read.
+   * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @return The bytes for materializationKeyHash. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getMaterializationKeyHashBytes() { + java.lang.Object ref = materializationKeyHash_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + materializationKeyHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -256,6 +304,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(datetimeFeature_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, datetimeFeature_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(materializationKeyHash_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 6, materializationKeyHash_); + } getUnknownFields().writeTo(output); } @@ -287,6 +338,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(datetimeFeature_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, datetimeFeature_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(materializationKeyHash_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, materializationKeyHash_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -318,6 +372,8 @@ public boolean equals(final java.lang.Object obj) { } if (!getDatetimeFeature() .equals(other.getDatetimeFeature())) return false; + if (!getMaterializationKeyHash() + .equals(other.getMaterializationKeyHash())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -345,6 +401,8 @@ public int hashCode() { } hash = (37 * hash) + DATETIME_FEATURE_FIELD_NUMBER; hash = (53 * hash) + getDatetimeFeature().hashCode(); + hash = (37 * hash) + MATERIALIZATION_KEY_HASH_FIELD_NUMBER; + hash = (53 * hash) + getMaterializationKeyHash().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -497,6 +555,7 @@ public Builder clear() { retentionBuilder_ = null; } datetimeFeature_ = ""; + materializationKeyHash_ = ""; return this; } @@ -553,6 +612,9 @@ private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSerie if (((from_bitField0_ & 0x00000010) != 0)) { result.datetimeFeature_ = datetimeFeature_; } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.materializationKeyHash_ = materializationKeyHash_; + } result.bitField0_ |= to_bitField0_; } @@ -626,6 +688,11 @@ public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesR bitField0_ |= 0x00000010; onChanged(); } + if (!other.getMaterializationKeyHash().isEmpty()) { + materializationKeyHash_ = other.materializationKeyHash_; + bitField0_ |= 0x00000020; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -682,6 +749,11 @@ public Builder mergeFrom( bitField0_ |= 0x00000010; break; } // case 42 + case 50: { + materializationKeyHash_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 50 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -1231,6 +1303,98 @@ public Builder setDatetimeFeatureBytes( onChanged(); return this; } + + private java.lang.Object materializationKeyHash_ = ""; + /** + *
+     * The tile-manifest materialization_key_hash this rule's lookups read.
+     * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @return The materializationKeyHash. + */ + public java.lang.String getMaterializationKeyHash() { + java.lang.Object ref = materializationKeyHash_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + materializationKeyHash_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+     * The tile-manifest materialization_key_hash this rule's lookups read.
+     * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @return The bytes for materializationKeyHash. + */ + public com.google.protobuf.ByteString + getMaterializationKeyHashBytes() { + java.lang.Object ref = materializationKeyHash_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + materializationKeyHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+     * The tile-manifest materialization_key_hash this rule's lookups read.
+     * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @param value The materializationKeyHash to set. + * @return This builder for chaining. + */ + public Builder setMaterializationKeyHash( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + materializationKeyHash_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + *
+     * The tile-manifest materialization_key_hash this rule's lookups read.
+     * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @return This builder for chaining. + */ + public Builder clearMaterializationKeyHash() { + materializationKeyHash_ = getDefaultInstance().getMaterializationKeyHash(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + *
+     * The tile-manifest materialization_key_hash this rule's lookups read.
+     * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @param value The bytes for materializationKeyHash to set. + * @return This builder for chaining. + */ + public Builder setMaterializationKeyHashBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + materializationKeyHash_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesRuleOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesRuleOrBuilder.java index 4aa16fe5..ef97ccaf 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesRuleOrBuilder.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregateTimeSeriesRuleOrBuilder.java @@ -102,4 +102,24 @@ public interface AggregateTimeSeriesRuleOrBuilder extends */ com.google.protobuf.ByteString getDatetimeFeatureBytes(); + + /** + *
+   * The tile-manifest materialization_key_hash this rule's lookups read.
+   * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @return The materializationKeyHash. + */ + java.lang.String getMaterializationKeyHash(); + /** + *
+   * The tile-manifest materialization_key_hash this rule's lookups read.
+   * 
+ * + * string materialization_key_hash = 6 [json_name = "materializationKeyHash"]; + * @return The bytes for materializationKeyHash. + */ + com.google.protobuf.ByteString + getMaterializationKeyHashBytes(); } diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndex.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndex.java new file mode 100644 index 00000000..0cabe31b --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndex.java @@ -0,0 +1,1475 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/aggregation_index.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + *
+ * A deployment's materialized aggregations and each rule's tile key, as its running engine reports them.
+ * 
+ * + * Protobuf type {@code chalk.aggregate.v1.AggregationIndex} + */ +public final class AggregationIndex extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.AggregationIndex) + AggregationIndexOrBuilder { +private static final long serialVersionUID = 0L; + // Use AggregationIndex.newBuilder() to construct. + private AggregationIndex(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private AggregationIndex() { + environmentId_ = ""; + deploymentId_ = ""; + series_ = java.util.Collections.emptyList(); + errors_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new AggregationIndex(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_AggregationIndex_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_AggregationIndex_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.class, ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.Builder.class); + } + + private int bitField0_; + public static final int ENVIRONMENT_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object environmentId_ = ""; + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @return The environmentId. + */ + @java.lang.Override + public java.lang.String getEnvironmentId() { + java.lang.Object ref = environmentId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + environmentId_ = s; + return s; + } + } + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @return The bytes for environmentId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getEnvironmentIdBytes() { + java.lang.Object ref = environmentId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + environmentId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DEPLOYMENT_ID_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object deploymentId_ = ""; + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @return The deploymentId. + */ + @java.lang.Override + public java.lang.String getDeploymentId() { + java.lang.Object ref = deploymentId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deploymentId_ = s; + return s; + } + } + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @return The bytes for deploymentId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDeploymentIdBytes() { + java.lang.Object ref = deploymentId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deploymentId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CREATED_AT_FIELD_NUMBER = 3; + private com.google.protobuf.Timestamp createdAt_; + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + * @return Whether the createdAt field is set. + */ + @java.lang.Override + public boolean hasCreatedAt() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + * @return The createdAt. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreatedAt() { + return createdAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_; + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder() { + return createdAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_; + } + + public static final int SERIES_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private java.util.List series_; + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + @java.lang.Override + public java.util.List getSeriesList() { + return series_; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + @java.lang.Override + public java.util.List + getSeriesOrBuilderList() { + return series_; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + @java.lang.Override + public int getSeriesCount() { + return series_.size(); + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries getSeries(int index) { + return series_.get(index); + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesOrBuilder getSeriesOrBuilder( + int index) { + return series_.get(index); + } + + public static final int ERRORS_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList errors_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + *
+   * Aggregations the engine failed to parse; those series are absent from `series`.
+   * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @return A list containing the errors. + */ + public com.google.protobuf.ProtocolStringList + getErrorsList() { + return errors_; + } + /** + *
+   * Aggregations the engine failed to parse; those series are absent from `series`.
+   * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @return The count of errors. + */ + public int getErrorsCount() { + return errors_.size(); + } + /** + *
+   * Aggregations the engine failed to parse; those series are absent from `series`.
+   * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param index The index of the element to return. + * @return The errors at the given index. + */ + public java.lang.String getErrors(int index) { + return errors_.get(index); + } + /** + *
+   * Aggregations the engine failed to parse; those series are absent from `series`.
+   * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param index The index of the value to return. + * @return The bytes of the errors at the given index. + */ + public com.google.protobuf.ByteString + getErrorsBytes(int index) { + return errors_.getByteString(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(environmentId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, environmentId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deploymentId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, deploymentId_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(3, getCreatedAt()); + } + for (int i = 0; i < series_.size(); i++) { + output.writeMessage(4, series_.get(i)); + } + for (int i = 0; i < errors_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, errors_.getRaw(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(environmentId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, environmentId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deploymentId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, deploymentId_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getCreatedAt()); + } + for (int i = 0; i < series_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, series_.get(i)); + } + { + int dataSize = 0; + for (int i = 0; i < errors_.size(); i++) { + dataSize += computeStringSizeNoTag(errors_.getRaw(i)); + } + size += dataSize; + size += 1 * getErrorsList().size(); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.AggregationIndex)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex other = (ai.chalk.protos.chalk.aggregate.v1.AggregationIndex) obj; + + if (!getEnvironmentId() + .equals(other.getEnvironmentId())) return false; + if (!getDeploymentId() + .equals(other.getDeploymentId())) return false; + if (hasCreatedAt() != other.hasCreatedAt()) return false; + if (hasCreatedAt()) { + if (!getCreatedAt() + .equals(other.getCreatedAt())) return false; + } + if (!getSeriesList() + .equals(other.getSeriesList())) return false; + if (!getErrorsList() + .equals(other.getErrorsList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ENVIRONMENT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEnvironmentId().hashCode(); + hash = (37 * hash) + DEPLOYMENT_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeploymentId().hashCode(); + if (hasCreatedAt()) { + hash = (37 * hash) + CREATED_AT_FIELD_NUMBER; + hash = (53 * hash) + getCreatedAt().hashCode(); + } + if (getSeriesCount() > 0) { + hash = (37 * hash) + SERIES_FIELD_NUMBER; + hash = (53 * hash) + getSeriesList().hashCode(); + } + if (getErrorsCount() > 0) { + hash = (37 * hash) + ERRORS_FIELD_NUMBER; + hash = (53 * hash) + getErrorsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.AggregationIndex prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+   * A deployment's materialized aggregations and each rule's tile key, as its running engine reports them.
+   * 
+ * + * Protobuf type {@code chalk.aggregate.v1.AggregationIndex} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.AggregationIndex) + ai.chalk.protos.chalk.aggregate.v1.AggregationIndexOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_AggregationIndex_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_AggregationIndex_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.class, ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getCreatedAtFieldBuilder(); + getSeriesFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + environmentId_ = ""; + deploymentId_ = ""; + createdAt_ = null; + if (createdAtBuilder_ != null) { + createdAtBuilder_.dispose(); + createdAtBuilder_ = null; + } + if (seriesBuilder_ == null) { + series_ = java.util.Collections.emptyList(); + } else { + series_ = null; + seriesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000008); + errors_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_AggregationIndex_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndex getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndex build() { + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndex buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex result = new ai.chalk.protos.chalk.aggregate.v1.AggregationIndex(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(ai.chalk.protos.chalk.aggregate.v1.AggregationIndex result) { + if (seriesBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0)) { + series_ = java.util.Collections.unmodifiableList(series_); + bitField0_ = (bitField0_ & ~0x00000008); + } + result.series_ = series_; + } else { + result.series_ = seriesBuilder_.build(); + } + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.AggregationIndex result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.environmentId_ = environmentId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.deploymentId_ = deploymentId_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000004) != 0)) { + result.createdAt_ = createdAtBuilder_ == null + ? createdAt_ + : createdAtBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + errors_.makeImmutable(); + result.errors_ = errors_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.AggregationIndex) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.AggregationIndex)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.AggregationIndex other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.getDefaultInstance()) return this; + if (!other.getEnvironmentId().isEmpty()) { + environmentId_ = other.environmentId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getDeploymentId().isEmpty()) { + deploymentId_ = other.deploymentId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.hasCreatedAt()) { + mergeCreatedAt(other.getCreatedAt()); + } + if (seriesBuilder_ == null) { + if (!other.series_.isEmpty()) { + if (series_.isEmpty()) { + series_ = other.series_; + bitField0_ = (bitField0_ & ~0x00000008); + } else { + ensureSeriesIsMutable(); + series_.addAll(other.series_); + } + onChanged(); + } + } else { + if (!other.series_.isEmpty()) { + if (seriesBuilder_.isEmpty()) { + seriesBuilder_.dispose(); + seriesBuilder_ = null; + series_ = other.series_; + bitField0_ = (bitField0_ & ~0x00000008); + seriesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSeriesFieldBuilder() : null; + } else { + seriesBuilder_.addAllMessages(other.series_); + } + } + } + if (!other.errors_.isEmpty()) { + if (errors_.isEmpty()) { + errors_ = other.errors_; + bitField0_ |= 0x00000010; + } else { + ensureErrorsIsMutable(); + errors_.addAll(other.errors_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + environmentId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + deploymentId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + input.readMessage( + getCreatedAtFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries m = + input.readMessage( + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.parser(), + extensionRegistry); + if (seriesBuilder_ == null) { + ensureSeriesIsMutable(); + series_.add(m); + } else { + seriesBuilder_.addMessage(m); + } + break; + } // case 34 + case 42: { + java.lang.String s = input.readStringRequireUtf8(); + ensureErrorsIsMutable(); + errors_.add(s); + break; + } // case 42 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object environmentId_ = ""; + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @return The environmentId. + */ + public java.lang.String getEnvironmentId() { + java.lang.Object ref = environmentId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + environmentId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @return The bytes for environmentId. + */ + public com.google.protobuf.ByteString + getEnvironmentIdBytes() { + java.lang.Object ref = environmentId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + environmentId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @param value The environmentId to set. + * @return This builder for chaining. + */ + public Builder setEnvironmentId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + environmentId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @return This builder for chaining. + */ + public Builder clearEnvironmentId() { + environmentId_ = getDefaultInstance().getEnvironmentId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @param value The bytes for environmentId to set. + * @return This builder for chaining. + */ + public Builder setEnvironmentIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + environmentId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object deploymentId_ = ""; + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @return The deploymentId. + */ + public java.lang.String getDeploymentId() { + java.lang.Object ref = deploymentId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deploymentId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @return The bytes for deploymentId. + */ + public com.google.protobuf.ByteString + getDeploymentIdBytes() { + java.lang.Object ref = deploymentId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deploymentId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @param value The deploymentId to set. + * @return This builder for chaining. + */ + public Builder setDeploymentId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + deploymentId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @return This builder for chaining. + */ + public Builder clearDeploymentId() { + deploymentId_ = getDefaultInstance().getDeploymentId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @param value The bytes for deploymentId to set. + * @return This builder for chaining. + */ + public Builder setDeploymentIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + deploymentId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp createdAt_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> createdAtBuilder_; + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + * @return Whether the createdAt field is set. + */ + public boolean hasCreatedAt() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + * @return The createdAt. + */ + public com.google.protobuf.Timestamp getCreatedAt() { + if (createdAtBuilder_ == null) { + return createdAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_; + } else { + return createdAtBuilder_.getMessage(); + } + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + public Builder setCreatedAt(com.google.protobuf.Timestamp value) { + if (createdAtBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createdAt_ = value; + } else { + createdAtBuilder_.setMessage(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + public Builder setCreatedAt( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (createdAtBuilder_ == null) { + createdAt_ = builderForValue.build(); + } else { + createdAtBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + public Builder mergeCreatedAt(com.google.protobuf.Timestamp value) { + if (createdAtBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0) && + createdAt_ != null && + createdAt_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getCreatedAtBuilder().mergeFrom(value); + } else { + createdAt_ = value; + } + } else { + createdAtBuilder_.mergeFrom(value); + } + if (createdAt_ != null) { + bitField0_ |= 0x00000004; + onChanged(); + } + return this; + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + public Builder clearCreatedAt() { + bitField0_ = (bitField0_ & ~0x00000004); + createdAt_ = null; + if (createdAtBuilder_ != null) { + createdAtBuilder_.dispose(); + createdAtBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + public com.google.protobuf.Timestamp.Builder getCreatedAtBuilder() { + bitField0_ |= 0x00000004; + onChanged(); + return getCreatedAtFieldBuilder().getBuilder(); + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + public com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder() { + if (createdAtBuilder_ != null) { + return createdAtBuilder_.getMessageOrBuilder(); + } else { + return createdAt_ == null ? + com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_; + } + } + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> + getCreatedAtFieldBuilder() { + if (createdAtBuilder_ == null) { + createdAtBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( + getCreatedAt(), + getParentForChildren(), + isClean()); + createdAt_ = null; + } + return createdAtBuilder_; + } + + private java.util.List series_ = + java.util.Collections.emptyList(); + private void ensureSeriesIsMutable() { + if (!((bitField0_ & 0x00000008) != 0)) { + series_ = new java.util.ArrayList(series_); + bitField0_ |= 0x00000008; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesOrBuilder> seriesBuilder_; + + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public java.util.List getSeriesList() { + if (seriesBuilder_ == null) { + return java.util.Collections.unmodifiableList(series_); + } else { + return seriesBuilder_.getMessageList(); + } + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public int getSeriesCount() { + if (seriesBuilder_ == null) { + return series_.size(); + } else { + return seriesBuilder_.getCount(); + } + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries getSeries(int index) { + if (seriesBuilder_ == null) { + return series_.get(index); + } else { + return seriesBuilder_.getMessage(index); + } + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder setSeries( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries value) { + if (seriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSeriesIsMutable(); + series_.set(index, value); + onChanged(); + } else { + seriesBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder setSeries( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder builderForValue) { + if (seriesBuilder_ == null) { + ensureSeriesIsMutable(); + series_.set(index, builderForValue.build()); + onChanged(); + } else { + seriesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder addSeries(ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries value) { + if (seriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSeriesIsMutable(); + series_.add(value); + onChanged(); + } else { + seriesBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder addSeries( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries value) { + if (seriesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSeriesIsMutable(); + series_.add(index, value); + onChanged(); + } else { + seriesBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder addSeries( + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder builderForValue) { + if (seriesBuilder_ == null) { + ensureSeriesIsMutable(); + series_.add(builderForValue.build()); + onChanged(); + } else { + seriesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder addSeries( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder builderForValue) { + if (seriesBuilder_ == null) { + ensureSeriesIsMutable(); + series_.add(index, builderForValue.build()); + onChanged(); + } else { + seriesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder addAllSeries( + java.lang.Iterable values) { + if (seriesBuilder_ == null) { + ensureSeriesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, series_); + onChanged(); + } else { + seriesBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder clearSeries() { + if (seriesBuilder_ == null) { + series_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + } else { + seriesBuilder_.clear(); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public Builder removeSeries(int index) { + if (seriesBuilder_ == null) { + ensureSeriesIsMutable(); + series_.remove(index); + onChanged(); + } else { + seriesBuilder_.remove(index); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder getSeriesBuilder( + int index) { + return getSeriesFieldBuilder().getBuilder(index); + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesOrBuilder getSeriesOrBuilder( + int index) { + if (seriesBuilder_ == null) { + return series_.get(index); } else { + return seriesBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public java.util.List + getSeriesOrBuilderList() { + if (seriesBuilder_ != null) { + return seriesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(series_); + } + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder addSeriesBuilder() { + return getSeriesFieldBuilder().addBuilder( + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.getDefaultInstance()); + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder addSeriesBuilder( + int index) { + return getSeriesFieldBuilder().addBuilder( + index, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.getDefaultInstance()); + } + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + public java.util.List + getSeriesBuilderList() { + return getSeriesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesOrBuilder> + getSeriesFieldBuilder() { + if (seriesBuilder_ == null) { + seriesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesOrBuilder>( + series_, + ((bitField0_ & 0x00000008) != 0), + getParentForChildren(), + isClean()); + series_ = null; + } + return seriesBuilder_; + } + + private com.google.protobuf.LazyStringArrayList errors_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureErrorsIsMutable() { + if (!errors_.isModifiable()) { + errors_ = new com.google.protobuf.LazyStringArrayList(errors_); + } + bitField0_ |= 0x00000010; + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @return A list containing the errors. + */ + public com.google.protobuf.ProtocolStringList + getErrorsList() { + errors_.makeImmutable(); + return errors_; + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @return The count of errors. + */ + public int getErrorsCount() { + return errors_.size(); + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param index The index of the element to return. + * @return The errors at the given index. + */ + public java.lang.String getErrors(int index) { + return errors_.get(index); + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param index The index of the value to return. + * @return The bytes of the errors at the given index. + */ + public com.google.protobuf.ByteString + getErrorsBytes(int index) { + return errors_.getByteString(index); + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param index The index to set the value at. + * @param value The errors to set. + * @return This builder for chaining. + */ + public Builder setErrors( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureErrorsIsMutable(); + errors_.set(index, value); + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param value The errors to add. + * @return This builder for chaining. + */ + public Builder addErrors( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureErrorsIsMutable(); + errors_.add(value); + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param values The errors to add. + * @return This builder for chaining. + */ + public Builder addAllErrors( + java.lang.Iterable values) { + ensureErrorsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, errors_); + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @return This builder for chaining. + */ + public Builder clearErrors() { + errors_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000010);; + onChanged(); + return this; + } + /** + *
+     * Aggregations the engine failed to parse; those series are absent from `series`.
+     * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param value The bytes of the errors to add. + * @return This builder for chaining. + */ + public Builder addErrorsBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureErrorsIsMutable(); + errors_.add(value); + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.AggregationIndex) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.AggregationIndex) + private static final ai.chalk.protos.chalk.aggregate.v1.AggregationIndex DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.AggregationIndex(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.AggregationIndex getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AggregationIndex parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndex getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexOrBuilder.java new file mode 100644 index 00000000..9d84bfbb --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexOrBuilder.java @@ -0,0 +1,114 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/aggregation_index.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface AggregationIndexOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.AggregationIndex) + com.google.protobuf.MessageOrBuilder { + + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @return The environmentId. + */ + java.lang.String getEnvironmentId(); + /** + * string environment_id = 1 [json_name = "environmentId"]; + * @return The bytes for environmentId. + */ + com.google.protobuf.ByteString + getEnvironmentIdBytes(); + + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @return The deploymentId. + */ + java.lang.String getDeploymentId(); + /** + * string deployment_id = 2 [json_name = "deploymentId"]; + * @return The bytes for deploymentId. + */ + com.google.protobuf.ByteString + getDeploymentIdBytes(); + + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + * @return Whether the createdAt field is set. + */ + boolean hasCreatedAt(); + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + * @return The createdAt. + */ + com.google.protobuf.Timestamp getCreatedAt(); + /** + * .google.protobuf.Timestamp created_at = 3 [json_name = "createdAt"]; + */ + com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder(); + + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + java.util.List + getSeriesList(); + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries getSeries(int index); + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + int getSeriesCount(); + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + java.util.List + getSeriesOrBuilderList(); + /** + * repeated .chalk.aggregate.v1.AggregateTimeSeries series = 4 [json_name = "series"]; + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesOrBuilder getSeriesOrBuilder( + int index); + + /** + *
+   * Aggregations the engine failed to parse; those series are absent from `series`.
+   * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @return A list containing the errors. + */ + java.util.List + getErrorsList(); + /** + *
+   * Aggregations the engine failed to parse; those series are absent from `series`.
+   * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @return The count of errors. + */ + int getErrorsCount(); + /** + *
+   * Aggregations the engine failed to parse; those series are absent from `series`.
+   * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param index The index of the element to return. + * @return The errors at the given index. + */ + java.lang.String getErrors(int index); + /** + *
+   * Aggregations the engine failed to parse; those series are absent from `series`.
+   * 
+ * + * repeated string errors = 5 [json_name = "errors"]; + * @param index The index of the value to return. + * @return The bytes of the errors at the given index. + */ + com.google.protobuf.ByteString + getErrorsBytes(int index); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexProto.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexProto.java new file mode 100644 index 00000000..1722ce65 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexProto.java @@ -0,0 +1,103 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/aggregation_index.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public final class AggregationIndexProto { + private AggregationIndexProto() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_AggregationIndex_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_AggregationIndex_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n*chalk/aggregate/v1/aggregation_index.p" + + "roto\022\022chalk.aggregate.v1\032#chalk/aggregat" + + "e/v1/timeseries.proto\032\037chalk/auth/v1/per" + + "missions.proto\032\037google/protobuf/timestam" + + "p.proto\"\362\001\n\020AggregationIndex\022%\n\016environm" + + "ent_id\030\001 \001(\tR\renvironmentId\022#\n\rdeploymen" + + "t_id\030\002 \001(\tR\014deploymentId\0229\n\ncreated_at\030\003" + + " \001(\0132\032.google.protobuf.TimestampR\tcreate" + + "dAt\022?\n\006series\030\004 \003(\0132\'.chalk.aggregate.v1" + + ".AggregateTimeSeriesR\006series\022\026\n\006errors\030\005" + + " \003(\tR\006errors\"&\n$GetDeploymentAggregation" + + "IndexRequest\"r\n%GetDeploymentAggregation" + + "IndexResponse\022?\n\005index\030\001 \001(\0132$.chalk.agg" + + "regate.v1.AggregationIndexH\000R\005index\210\001\001B\010" + + "\n\006_index2\270\001\n\027AggregationIndexService\022\234\001\n" + + "\035GetDeploymentAggregationIndex\0228.chalk.a" + + "ggregate.v1.GetDeploymentAggregationInde" + + "xRequest\0329.chalk.aggregate.v1.GetDeploym" + + "entAggregationIndexResponse\"\006\220\002\001\200}\013B\277\001\n\"" + + "ai.chalk.protos.chalk.aggregate.v1B\025Aggr" + + "egationIndexProtoP\001Z\030aggregate/v1;aggreg" + + "atev1\242\002\003CAX\252\002\022Chalk.Aggregate.V1\312\002\022Chalk" + + "\\Aggregate\\V1\342\002\036Chalk\\Aggregate\\V1\\GPBMe" + + "tadata\352\002\024Chalk::Aggregate::V1b\006proto3" + }; + descriptor = com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + ai.chalk.protos.chalk.aggregate.v1.TimeseriesProto.getDescriptor(), + ai.chalk.protos.chalk.auth.v1.PermissionsProto.getDescriptor(), + com.google.protobuf.TimestampProto.getDescriptor(), + }); + internal_static_chalk_aggregate_v1_AggregationIndex_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_chalk_aggregate_v1_AggregationIndex_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_AggregationIndex_descriptor, + new java.lang.String[] { "EnvironmentId", "DeploymentId", "CreatedAt", "Series", "Errors", }); + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_descriptor = + getDescriptor().getMessageTypes().get(1); + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_descriptor, + new java.lang.String[] { }); + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_descriptor, + new java.lang.String[] { "Index", }); + com.google.protobuf.ExtensionRegistry registry = + com.google.protobuf.ExtensionRegistry.newInstance(); + registry.add(ai.chalk.protos.chalk.auth.v1.PermissionsProto.permission); + com.google.protobuf.Descriptors.FileDescriptor + .internalUpdateFileDescriptor(descriptor, registry); + ai.chalk.protos.chalk.aggregate.v1.TimeseriesProto.getDescriptor(); + ai.chalk.protos.chalk.auth.v1.PermissionsProto.getDescriptor(); + com.google.protobuf.TimestampProto.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexServiceGrpc.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexServiceGrpc.java new file mode 100644 index 00000000..c49e58f8 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/AggregationIndexServiceGrpc.java @@ -0,0 +1,294 @@ +package ai.chalk.protos.chalk.aggregate.v1; + +import static io.grpc.MethodDescriptor.generateFullMethodName; + +/** + */ +@javax.annotation.Generated( + value = "by gRPC proto compiler (version 1.64.0)", + comments = "Source: chalk/aggregate/v1/aggregation_index.proto") +@io.grpc.stub.annotations.GrpcGenerated +public final class AggregationIndexServiceGrpc { + + private AggregationIndexServiceGrpc() {} + + public static final java.lang.String SERVICE_NAME = "chalk.aggregate.v1.AggregationIndexService"; + + // Static method descriptors that strictly reflect the proto. + private static volatile io.grpc.MethodDescriptor getGetDeploymentAggregationIndexMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "GetDeploymentAggregationIndex", + requestType = ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.class, + responseType = ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor getGetDeploymentAggregationIndexMethod() { + io.grpc.MethodDescriptor getGetDeploymentAggregationIndexMethod; + if ((getGetDeploymentAggregationIndexMethod = AggregationIndexServiceGrpc.getGetDeploymentAggregationIndexMethod) == null) { + synchronized (AggregationIndexServiceGrpc.class) { + if ((getGetDeploymentAggregationIndexMethod = AggregationIndexServiceGrpc.getGetDeploymentAggregationIndexMethod) == null) { + AggregationIndexServiceGrpc.getGetDeploymentAggregationIndexMethod = getGetDeploymentAggregationIndexMethod = + io.grpc.MethodDescriptor.newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetDeploymentAggregationIndex")) + .setSafe(true) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.getDefaultInstance())) + .setSchemaDescriptor(new AggregationIndexServiceMethodDescriptorSupplier("GetDeploymentAggregationIndex")) + .build(); + } + } + } + return getGetDeploymentAggregationIndexMethod; + } + + /** + * Creates a new async stub that supports all call types for the service + */ + public static AggregationIndexServiceStub newStub(io.grpc.Channel channel) { + io.grpc.stub.AbstractStub.StubFactory factory = + new io.grpc.stub.AbstractStub.StubFactory() { + @java.lang.Override + public AggregationIndexServiceStub newStub(io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new AggregationIndexServiceStub(channel, callOptions); + } + }; + return AggregationIndexServiceStub.newStub(factory, channel); + } + + /** + * Creates a new blocking-style stub that supports unary and streaming output calls on the service + */ + public static AggregationIndexServiceBlockingStub newBlockingStub( + io.grpc.Channel channel) { + io.grpc.stub.AbstractStub.StubFactory factory = + new io.grpc.stub.AbstractStub.StubFactory() { + @java.lang.Override + public AggregationIndexServiceBlockingStub newStub(io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new AggregationIndexServiceBlockingStub(channel, callOptions); + } + }; + return AggregationIndexServiceBlockingStub.newStub(factory, channel); + } + + /** + * Creates a new ListenableFuture-style stub that supports unary calls on the service + */ + public static AggregationIndexServiceFutureStub newFutureStub( + io.grpc.Channel channel) { + io.grpc.stub.AbstractStub.StubFactory factory = + new io.grpc.stub.AbstractStub.StubFactory() { + @java.lang.Override + public AggregationIndexServiceFutureStub newStub(io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new AggregationIndexServiceFutureStub(channel, callOptions); + } + }; + return AggregationIndexServiceFutureStub.newStub(factory, channel); + } + + /** + */ + public interface AsyncService { + + /** + */ + default void getDeploymentAggregationIndex(ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetDeploymentAggregationIndexMethod(), responseObserver); + } + } + + /** + * Base class for the server implementation of the service AggregationIndexService. + */ + public static abstract class AggregationIndexServiceImplBase + implements io.grpc.BindableService, AsyncService { + + @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { + return AggregationIndexServiceGrpc.bindService(this); + } + } + + /** + * A stub to allow clients to do asynchronous rpc calls to service AggregationIndexService. + */ + public static final class AggregationIndexServiceStub + extends io.grpc.stub.AbstractAsyncStub { + private AggregationIndexServiceStub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + super(channel, callOptions); + } + + @java.lang.Override + protected AggregationIndexServiceStub build( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new AggregationIndexServiceStub(channel, callOptions); + } + + /** + */ + public void getDeploymentAggregationIndex(ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getGetDeploymentAggregationIndexMethod(), getCallOptions()), request, responseObserver); + } + } + + /** + * A stub to allow clients to do synchronous rpc calls to service AggregationIndexService. + */ + public static final class AggregationIndexServiceBlockingStub + extends io.grpc.stub.AbstractBlockingStub { + private AggregationIndexServiceBlockingStub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + super(channel, callOptions); + } + + @java.lang.Override + protected AggregationIndexServiceBlockingStub build( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new AggregationIndexServiceBlockingStub(channel, callOptions); + } + + /** + */ + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse getDeploymentAggregationIndex(ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getGetDeploymentAggregationIndexMethod(), getCallOptions(), request); + } + } + + /** + * A stub to allow clients to do ListenableFuture-style rpc calls to service AggregationIndexService. + */ + public static final class AggregationIndexServiceFutureStub + extends io.grpc.stub.AbstractFutureStub { + private AggregationIndexServiceFutureStub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + super(channel, callOptions); + } + + @java.lang.Override + protected AggregationIndexServiceFutureStub build( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new AggregationIndexServiceFutureStub(channel, callOptions); + } + + /** + */ + public com.google.common.util.concurrent.ListenableFuture getDeploymentAggregationIndex( + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getGetDeploymentAggregationIndexMethod(), getCallOptions()), request); + } + } + + private static final int METHODID_GET_DEPLOYMENT_AGGREGATION_INDEX = 0; + + private static final class MethodHandlers implements + io.grpc.stub.ServerCalls.UnaryMethod, + io.grpc.stub.ServerCalls.ServerStreamingMethod, + io.grpc.stub.ServerCalls.ClientStreamingMethod, + io.grpc.stub.ServerCalls.BidiStreamingMethod { + private final AsyncService serviceImpl; + private final int methodId; + + MethodHandlers(AsyncService serviceImpl, int methodId) { + this.serviceImpl = serviceImpl; + this.methodId = methodId; + } + + @java.lang.Override + @java.lang.SuppressWarnings("unchecked") + public void invoke(Req request, io.grpc.stub.StreamObserver responseObserver) { + switch (methodId) { + case METHODID_GET_DEPLOYMENT_AGGREGATION_INDEX: + serviceImpl.getDeploymentAggregationIndex((ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest) request, + (io.grpc.stub.StreamObserver) responseObserver); + break; + default: + throw new AssertionError(); + } + } + + @java.lang.Override + @java.lang.SuppressWarnings("unchecked") + public io.grpc.stub.StreamObserver invoke( + io.grpc.stub.StreamObserver responseObserver) { + switch (methodId) { + default: + throw new AssertionError(); + } + } + } + + public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) { + return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) + .addMethod( + getGetDeploymentAggregationIndexMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest, + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse>( + service, METHODID_GET_DEPLOYMENT_AGGREGATION_INDEX))) + .build(); + } + + private static abstract class AggregationIndexServiceBaseDescriptorSupplier + implements io.grpc.protobuf.ProtoFileDescriptorSupplier, io.grpc.protobuf.ProtoServiceDescriptorSupplier { + AggregationIndexServiceBaseDescriptorSupplier() {} + + @java.lang.Override + public com.google.protobuf.Descriptors.FileDescriptor getFileDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.getDescriptor(); + } + + @java.lang.Override + public com.google.protobuf.Descriptors.ServiceDescriptor getServiceDescriptor() { + return getFileDescriptor().findServiceByName("AggregationIndexService"); + } + } + + private static final class AggregationIndexServiceFileDescriptorSupplier + extends AggregationIndexServiceBaseDescriptorSupplier { + AggregationIndexServiceFileDescriptorSupplier() {} + } + + private static final class AggregationIndexServiceMethodDescriptorSupplier + extends AggregationIndexServiceBaseDescriptorSupplier + implements io.grpc.protobuf.ProtoMethodDescriptorSupplier { + private final java.lang.String methodName; + + AggregationIndexServiceMethodDescriptorSupplier(java.lang.String methodName) { + this.methodName = methodName; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.MethodDescriptor getMethodDescriptor() { + return getServiceDescriptor().findMethodByName(methodName); + } + } + + private static volatile io.grpc.ServiceDescriptor serviceDescriptor; + + public static io.grpc.ServiceDescriptor getServiceDescriptor() { + io.grpc.ServiceDescriptor result = serviceDescriptor; + if (result == null) { + synchronized (AggregationIndexServiceGrpc.class) { + result = serviceDescriptor; + if (result == null) { + serviceDescriptor = result = io.grpc.ServiceDescriptor.newBuilder(SERVICE_NAME) + .setSchemaDescriptor(new AggregationIndexServiceFileDescriptorSupplier()) + .addMethod(getGetDeploymentAggregationIndexMethod()) + .build(); + } + } + } + return result; + } +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/BackfillProto.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/BackfillProto.java index 95a02a04..f83b7b5b 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/BackfillProto.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/BackfillProto.java @@ -40,6 +40,11 @@ public static void registerAllExtensions( static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_chalk_aggregate_v1_AggregateBackfillJob_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_CronAggregateBackfill_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_CronAggregateBackfill_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { @@ -59,7 +64,7 @@ public static void registerAllExtensions( "bytes\030\003 \001(\003R\rexpectedBytes\0222\n\025expected_s" + "torage_cost\030\004 \001(\001R\023expectedStorageCost\022D" + "\n\020expected_runtime\030\005 \001(\0132\031.google.protob" + - "uf.DurationR\017expectedRuntime\"\370\002\n\033Aggrega" + + "uf.DurationR\017expectedRuntime\"\274\003\n\033Aggrega" + "teBackfillUserParams\022\032\n\010features\030\001 \003(\tR\010" + "features\022\037\n\010resolver\030\002 \001(\tH\000R\010resolver\210\001" + "\001\022;\n\025timestamp_column_name\030\003 \001(\tB\002\030\001H\001R\023" + @@ -67,26 +72,29 @@ public static void registerAllExtensions( "\001(\0132\032.google.protobuf.TimestampH\002R\nlower" + "Bound\210\001\001\022@\n\013upper_bound\030\005 \001(\0132\032.google.p" + "rotobuf.TimestampH\003R\nupperBound\210\001\001\022\024\n\005ex" + - "act\030\006 \001(\010R\005exactB\013\n\t_resolverB\030\n\026_timest" + - "amp_column_nameB\016\n\014_lower_boundB\016\n\014_uppe" + - "r_bound\"\345\003\n\021AggregateBackfill\022?\n\006series\030" + - "\001 \003(\0132\'.chalk.aggregate.v1.AggregateTime" + - "SeriesR\006series\022\032\n\010resolver\030\002 \001(\tR\010resolv" + - "er\022)\n\020datetime_feature\030\003 \001(\tR\017datetimeFe" + - "ature\022B\n\017bucket_duration\030\004 \001(\0132\031.google." + - "protobuf.DurationR\016bucketDuration\022/\n\023fil" + - "ters_description\030\005 \001(\tR\022filtersDescripti" + - "on\022\031\n\010group_by\030\006 \003(\tR\007groupBy\022>\n\rmax_ret" + - "ention\030\007 \001(\0132\031.google.protobuf.DurationR" + - "\014maxRetention\022;\n\013lower_bound\030\010 \001(\0132\032.goo" + - "gle.protobuf.TimestampR\nlowerBound\022;\n\013up" + - "per_bound\030\t \001(\0132\032.google.protobuf.Timest" + - "ampR\nupperBound\"\265\001\n!AggregateBackfillWit" + - "hCostEstimate\022A\n\010backfill\030\001 \001(\0132%.chalk." + - "aggregate.v1.AggregateBackfillR\010backfill" + - "\022M\n\010estimate\030\002 \001(\01321.chalk.aggregate.v1." + - "AggregateBackfillCostEstimateR\010estimate\"" + - "\224\003\n\024AggregateBackfillJob\022\016\n\002id\030\001 \001(\tR\002id" + + "act\030\006 \001(\010R\005exact\022\022\n\004tags\030\007 \003(\tR\004tags\022 \n\t" + + "input_sql\030\010 \001(\tH\004R\010inputSql\210\001\001B\013\n\t_resol" + + "verB\030\n\026_timestamp_column_nameB\016\n\014_lower_" + + "boundB\016\n\014_upper_boundB\014\n\n_input_sql\"\225\004\n\021" + + "AggregateBackfill\022?\n\006series\030\001 \003(\0132\'.chal" + + "k.aggregate.v1.AggregateTimeSeriesR\006seri" + + "es\022\032\n\010resolver\030\002 \001(\tR\010resolver\022)\n\020dateti" + + "me_feature\030\003 \001(\tR\017datetimeFeature\022B\n\017buc" + + "ket_duration\030\004 \001(\0132\031.google.protobuf.Dur" + + "ationR\016bucketDuration\022/\n\023filters_descrip" + + "tion\030\005 \001(\tR\022filtersDescription\022\031\n\010group_" + + "by\030\006 \003(\tR\007groupBy\022>\n\rmax_retention\030\007 \001(\013" + + "2\031.google.protobuf.DurationR\014maxRetentio" + + "n\022;\n\013lower_bound\030\010 \001(\0132\032.google.protobuf" + + ".TimestampR\nlowerBound\022;\n\013upper_bound\030\t " + + "\001(\0132\032.google.protobuf.TimestampR\nupperBo" + + "und\022 \n\tinput_sql\030\n \001(\tH\000R\010inputSql\210\001\001B\014\n" + + "\n_input_sql\"\271\001\n!AggregateBackfillWithCos" + + "tEstimate\022A\n\010backfill\030\001 \001(\0132%.chalk.aggr" + + "egate.v1.AggregateBackfillR\010backfill\022Q\n\010" + + "estimate\030\002 \001(\01321.chalk.aggregate.v1.Aggr" + + "egateBackfillCostEstimateB\002\030\001R\010estimate\"" + + "\360\005\n\024AggregateBackfillJob\022\016\n\002id\030\001 \001(\tR\002id" + "\022%\n\016environment_id\030\002 \001(\tR\renvironmentId\022" + "\037\n\010resolver\030\003 \001(\tH\000R\010resolver\210\001\001\022\032\n\010feat" + "ures\030\004 \003(\tR\010features\022\036\n\010agent_id\030\005 \001(\tH\001" + @@ -95,12 +103,51 @@ public static void registerAllExtensions( "gle.protobuf.TimestampR\tcreatedAt\0229\n\nupd" + "ated_at\030\010 \001(\0132\032.google.protobuf.Timestam" + "pR\tupdatedAt\022\034\n\tresolvers\030\t \003(\tR\tresolve" + - "rsB\013\n\t_resolverB\013\n\t_agent_idB\020\n\016_deploym" + - "ent_idB\267\001\n\"ai.chalk.protos.chalk.aggrega" + - "te.v1B\rBackfillProtoP\001Z\030aggregate/v1;agg" + - "regatev1\242\002\003CAX\252\002\022Chalk.Aggregate.V1\312\002\022Ch" + - "alk\\Aggregate\\V1\342\002\036Chalk\\Aggregate\\V1\\GP" + - "BMetadata\352\002\024Chalk::Aggregate::V1b\006proto3" + "rs\022@\n\032cron_aggregate_backfill_id\030\n \001(\tH\003" + + "R\027cronAggregateBackfillId\210\001\001\022 \n\tplan_has" + + "h\030\013 \001(\tH\004R\010planHash\210\001\001\022C\n\006status\030\014 \001(\0162+" + + ".chalk.aggregate.v1.AggregateBackfillSta" + + "tusR\006status\022\035\n\nquery_tags\030\r \003(\tR\tqueryTa" + + "gs\022D\n\034cron_aggregate_backfill_name\030\016 \001(\t" + + "H\005R\031cronAggregateBackfillName\210\001\001B\013\n\t_res" + + "olverB\013\n\t_agent_idB\020\n\016_deployment_idB\035\n\033" + + "_cron_aggregate_backfill_idB\014\n\n_plan_has" + + "hB\037\n\035_cron_aggregate_backfill_name\"\210\005\n\025C" + + "ronAggregateBackfill\022\016\n\002id\030\001 \001(\tR\002id\022%\n\016" + + "environment_id\030\002 \001(\tR\renvironmentId\022#\n\rd" + + "eployment_id\030\003 \001(\tR\014deploymentId\022\022\n\004name" + + "\030\013 \001(\tR\004name\022\032\n\010schedule\030\004 \001(\tR\010schedule" + + "\022\037\n\010filename\030\014 \001(\tH\000R\010filename\210\001\001\022\033\n\tpla" + + "n_hash\030\005 \001(\tR\010planHash\022\032\n\010features\030\010 \003(\t" + + "R\010features\022\034\n\tresolvers\030\t \003(\tR\tresolvers" + + "\022\035\n\nquery_tags\030\n \003(\tR\tqueryTags\022C\n\006targe" + + "t\030\r \001(\0162+.chalk.aggregate.v1.AggregateBa" + + "ckfillTargetR\006target\022*\n\016resource_group\030\016" + + " \001(\tH\001R\rresourceGroup\210\001\001\022E\n\007targets\030\017 \003(" + + "\0162+.chalk.aggregate.v1.AggregateBackfill" + + "TargetR\007targets\0229\n\ncreated_at\030\006 \001(\0132\032.go" + + "ogle.protobuf.TimestampR\tcreatedAt\0229\n\nup" + + "dated_at\030\007 \001(\0132\032.google.protobuf.Timesta" + + "mpR\tupdatedAtB\013\n\t_filenameB\021\n\017_resource_" + + "group*\206\003\n\027AggregateBackfillStatus\022)\n%AGG" + + "REGATE_BACKFILL_STATUS_UNSPECIFIED\020\000\022*\n&" + + "AGGREGATE_BACKFILL_STATUS_INITIALIZING\020\001" + + "\022)\n%AGGREGATE_BACKFILL_STATUS_INIT_FAILE" + + "D\020\002\022%\n!AGGREGATE_BACKFILL_STATUS_SKIPPED" + + "\020\003\022$\n AGGREGATE_BACKFILL_STATUS_QUEUED\020\004" + + "\022%\n!AGGREGATE_BACKFILL_STATUS_WORKING\020\005\022" + + "\'\n#AGGREGATE_BACKFILL_STATUS_COMPLETED\020\006" + + "\022$\n AGGREGATE_BACKFILL_STATUS_FAILED\020\007\022&" + + "\n\"AGGREGATE_BACKFILL_STATUS_CANCELED\020\010*\221" + + "\001\n\027AggregateBackfillTarget\022)\n%AGGREGATE_" + + "BACKFILL_TARGET_UNSPECIFIED\020\000\022$\n AGGREGA" + + "TE_BACKFILL_TARGET_ONLINE\020\001\022%\n!AGGREGATE" + + "_BACKFILL_TARGET_OFFLINE\020\002B\267\001\n\"ai.chalk." + + "protos.chalk.aggregate.v1B\rBackfillProto" + + "P\001Z\030aggregate/v1;aggregatev1\242\002\003CAX\252\002\022Cha" + + "lk.Aggregate.V1\312\002\022Chalk\\Aggregate\\V1\342\002\036C" + + "halk\\Aggregate\\V1\\GPBMetadata\352\002\024Chalk::A" + + "ggregate::V1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -120,13 +167,13 @@ public static void registerAllExtensions( internal_static_chalk_aggregate_v1_AggregateBackfillUserParams_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_chalk_aggregate_v1_AggregateBackfillUserParams_descriptor, - new java.lang.String[] { "Features", "Resolver", "TimestampColumnName", "LowerBound", "UpperBound", "Exact", }); + new java.lang.String[] { "Features", "Resolver", "TimestampColumnName", "LowerBound", "UpperBound", "Exact", "Tags", "InputSql", }); internal_static_chalk_aggregate_v1_AggregateBackfill_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_chalk_aggregate_v1_AggregateBackfill_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_chalk_aggregate_v1_AggregateBackfill_descriptor, - new java.lang.String[] { "Series", "Resolver", "DatetimeFeature", "BucketDuration", "FiltersDescription", "GroupBy", "MaxRetention", "LowerBound", "UpperBound", }); + new java.lang.String[] { "Series", "Resolver", "DatetimeFeature", "BucketDuration", "FiltersDescription", "GroupBy", "MaxRetention", "LowerBound", "UpperBound", "InputSql", }); internal_static_chalk_aggregate_v1_AggregateBackfillWithCostEstimate_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_chalk_aggregate_v1_AggregateBackfillWithCostEstimate_fieldAccessorTable = new @@ -138,7 +185,13 @@ public static void registerAllExtensions( internal_static_chalk_aggregate_v1_AggregateBackfillJob_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_chalk_aggregate_v1_AggregateBackfillJob_descriptor, - new java.lang.String[] { "Id", "EnvironmentId", "Resolver", "Features", "AgentId", "DeploymentId", "CreatedAt", "UpdatedAt", "Resolvers", }); + new java.lang.String[] { "Id", "EnvironmentId", "Resolver", "Features", "AgentId", "DeploymentId", "CreatedAt", "UpdatedAt", "Resolvers", "CronAggregateBackfillId", "PlanHash", "Status", "QueryTags", "CronAggregateBackfillName", }); + internal_static_chalk_aggregate_v1_CronAggregateBackfill_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_chalk_aggregate_v1_CronAggregateBackfill_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_CronAggregateBackfill_descriptor, + new java.lang.String[] { "Id", "EnvironmentId", "DeploymentId", "Name", "Schedule", "Filename", "PlanHash", "Features", "Resolvers", "QueryTags", "Target", "ResourceGroup", "Targets", "CreatedAt", "UpdatedAt", }); ai.chalk.protos.chalk.aggregate.v1.TimeseriesProto.getDescriptor(); com.google.protobuf.DurationProto.getDescriptor(); com.google.protobuf.TimestampProto.getDescriptor(); diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobRequest.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobRequest.java new file mode 100644 index 00000000..d071e812 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobRequest.java @@ -0,0 +1,2488 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.CreateAggregateBackfillJobRequest} + */ +public final class CreateAggregateBackfillJobRequest extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.CreateAggregateBackfillJobRequest) + CreateAggregateBackfillJobRequestOrBuilder { +private static final long serialVersionUID = 0L; + // Use CreateAggregateBackfillJobRequest.newBuilder() to construct. + private CreateAggregateBackfillJobRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private CreateAggregateBackfillJobRequest() { + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + resolver_ = ""; + bucketFeature_ = ""; + aggregateBackfillId_ = ""; + resourceGroup_ = ""; + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + inputSql_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new CreateAggregateBackfillJobRequest(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.class, ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.Builder.class); + } + + private int bitField0_; + public static final int FEATURES_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string features = 1 [json_name = "features"]; + * @return A list containing the features. + */ + public com.google.protobuf.ProtocolStringList + getFeaturesList() { + return features_; + } + /** + * repeated string features = 1 [json_name = "features"]; + * @return The count of features. + */ + public int getFeaturesCount() { + return features_.size(); + } + /** + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + public java.lang.String getFeatures(int index) { + return features_.get(index); + } + /** + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + public com.google.protobuf.ByteString + getFeaturesBytes(int index) { + return features_.getByteString(index); + } + + public static final int LOWER_BOUND_FIELD_NUMBER = 2; + private com.google.protobuf.Timestamp lowerBound_; + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + * @return Whether the lowerBound field is set. + */ + @java.lang.Override + public boolean hasLowerBound() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + * @return The lowerBound. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getLowerBound() { + return lowerBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lowerBound_; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getLowerBoundOrBuilder() { + return lowerBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lowerBound_; + } + + public static final int UPPER_BOUND_FIELD_NUMBER = 3; + private com.google.protobuf.Timestamp upperBound_; + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + * @return Whether the upperBound field is set. + */ + @java.lang.Override + public boolean hasUpperBound() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + * @return The upperBound. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpperBound() { + return upperBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder() { + return upperBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; + } + + public static final int RESOLVER_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private volatile java.lang.Object resolver_ = ""; + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return Whether the resolver field is set. + */ + @java.lang.Override + public boolean hasResolver() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return The resolver. + */ + @java.lang.Override + public java.lang.String getResolver() { + java.lang.Object ref = resolver_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resolver_ = s; + return s; + } + } + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return The bytes for resolver. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getResolverBytes() { + java.lang.Object ref = resolver_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resolver_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int BUCKET_FEATURE_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private volatile java.lang.Object bucketFeature_ = ""; + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return Whether the bucketFeature field is set. + */ + @java.lang.Override + public boolean hasBucketFeature() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return The bucketFeature. + */ + @java.lang.Override + public java.lang.String getBucketFeature() { + java.lang.Object ref = bucketFeature_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + bucketFeature_ = s; + return s; + } + } + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return The bytes for bucketFeature. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getBucketFeatureBytes() { + java.lang.Object ref = bucketFeature_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + bucketFeature_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ENABLE_PROFILING_FIELD_NUMBER = 6; + private boolean enableProfiling_ = false; + /** + * bool enable_profiling = 6 [json_name = "enableProfiling"]; + * @return The enableProfiling. + */ + @java.lang.Override + public boolean getEnableProfiling() { + return enableProfiling_; + } + + public static final int AGGREGATE_BACKFILL_ID_FIELD_NUMBER = 7; + @SuppressWarnings("serial") + private volatile java.lang.Object aggregateBackfillId_ = ""; + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return Whether the aggregateBackfillId field is set. + */ + @java.lang.Override + public boolean hasAggregateBackfillId() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return The aggregateBackfillId. + */ + @java.lang.Override + public java.lang.String getAggregateBackfillId() { + java.lang.Object ref = aggregateBackfillId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + aggregateBackfillId_ = s; + return s; + } + } + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return The bytes for aggregateBackfillId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getAggregateBackfillIdBytes() { + java.lang.Object ref = aggregateBackfillId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + aggregateBackfillId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RESOURCE_GROUP_FIELD_NUMBER = 8; + @SuppressWarnings("serial") + private volatile java.lang.Object resourceGroup_ = ""; + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + @java.lang.Override + public boolean hasResourceGroup() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + @java.lang.Override + public java.lang.String getResourceGroup() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceGroup_ = s; + return s; + } + } + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getResourceGroupBytes() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceGroup_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int QUERY_TAGS_FIELD_NUMBER = 9; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + public com.google.protobuf.ProtocolStringList + getQueryTagsList() { + return queryTags_; + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + public int getQueryTagsCount() { + return queryTags_.size(); + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + public java.lang.String getQueryTags(int index) { + return queryTags_.get(index); + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + public com.google.protobuf.ByteString + getQueryTagsBytes(int index) { + return queryTags_.getByteString(index); + } + + public static final int STORE_OFFLINE_FIELD_NUMBER = 10; + private boolean storeOffline_ = false; + /** + * optional bool store_offline = 10 [json_name = "storeOffline"]; + * @return Whether the storeOffline field is set. + */ + @java.lang.Override + public boolean hasStoreOffline() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + * optional bool store_offline = 10 [json_name = "storeOffline"]; + * @return The storeOffline. + */ + @java.lang.Override + public boolean getStoreOffline() { + return storeOffline_; + } + + public static final int USE_METAPLANNER_FIELD_NUMBER = 11; + private boolean useMetaplanner_ = false; + /** + * optional bool use_metaplanner = 11 [json_name = "useMetaplanner"]; + * @return Whether the useMetaplanner field is set. + */ + @java.lang.Override + public boolean hasUseMetaplanner() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + * optional bool use_metaplanner = 11 [json_name = "useMetaplanner"]; + * @return The useMetaplanner. + */ + @java.lang.Override + public boolean getUseMetaplanner() { + return useMetaplanner_; + } + + public static final int ALLOW_EMPTY_TILES_FIELD_NUMBER = 12; + private boolean allowEmptyTiles_ = false; + /** + * optional bool allow_empty_tiles = 12 [json_name = "allowEmptyTiles"]; + * @return Whether the allowEmptyTiles field is set. + */ + @java.lang.Override + public boolean hasAllowEmptyTiles() { + return ((bitField0_ & 0x00000100) != 0); + } + /** + * optional bool allow_empty_tiles = 12 [json_name = "allowEmptyTiles"]; + * @return The allowEmptyTiles. + */ + @java.lang.Override + public boolean getAllowEmptyTiles() { + return allowEmptyTiles_; + } + + public static final int STORE_ONLINE_FIELD_NUMBER = 13; + private boolean storeOnline_ = false; + /** + * optional bool store_online = 13 [json_name = "storeOnline"]; + * @return Whether the storeOnline field is set. + */ + @java.lang.Override + public boolean hasStoreOnline() { + return ((bitField0_ & 0x00000200) != 0); + } + /** + * optional bool store_online = 13 [json_name = "storeOnline"]; + * @return The storeOnline. + */ + @java.lang.Override + public boolean getStoreOnline() { + return storeOnline_; + } + + public static final int INPUT_SQL_FIELD_NUMBER = 14; + @SuppressWarnings("serial") + private volatile java.lang.Object inputSql_ = ""; + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + @java.lang.Override + public boolean hasInputSql() { + return ((bitField0_ & 0x00000400) != 0); + } + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return The inputSql. + */ + @java.lang.Override + public java.lang.String getInputSql() { + java.lang.Object ref = inputSql_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + inputSql_ = s; + return s; + } + } + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getInputSqlBytes() { + java.lang.Object ref = inputSql_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + inputSql_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int NUM_SHARDS_FIELD_NUMBER = 15; + private int numShards_ = 0; + /** + *
+   * Split this backfill's window into this many bucket-aligned time-sharded
+   * jobs. Unset/1 preserves the single-job behavior.
+   * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return Whether the numShards field is set. + */ + @java.lang.Override + public boolean hasNumShards() { + return ((bitField0_ & 0x00000800) != 0); + } + /** + *
+   * Split this backfill's window into this many bucket-aligned time-sharded
+   * jobs. Unset/1 preserves the single-job behavior.
+   * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return The numShards. + */ + @java.lang.Override + public int getNumShards() { + return numShards_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < features_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, features_.getRaw(i)); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(2, getLowerBound()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(3, getUpperBound()); + } + if (((bitField0_ & 0x00000004) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, resolver_); + } + if (((bitField0_ & 0x00000008) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, bucketFeature_); + } + if (enableProfiling_ != false) { + output.writeBool(6, enableProfiling_); + } + if (((bitField0_ & 0x00000010) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 7, aggregateBackfillId_); + } + if (((bitField0_ & 0x00000020) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 8, resourceGroup_); + } + for (int i = 0; i < queryTags_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 9, queryTags_.getRaw(i)); + } + if (((bitField0_ & 0x00000040) != 0)) { + output.writeBool(10, storeOffline_); + } + if (((bitField0_ & 0x00000080) != 0)) { + output.writeBool(11, useMetaplanner_); + } + if (((bitField0_ & 0x00000100) != 0)) { + output.writeBool(12, allowEmptyTiles_); + } + if (((bitField0_ & 0x00000200) != 0)) { + output.writeBool(13, storeOnline_); + } + if (((bitField0_ & 0x00000400) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 14, inputSql_); + } + if (((bitField0_ & 0x00000800) != 0)) { + output.writeInt32(15, numShards_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + { + int dataSize = 0; + for (int i = 0; i < features_.size(); i++) { + dataSize += computeStringSizeNoTag(features_.getRaw(i)); + } + size += dataSize; + size += 1 * getFeaturesList().size(); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getLowerBound()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getUpperBound()); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, resolver_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, bucketFeature_); + } + if (enableProfiling_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(6, enableProfiling_); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, aggregateBackfillId_); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, resourceGroup_); + } + { + int dataSize = 0; + for (int i = 0; i < queryTags_.size(); i++) { + dataSize += computeStringSizeNoTag(queryTags_.getRaw(i)); + } + size += dataSize; + size += 1 * getQueryTagsList().size(); + } + if (((bitField0_ & 0x00000040) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(10, storeOffline_); + } + if (((bitField0_ & 0x00000080) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(11, useMetaplanner_); + } + if (((bitField0_ & 0x00000100) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(12, allowEmptyTiles_); + } + if (((bitField0_ & 0x00000200) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(13, storeOnline_); + } + if (((bitField0_ & 0x00000400) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, inputSql_); + } + if (((bitField0_ & 0x00000800) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(15, numShards_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest other = (ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest) obj; + + if (!getFeaturesList() + .equals(other.getFeaturesList())) return false; + if (hasLowerBound() != other.hasLowerBound()) return false; + if (hasLowerBound()) { + if (!getLowerBound() + .equals(other.getLowerBound())) return false; + } + if (hasUpperBound() != other.hasUpperBound()) return false; + if (hasUpperBound()) { + if (!getUpperBound() + .equals(other.getUpperBound())) return false; + } + if (hasResolver() != other.hasResolver()) return false; + if (hasResolver()) { + if (!getResolver() + .equals(other.getResolver())) return false; + } + if (hasBucketFeature() != other.hasBucketFeature()) return false; + if (hasBucketFeature()) { + if (!getBucketFeature() + .equals(other.getBucketFeature())) return false; + } + if (getEnableProfiling() + != other.getEnableProfiling()) return false; + if (hasAggregateBackfillId() != other.hasAggregateBackfillId()) return false; + if (hasAggregateBackfillId()) { + if (!getAggregateBackfillId() + .equals(other.getAggregateBackfillId())) return false; + } + if (hasResourceGroup() != other.hasResourceGroup()) return false; + if (hasResourceGroup()) { + if (!getResourceGroup() + .equals(other.getResourceGroup())) return false; + } + if (!getQueryTagsList() + .equals(other.getQueryTagsList())) return false; + if (hasStoreOffline() != other.hasStoreOffline()) return false; + if (hasStoreOffline()) { + if (getStoreOffline() + != other.getStoreOffline()) return false; + } + if (hasUseMetaplanner() != other.hasUseMetaplanner()) return false; + if (hasUseMetaplanner()) { + if (getUseMetaplanner() + != other.getUseMetaplanner()) return false; + } + if (hasAllowEmptyTiles() != other.hasAllowEmptyTiles()) return false; + if (hasAllowEmptyTiles()) { + if (getAllowEmptyTiles() + != other.getAllowEmptyTiles()) return false; + } + if (hasStoreOnline() != other.hasStoreOnline()) return false; + if (hasStoreOnline()) { + if (getStoreOnline() + != other.getStoreOnline()) return false; + } + if (hasInputSql() != other.hasInputSql()) return false; + if (hasInputSql()) { + if (!getInputSql() + .equals(other.getInputSql())) return false; + } + if (hasNumShards() != other.hasNumShards()) return false; + if (hasNumShards()) { + if (getNumShards() + != other.getNumShards()) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getFeaturesCount() > 0) { + hash = (37 * hash) + FEATURES_FIELD_NUMBER; + hash = (53 * hash) + getFeaturesList().hashCode(); + } + if (hasLowerBound()) { + hash = (37 * hash) + LOWER_BOUND_FIELD_NUMBER; + hash = (53 * hash) + getLowerBound().hashCode(); + } + if (hasUpperBound()) { + hash = (37 * hash) + UPPER_BOUND_FIELD_NUMBER; + hash = (53 * hash) + getUpperBound().hashCode(); + } + if (hasResolver()) { + hash = (37 * hash) + RESOLVER_FIELD_NUMBER; + hash = (53 * hash) + getResolver().hashCode(); + } + if (hasBucketFeature()) { + hash = (37 * hash) + BUCKET_FEATURE_FIELD_NUMBER; + hash = (53 * hash) + getBucketFeature().hashCode(); + } + hash = (37 * hash) + ENABLE_PROFILING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getEnableProfiling()); + if (hasAggregateBackfillId()) { + hash = (37 * hash) + AGGREGATE_BACKFILL_ID_FIELD_NUMBER; + hash = (53 * hash) + getAggregateBackfillId().hashCode(); + } + if (hasResourceGroup()) { + hash = (37 * hash) + RESOURCE_GROUP_FIELD_NUMBER; + hash = (53 * hash) + getResourceGroup().hashCode(); + } + if (getQueryTagsCount() > 0) { + hash = (37 * hash) + QUERY_TAGS_FIELD_NUMBER; + hash = (53 * hash) + getQueryTagsList().hashCode(); + } + if (hasStoreOffline()) { + hash = (37 * hash) + STORE_OFFLINE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getStoreOffline()); + } + if (hasUseMetaplanner()) { + hash = (37 * hash) + USE_METAPLANNER_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getUseMetaplanner()); + } + if (hasAllowEmptyTiles()) { + hash = (37 * hash) + ALLOW_EMPTY_TILES_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getAllowEmptyTiles()); + } + if (hasStoreOnline()) { + hash = (37 * hash) + STORE_ONLINE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getStoreOnline()); + } + if (hasInputSql()) { + hash = (37 * hash) + INPUT_SQL_FIELD_NUMBER; + hash = (53 * hash) + getInputSql().hashCode(); + } + if (hasNumShards()) { + hash = (37 * hash) + NUM_SHARDS_FIELD_NUMBER; + hash = (53 * hash) + getNumShards(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.CreateAggregateBackfillJobRequest} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.CreateAggregateBackfillJobRequest) + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.class, ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getLowerBoundFieldBuilder(); + getUpperBoundFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + lowerBound_ = null; + if (lowerBoundBuilder_ != null) { + lowerBoundBuilder_.dispose(); + lowerBoundBuilder_ = null; + } + upperBound_ = null; + if (upperBoundBuilder_ != null) { + upperBoundBuilder_.dispose(); + upperBoundBuilder_ = null; + } + resolver_ = ""; + bucketFeature_ = ""; + enableProfiling_ = false; + aggregateBackfillId_ = ""; + resourceGroup_ = ""; + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + storeOffline_ = false; + useMetaplanner_ = false; + allowEmptyTiles_ = false; + storeOnline_ = false; + inputSql_ = ""; + numShards_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest build() { + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest result = new ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + features_.makeImmutable(); + result.features_ = features_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.lowerBound_ = lowerBoundBuilder_ == null + ? lowerBound_ + : lowerBoundBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.upperBound_ = upperBoundBuilder_ == null + ? upperBound_ + : upperBoundBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.resolver_ = resolver_; + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.bucketFeature_ = bucketFeature_; + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.enableProfiling_ = enableProfiling_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.aggregateBackfillId_ = aggregateBackfillId_; + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.resourceGroup_ = resourceGroup_; + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + queryTags_.makeImmutable(); + result.queryTags_ = queryTags_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.storeOffline_ = storeOffline_; + to_bitField0_ |= 0x00000040; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.useMetaplanner_ = useMetaplanner_; + to_bitField0_ |= 0x00000080; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.allowEmptyTiles_ = allowEmptyTiles_; + to_bitField0_ |= 0x00000100; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.storeOnline_ = storeOnline_; + to_bitField0_ |= 0x00000200; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.inputSql_ = inputSql_; + to_bitField0_ |= 0x00000400; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.numShards_ = numShards_; + to_bitField0_ |= 0x00000800; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest.getDefaultInstance()) return this; + if (!other.features_.isEmpty()) { + if (features_.isEmpty()) { + features_ = other.features_; + bitField0_ |= 0x00000001; + } else { + ensureFeaturesIsMutable(); + features_.addAll(other.features_); + } + onChanged(); + } + if (other.hasLowerBound()) { + mergeLowerBound(other.getLowerBound()); + } + if (other.hasUpperBound()) { + mergeUpperBound(other.getUpperBound()); + } + if (other.hasResolver()) { + resolver_ = other.resolver_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (other.hasBucketFeature()) { + bucketFeature_ = other.bucketFeature_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (other.getEnableProfiling() != false) { + setEnableProfiling(other.getEnableProfiling()); + } + if (other.hasAggregateBackfillId()) { + aggregateBackfillId_ = other.aggregateBackfillId_; + bitField0_ |= 0x00000040; + onChanged(); + } + if (other.hasResourceGroup()) { + resourceGroup_ = other.resourceGroup_; + bitField0_ |= 0x00000080; + onChanged(); + } + if (!other.queryTags_.isEmpty()) { + if (queryTags_.isEmpty()) { + queryTags_ = other.queryTags_; + bitField0_ |= 0x00000100; + } else { + ensureQueryTagsIsMutable(); + queryTags_.addAll(other.queryTags_); + } + onChanged(); + } + if (other.hasStoreOffline()) { + setStoreOffline(other.getStoreOffline()); + } + if (other.hasUseMetaplanner()) { + setUseMetaplanner(other.getUseMetaplanner()); + } + if (other.hasAllowEmptyTiles()) { + setAllowEmptyTiles(other.getAllowEmptyTiles()); + } + if (other.hasStoreOnline()) { + setStoreOnline(other.getStoreOnline()); + } + if (other.hasInputSql()) { + inputSql_ = other.inputSql_; + bitField0_ |= 0x00002000; + onChanged(); + } + if (other.hasNumShards()) { + setNumShards(other.getNumShards()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + java.lang.String s = input.readStringRequireUtf8(); + ensureFeaturesIsMutable(); + features_.add(s); + break; + } // case 10 + case 18: { + input.readMessage( + getLowerBoundFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + input.readMessage( + getUpperBoundFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + resolver_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 + case 42: { + bucketFeature_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 48: { + enableProfiling_ = input.readBool(); + bitField0_ |= 0x00000020; + break; + } // case 48 + case 58: { + aggregateBackfillId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000040; + break; + } // case 58 + case 66: { + resourceGroup_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000080; + break; + } // case 66 + case 74: { + java.lang.String s = input.readStringRequireUtf8(); + ensureQueryTagsIsMutable(); + queryTags_.add(s); + break; + } // case 74 + case 80: { + storeOffline_ = input.readBool(); + bitField0_ |= 0x00000200; + break; + } // case 80 + case 88: { + useMetaplanner_ = input.readBool(); + bitField0_ |= 0x00000400; + break; + } // case 88 + case 96: { + allowEmptyTiles_ = input.readBool(); + bitField0_ |= 0x00000800; + break; + } // case 96 + case 104: { + storeOnline_ = input.readBool(); + bitField0_ |= 0x00001000; + break; + } // case 104 + case 114: { + inputSql_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00002000; + break; + } // case 114 + case 120: { + numShards_ = input.readInt32(); + bitField0_ |= 0x00004000; + break; + } // case 120 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private com.google.protobuf.LazyStringArrayList features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureFeaturesIsMutable() { + if (!features_.isModifiable()) { + features_ = new com.google.protobuf.LazyStringArrayList(features_); + } + bitField0_ |= 0x00000001; + } + /** + * repeated string features = 1 [json_name = "features"]; + * @return A list containing the features. + */ + public com.google.protobuf.ProtocolStringList + getFeaturesList() { + features_.makeImmutable(); + return features_; + } + /** + * repeated string features = 1 [json_name = "features"]; + * @return The count of features. + */ + public int getFeaturesCount() { + return features_.size(); + } + /** + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + public java.lang.String getFeatures(int index) { + return features_.get(index); + } + /** + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + public com.google.protobuf.ByteString + getFeaturesBytes(int index) { + return features_.getByteString(index); + } + /** + * repeated string features = 1 [json_name = "features"]; + * @param index The index to set the value at. + * @param value The features to set. + * @return This builder for chaining. + */ + public Builder setFeatures( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFeaturesIsMutable(); + features_.set(index, value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * repeated string features = 1 [json_name = "features"]; + * @param value The features to add. + * @return This builder for chaining. + */ + public Builder addFeatures( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFeaturesIsMutable(); + features_.add(value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * repeated string features = 1 [json_name = "features"]; + * @param values The features to add. + * @return This builder for chaining. + */ + public Builder addAllFeatures( + java.lang.Iterable values) { + ensureFeaturesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, features_); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * repeated string features = 1 [json_name = "features"]; + * @return This builder for chaining. + */ + public Builder clearFeatures() { + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001);; + onChanged(); + return this; + } + /** + * repeated string features = 1 [json_name = "features"]; + * @param value The bytes of the features to add. + * @return This builder for chaining. + */ + public Builder addFeaturesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureFeaturesIsMutable(); + features_.add(value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp lowerBound_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> lowerBoundBuilder_; + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + * @return Whether the lowerBound field is set. + */ + public boolean hasLowerBound() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + * @return The lowerBound. + */ + public com.google.protobuf.Timestamp getLowerBound() { + if (lowerBoundBuilder_ == null) { + return lowerBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lowerBound_; + } else { + return lowerBoundBuilder_.getMessage(); + } + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + public Builder setLowerBound(com.google.protobuf.Timestamp value) { + if (lowerBoundBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + lowerBound_ = value; + } else { + lowerBoundBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + public Builder setLowerBound( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (lowerBoundBuilder_ == null) { + lowerBound_ = builderForValue.build(); + } else { + lowerBoundBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + public Builder mergeLowerBound(com.google.protobuf.Timestamp value) { + if (lowerBoundBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) && + lowerBound_ != null && + lowerBound_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getLowerBoundBuilder().mergeFrom(value); + } else { + lowerBound_ = value; + } + } else { + lowerBoundBuilder_.mergeFrom(value); + } + if (lowerBound_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + public Builder clearLowerBound() { + bitField0_ = (bitField0_ & ~0x00000002); + lowerBound_ = null; + if (lowerBoundBuilder_ != null) { + lowerBoundBuilder_.dispose(); + lowerBoundBuilder_ = null; + } + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + public com.google.protobuf.Timestamp.Builder getLowerBoundBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getLowerBoundFieldBuilder().getBuilder(); + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + public com.google.protobuf.TimestampOrBuilder getLowerBoundOrBuilder() { + if (lowerBoundBuilder_ != null) { + return lowerBoundBuilder_.getMessageOrBuilder(); + } else { + return lowerBound_ == null ? + com.google.protobuf.Timestamp.getDefaultInstance() : lowerBound_; + } + } + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> + getLowerBoundFieldBuilder() { + if (lowerBoundBuilder_ == null) { + lowerBoundBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( + getLowerBound(), + getParentForChildren(), + isClean()); + lowerBound_ = null; + } + return lowerBoundBuilder_; + } + + private com.google.protobuf.Timestamp upperBound_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> upperBoundBuilder_; + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + * @return Whether the upperBound field is set. + */ + public boolean hasUpperBound() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + * @return The upperBound. + */ + public com.google.protobuf.Timestamp getUpperBound() { + if (upperBoundBuilder_ == null) { + return upperBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; + } else { + return upperBoundBuilder_.getMessage(); + } + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + public Builder setUpperBound(com.google.protobuf.Timestamp value) { + if (upperBoundBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + upperBound_ = value; + } else { + upperBoundBuilder_.setMessage(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + public Builder setUpperBound( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (upperBoundBuilder_ == null) { + upperBound_ = builderForValue.build(); + } else { + upperBoundBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + public Builder mergeUpperBound(com.google.protobuf.Timestamp value) { + if (upperBoundBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0) && + upperBound_ != null && + upperBound_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpperBoundBuilder().mergeFrom(value); + } else { + upperBound_ = value; + } + } else { + upperBoundBuilder_.mergeFrom(value); + } + if (upperBound_ != null) { + bitField0_ |= 0x00000004; + onChanged(); + } + return this; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + public Builder clearUpperBound() { + bitField0_ = (bitField0_ & ~0x00000004); + upperBound_ = null; + if (upperBoundBuilder_ != null) { + upperBoundBuilder_.dispose(); + upperBoundBuilder_ = null; + } + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + public com.google.protobuf.Timestamp.Builder getUpperBoundBuilder() { + bitField0_ |= 0x00000004; + onChanged(); + return getUpperBoundFieldBuilder().getBuilder(); + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + public com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder() { + if (upperBoundBuilder_ != null) { + return upperBoundBuilder_.getMessageOrBuilder(); + } else { + return upperBound_ == null ? + com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; + } + } + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> + getUpperBoundFieldBuilder() { + if (upperBoundBuilder_ == null) { + upperBoundBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( + getUpperBound(), + getParentForChildren(), + isClean()); + upperBound_ = null; + } + return upperBoundBuilder_; + } + + private java.lang.Object resolver_ = ""; + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return Whether the resolver field is set. + */ + public boolean hasResolver() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return The resolver. + */ + public java.lang.String getResolver() { + java.lang.Object ref = resolver_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resolver_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return The bytes for resolver. + */ + public com.google.protobuf.ByteString + getResolverBytes() { + java.lang.Object ref = resolver_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resolver_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @param value The resolver to set. + * @return This builder for chaining. + */ + public Builder setResolver( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + resolver_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return This builder for chaining. + */ + public Builder clearResolver() { + resolver_ = getDefaultInstance().getResolver(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @param value The bytes for resolver to set. + * @return This builder for chaining. + */ + public Builder setResolverBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + resolver_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private java.lang.Object bucketFeature_ = ""; + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return Whether the bucketFeature field is set. + */ + public boolean hasBucketFeature() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return The bucketFeature. + */ + public java.lang.String getBucketFeature() { + java.lang.Object ref = bucketFeature_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + bucketFeature_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return The bytes for bucketFeature. + */ + public com.google.protobuf.ByteString + getBucketFeatureBytes() { + java.lang.Object ref = bucketFeature_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + bucketFeature_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @param value The bucketFeature to set. + * @return This builder for chaining. + */ + public Builder setBucketFeature( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + bucketFeature_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return This builder for chaining. + */ + public Builder clearBucketFeature() { + bucketFeature_ = getDefaultInstance().getBucketFeature(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @param value The bytes for bucketFeature to set. + * @return This builder for chaining. + */ + public Builder setBucketFeatureBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + bucketFeature_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private boolean enableProfiling_ ; + /** + * bool enable_profiling = 6 [json_name = "enableProfiling"]; + * @return The enableProfiling. + */ + @java.lang.Override + public boolean getEnableProfiling() { + return enableProfiling_; + } + /** + * bool enable_profiling = 6 [json_name = "enableProfiling"]; + * @param value The enableProfiling to set. + * @return This builder for chaining. + */ + public Builder setEnableProfiling(boolean value) { + + enableProfiling_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * bool enable_profiling = 6 [json_name = "enableProfiling"]; + * @return This builder for chaining. + */ + public Builder clearEnableProfiling() { + bitField0_ = (bitField0_ & ~0x00000020); + enableProfiling_ = false; + onChanged(); + return this; + } + + private java.lang.Object aggregateBackfillId_ = ""; + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return Whether the aggregateBackfillId field is set. + */ + public boolean hasAggregateBackfillId() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return The aggregateBackfillId. + */ + public java.lang.String getAggregateBackfillId() { + java.lang.Object ref = aggregateBackfillId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + aggregateBackfillId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return The bytes for aggregateBackfillId. + */ + public com.google.protobuf.ByteString + getAggregateBackfillIdBytes() { + java.lang.Object ref = aggregateBackfillId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + aggregateBackfillId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @param value The aggregateBackfillId to set. + * @return This builder for chaining. + */ + public Builder setAggregateBackfillId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + aggregateBackfillId_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return This builder for chaining. + */ + public Builder clearAggregateBackfillId() { + aggregateBackfillId_ = getDefaultInstance().getAggregateBackfillId(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + return this; + } + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @param value The bytes for aggregateBackfillId to set. + * @return This builder for chaining. + */ + public Builder setAggregateBackfillIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + aggregateBackfillId_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + private java.lang.Object resourceGroup_ = ""; + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + public boolean hasResourceGroup() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + public java.lang.String getResourceGroup() { + java.lang.Object ref = resourceGroup_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceGroup_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + public com.google.protobuf.ByteString + getResourceGroupBytes() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceGroup_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @param value The resourceGroup to set. + * @return This builder for chaining. + */ + public Builder setResourceGroup( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + resourceGroup_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return This builder for chaining. + */ + public Builder clearResourceGroup() { + resourceGroup_ = getDefaultInstance().getResourceGroup(); + bitField0_ = (bitField0_ & ~0x00000080); + onChanged(); + return this; + } + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @param value The bytes for resourceGroup to set. + * @return This builder for chaining. + */ + public Builder setResourceGroupBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + resourceGroup_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureQueryTagsIsMutable() { + if (!queryTags_.isModifiable()) { + queryTags_ = new com.google.protobuf.LazyStringArrayList(queryTags_); + } + bitField0_ |= 0x00000100; + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + public com.google.protobuf.ProtocolStringList + getQueryTagsList() { + queryTags_.makeImmutable(); + return queryTags_; + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + public int getQueryTagsCount() { + return queryTags_.size(); + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + public java.lang.String getQueryTags(int index) { + return queryTags_.get(index); + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + public com.google.protobuf.ByteString + getQueryTagsBytes(int index) { + return queryTags_.getByteString(index); + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param index The index to set the value at. + * @param value The queryTags to set. + * @return This builder for chaining. + */ + public Builder setQueryTags( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureQueryTagsIsMutable(); + queryTags_.set(index, value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param value The queryTags to add. + * @return This builder for chaining. + */ + public Builder addQueryTags( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureQueryTagsIsMutable(); + queryTags_.add(value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param values The queryTags to add. + * @return This builder for chaining. + */ + public Builder addAllQueryTags( + java.lang.Iterable values) { + ensureQueryTagsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, queryTags_); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @return This builder for chaining. + */ + public Builder clearQueryTags() { + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000100);; + onChanged(); + return this; + } + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param value The bytes of the queryTags to add. + * @return This builder for chaining. + */ + public Builder addQueryTagsBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureQueryTagsIsMutable(); + queryTags_.add(value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + + private boolean storeOffline_ ; + /** + * optional bool store_offline = 10 [json_name = "storeOffline"]; + * @return Whether the storeOffline field is set. + */ + @java.lang.Override + public boolean hasStoreOffline() { + return ((bitField0_ & 0x00000200) != 0); + } + /** + * optional bool store_offline = 10 [json_name = "storeOffline"]; + * @return The storeOffline. + */ + @java.lang.Override + public boolean getStoreOffline() { + return storeOffline_; + } + /** + * optional bool store_offline = 10 [json_name = "storeOffline"]; + * @param value The storeOffline to set. + * @return This builder for chaining. + */ + public Builder setStoreOffline(boolean value) { + + storeOffline_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * optional bool store_offline = 10 [json_name = "storeOffline"]; + * @return This builder for chaining. + */ + public Builder clearStoreOffline() { + bitField0_ = (bitField0_ & ~0x00000200); + storeOffline_ = false; + onChanged(); + return this; + } + + private boolean useMetaplanner_ ; + /** + * optional bool use_metaplanner = 11 [json_name = "useMetaplanner"]; + * @return Whether the useMetaplanner field is set. + */ + @java.lang.Override + public boolean hasUseMetaplanner() { + return ((bitField0_ & 0x00000400) != 0); + } + /** + * optional bool use_metaplanner = 11 [json_name = "useMetaplanner"]; + * @return The useMetaplanner. + */ + @java.lang.Override + public boolean getUseMetaplanner() { + return useMetaplanner_; + } + /** + * optional bool use_metaplanner = 11 [json_name = "useMetaplanner"]; + * @param value The useMetaplanner to set. + * @return This builder for chaining. + */ + public Builder setUseMetaplanner(boolean value) { + + useMetaplanner_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * optional bool use_metaplanner = 11 [json_name = "useMetaplanner"]; + * @return This builder for chaining. + */ + public Builder clearUseMetaplanner() { + bitField0_ = (bitField0_ & ~0x00000400); + useMetaplanner_ = false; + onChanged(); + return this; + } + + private boolean allowEmptyTiles_ ; + /** + * optional bool allow_empty_tiles = 12 [json_name = "allowEmptyTiles"]; + * @return Whether the allowEmptyTiles field is set. + */ + @java.lang.Override + public boolean hasAllowEmptyTiles() { + return ((bitField0_ & 0x00000800) != 0); + } + /** + * optional bool allow_empty_tiles = 12 [json_name = "allowEmptyTiles"]; + * @return The allowEmptyTiles. + */ + @java.lang.Override + public boolean getAllowEmptyTiles() { + return allowEmptyTiles_; + } + /** + * optional bool allow_empty_tiles = 12 [json_name = "allowEmptyTiles"]; + * @param value The allowEmptyTiles to set. + * @return This builder for chaining. + */ + public Builder setAllowEmptyTiles(boolean value) { + + allowEmptyTiles_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * optional bool allow_empty_tiles = 12 [json_name = "allowEmptyTiles"]; + * @return This builder for chaining. + */ + public Builder clearAllowEmptyTiles() { + bitField0_ = (bitField0_ & ~0x00000800); + allowEmptyTiles_ = false; + onChanged(); + return this; + } + + private boolean storeOnline_ ; + /** + * optional bool store_online = 13 [json_name = "storeOnline"]; + * @return Whether the storeOnline field is set. + */ + @java.lang.Override + public boolean hasStoreOnline() { + return ((bitField0_ & 0x00001000) != 0); + } + /** + * optional bool store_online = 13 [json_name = "storeOnline"]; + * @return The storeOnline. + */ + @java.lang.Override + public boolean getStoreOnline() { + return storeOnline_; + } + /** + * optional bool store_online = 13 [json_name = "storeOnline"]; + * @param value The storeOnline to set. + * @return This builder for chaining. + */ + public Builder setStoreOnline(boolean value) { + + storeOnline_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * optional bool store_online = 13 [json_name = "storeOnline"]; + * @return This builder for chaining. + */ + public Builder clearStoreOnline() { + bitField0_ = (bitField0_ & ~0x00001000); + storeOnline_ = false; + onChanged(); + return this; + } + + private java.lang.Object inputSql_ = ""; + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + public boolean hasInputSql() { + return ((bitField0_ & 0x00002000) != 0); + } + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return The inputSql. + */ + public java.lang.String getInputSql() { + java.lang.Object ref = inputSql_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + inputSql_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + public com.google.protobuf.ByteString + getInputSqlBytes() { + java.lang.Object ref = inputSql_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + inputSql_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @param value The inputSql to set. + * @return This builder for chaining. + */ + public Builder setInputSql( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + inputSql_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return This builder for chaining. + */ + public Builder clearInputSql() { + inputSql_ = getDefaultInstance().getInputSql(); + bitField0_ = (bitField0_ & ~0x00002000); + onChanged(); + return this; + } + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @param value The bytes for inputSql to set. + * @return This builder for chaining. + */ + public Builder setInputSqlBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + inputSql_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + + private int numShards_ ; + /** + *
+     * Split this backfill's window into this many bucket-aligned time-sharded
+     * jobs. Unset/1 preserves the single-job behavior.
+     * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return Whether the numShards field is set. + */ + @java.lang.Override + public boolean hasNumShards() { + return ((bitField0_ & 0x00004000) != 0); + } + /** + *
+     * Split this backfill's window into this many bucket-aligned time-sharded
+     * jobs. Unset/1 preserves the single-job behavior.
+     * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return The numShards. + */ + @java.lang.Override + public int getNumShards() { + return numShards_; + } + /** + *
+     * Split this backfill's window into this many bucket-aligned time-sharded
+     * jobs. Unset/1 preserves the single-job behavior.
+     * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @param value The numShards to set. + * @return This builder for chaining. + */ + public Builder setNumShards(int value) { + + numShards_ = value; + bitField0_ |= 0x00004000; + onChanged(); + return this; + } + /** + *
+     * Split this backfill's window into this many bucket-aligned time-sharded
+     * jobs. Unset/1 preserves the single-job behavior.
+     * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return This builder for chaining. + */ + public Builder clearNumShards() { + bitField0_ = (bitField0_ & ~0x00004000); + numShards_ = 0; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.CreateAggregateBackfillJobRequest) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.CreateAggregateBackfillJobRequest) + private static final ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CreateAggregateBackfillJobRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobRequestOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobRequestOrBuilder.java new file mode 100644 index 00000000..599e91fd --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobRequestOrBuilder.java @@ -0,0 +1,246 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface CreateAggregateBackfillJobRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.CreateAggregateBackfillJobRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * repeated string features = 1 [json_name = "features"]; + * @return A list containing the features. + */ + java.util.List + getFeaturesList(); + /** + * repeated string features = 1 [json_name = "features"]; + * @return The count of features. + */ + int getFeaturesCount(); + /** + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + java.lang.String getFeatures(int index); + /** + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + com.google.protobuf.ByteString + getFeaturesBytes(int index); + + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + * @return Whether the lowerBound field is set. + */ + boolean hasLowerBound(); + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + * @return The lowerBound. + */ + com.google.protobuf.Timestamp getLowerBound(); + /** + * optional .google.protobuf.Timestamp lower_bound = 2 [json_name = "lowerBound"]; + */ + com.google.protobuf.TimestampOrBuilder getLowerBoundOrBuilder(); + + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + * @return Whether the upperBound field is set. + */ + boolean hasUpperBound(); + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + * @return The upperBound. + */ + com.google.protobuf.Timestamp getUpperBound(); + /** + * optional .google.protobuf.Timestamp upper_bound = 3 [json_name = "upperBound"]; + */ + com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder(); + + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return Whether the resolver field is set. + */ + boolean hasResolver(); + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return The resolver. + */ + java.lang.String getResolver(); + /** + * optional string resolver = 4 [json_name = "resolver"]; + * @return The bytes for resolver. + */ + com.google.protobuf.ByteString + getResolverBytes(); + + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return Whether the bucketFeature field is set. + */ + boolean hasBucketFeature(); + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return The bucketFeature. + */ + java.lang.String getBucketFeature(); + /** + * optional string bucket_feature = 5 [json_name = "bucketFeature"]; + * @return The bytes for bucketFeature. + */ + com.google.protobuf.ByteString + getBucketFeatureBytes(); + + /** + * bool enable_profiling = 6 [json_name = "enableProfiling"]; + * @return The enableProfiling. + */ + boolean getEnableProfiling(); + + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return Whether the aggregateBackfillId field is set. + */ + boolean hasAggregateBackfillId(); + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return The aggregateBackfillId. + */ + java.lang.String getAggregateBackfillId(); + /** + * optional string aggregate_backfill_id = 7 [json_name = "aggregateBackfillId"]; + * @return The bytes for aggregateBackfillId. + */ + com.google.protobuf.ByteString + getAggregateBackfillIdBytes(); + + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + boolean hasResourceGroup(); + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + java.lang.String getResourceGroup(); + /** + * optional string resource_group = 8 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + com.google.protobuf.ByteString + getResourceGroupBytes(); + + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + java.util.List + getQueryTagsList(); + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + int getQueryTagsCount(); + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + java.lang.String getQueryTags(int index); + /** + * repeated string query_tags = 9 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + com.google.protobuf.ByteString + getQueryTagsBytes(int index); + + /** + * optional bool store_offline = 10 [json_name = "storeOffline"]; + * @return Whether the storeOffline field is set. + */ + boolean hasStoreOffline(); + /** + * optional bool store_offline = 10 [json_name = "storeOffline"]; + * @return The storeOffline. + */ + boolean getStoreOffline(); + + /** + * optional bool use_metaplanner = 11 [json_name = "useMetaplanner"]; + * @return Whether the useMetaplanner field is set. + */ + boolean hasUseMetaplanner(); + /** + * optional bool use_metaplanner = 11 [json_name = "useMetaplanner"]; + * @return The useMetaplanner. + */ + boolean getUseMetaplanner(); + + /** + * optional bool allow_empty_tiles = 12 [json_name = "allowEmptyTiles"]; + * @return Whether the allowEmptyTiles field is set. + */ + boolean hasAllowEmptyTiles(); + /** + * optional bool allow_empty_tiles = 12 [json_name = "allowEmptyTiles"]; + * @return The allowEmptyTiles. + */ + boolean getAllowEmptyTiles(); + + /** + * optional bool store_online = 13 [json_name = "storeOnline"]; + * @return Whether the storeOnline field is set. + */ + boolean hasStoreOnline(); + /** + * optional bool store_online = 13 [json_name = "storeOnline"]; + * @return The storeOnline. + */ + boolean getStoreOnline(); + + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + boolean hasInputSql(); + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return The inputSql. + */ + java.lang.String getInputSql(); + /** + * optional string input_sql = 14 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + com.google.protobuf.ByteString + getInputSqlBytes(); + + /** + *
+   * Split this backfill's window into this many bucket-aligned time-sharded
+   * jobs. Unset/1 preserves the single-job behavior.
+   * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return Whether the numShards field is set. + */ + boolean hasNumShards(); + /** + *
+   * Split this backfill's window into this many bucket-aligned time-sharded
+   * jobs. Unset/1 preserves the single-job behavior.
+   * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return The numShards. + */ + int getNumShards(); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobResponse.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobResponse.java new file mode 100644 index 00000000..3439ec24 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobResponse.java @@ -0,0 +1,1085 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.CreateAggregateBackfillJobResponse} + */ +public final class CreateAggregateBackfillJobResponse extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.CreateAggregateBackfillJobResponse) + CreateAggregateBackfillJobResponseOrBuilder { +private static final long serialVersionUID = 0L; + // Use CreateAggregateBackfillJobResponse.newBuilder() to construct. + private CreateAggregateBackfillJobResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private CreateAggregateBackfillJobResponse() { + jobId_ = ""; + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + errors_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new CreateAggregateBackfillJobResponse(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.class, ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.Builder.class); + } + + public static final int JOB_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object jobId_ = ""; + /** + * string job_id = 1 [json_name = "jobId"]; + * @return The jobId. + */ + @java.lang.Override + public java.lang.String getJobId() { + java.lang.Object ref = jobId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + jobId_ = s; + return s; + } + } + /** + * string job_id = 1 [json_name = "jobId"]; + * @return The bytes for jobId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getJobIdBytes() { + java.lang.Object ref = jobId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + jobId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int FEATURES_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string features = 2 [json_name = "features"]; + * @return A list containing the features. + */ + public com.google.protobuf.ProtocolStringList + getFeaturesList() { + return features_; + } + /** + * repeated string features = 2 [json_name = "features"]; + * @return The count of features. + */ + public int getFeaturesCount() { + return features_.size(); + } + /** + * repeated string features = 2 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + public java.lang.String getFeatures(int index) { + return features_.get(index); + } + /** + * repeated string features = 2 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + public com.google.protobuf.ByteString + getFeaturesBytes(int index) { + return features_.getByteString(index); + } + + public static final int ERRORS_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private java.util.List errors_; + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + @java.lang.Override + public java.util.List getErrorsList() { + return errors_; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + @java.lang.Override + public java.util.List + getErrorsOrBuilderList() { + return errors_; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + @java.lang.Override + public int getErrorsCount() { + return errors_.size(); + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.common.v1.ChalkError getErrors(int index) { + return errors_.get(index); + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.common.v1.ChalkErrorOrBuilder getErrorsOrBuilder( + int index) { + return errors_.get(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(jobId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, jobId_); + } + for (int i = 0; i < features_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, features_.getRaw(i)); + } + for (int i = 0; i < errors_.size(); i++) { + output.writeMessage(3, errors_.get(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(jobId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, jobId_); + } + { + int dataSize = 0; + for (int i = 0; i < features_.size(); i++) { + dataSize += computeStringSizeNoTag(features_.getRaw(i)); + } + size += dataSize; + size += 1 * getFeaturesList().size(); + } + for (int i = 0; i < errors_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, errors_.get(i)); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse other = (ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse) obj; + + if (!getJobId() + .equals(other.getJobId())) return false; + if (!getFeaturesList() + .equals(other.getFeaturesList())) return false; + if (!getErrorsList() + .equals(other.getErrorsList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + JOB_ID_FIELD_NUMBER; + hash = (53 * hash) + getJobId().hashCode(); + if (getFeaturesCount() > 0) { + hash = (37 * hash) + FEATURES_FIELD_NUMBER; + hash = (53 * hash) + getFeaturesList().hashCode(); + } + if (getErrorsCount() > 0) { + hash = (37 * hash) + ERRORS_FIELD_NUMBER; + hash = (53 * hash) + getErrorsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.CreateAggregateBackfillJobResponse} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.CreateAggregateBackfillJobResponse) + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.class, ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + jobId_ = ""; + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + if (errorsBuilder_ == null) { + errors_ = java.util.Collections.emptyList(); + } else { + errors_ = null; + errorsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000004); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse build() { + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse result = new ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse result) { + if (errorsBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + errors_ = java.util.Collections.unmodifiableList(errors_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.errors_ = errors_; + } else { + result.errors_ = errorsBuilder_.build(); + } + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.jobId_ = jobId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + features_.makeImmutable(); + result.features_ = features_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse.getDefaultInstance()) return this; + if (!other.getJobId().isEmpty()) { + jobId_ = other.jobId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.features_.isEmpty()) { + if (features_.isEmpty()) { + features_ = other.features_; + bitField0_ |= 0x00000002; + } else { + ensureFeaturesIsMutable(); + features_.addAll(other.features_); + } + onChanged(); + } + if (errorsBuilder_ == null) { + if (!other.errors_.isEmpty()) { + if (errors_.isEmpty()) { + errors_ = other.errors_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureErrorsIsMutable(); + errors_.addAll(other.errors_); + } + onChanged(); + } + } else { + if (!other.errors_.isEmpty()) { + if (errorsBuilder_.isEmpty()) { + errorsBuilder_.dispose(); + errorsBuilder_ = null; + errors_ = other.errors_; + bitField0_ = (bitField0_ & ~0x00000004); + errorsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getErrorsFieldBuilder() : null; + } else { + errorsBuilder_.addAllMessages(other.errors_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + jobId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + ensureFeaturesIsMutable(); + features_.add(s); + break; + } // case 18 + case 26: { + ai.chalk.protos.chalk.common.v1.ChalkError m = + input.readMessage( + ai.chalk.protos.chalk.common.v1.ChalkError.parser(), + extensionRegistry); + if (errorsBuilder_ == null) { + ensureErrorsIsMutable(); + errors_.add(m); + } else { + errorsBuilder_.addMessage(m); + } + break; + } // case 26 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object jobId_ = ""; + /** + * string job_id = 1 [json_name = "jobId"]; + * @return The jobId. + */ + public java.lang.String getJobId() { + java.lang.Object ref = jobId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + jobId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string job_id = 1 [json_name = "jobId"]; + * @return The bytes for jobId. + */ + public com.google.protobuf.ByteString + getJobIdBytes() { + java.lang.Object ref = jobId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + jobId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string job_id = 1 [json_name = "jobId"]; + * @param value The jobId to set. + * @return This builder for chaining. + */ + public Builder setJobId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + jobId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string job_id = 1 [json_name = "jobId"]; + * @return This builder for chaining. + */ + public Builder clearJobId() { + jobId_ = getDefaultInstance().getJobId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string job_id = 1 [json_name = "jobId"]; + * @param value The bytes for jobId to set. + * @return This builder for chaining. + */ + public Builder setJobIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + jobId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureFeaturesIsMutable() { + if (!features_.isModifiable()) { + features_ = new com.google.protobuf.LazyStringArrayList(features_); + } + bitField0_ |= 0x00000002; + } + /** + * repeated string features = 2 [json_name = "features"]; + * @return A list containing the features. + */ + public com.google.protobuf.ProtocolStringList + getFeaturesList() { + features_.makeImmutable(); + return features_; + } + /** + * repeated string features = 2 [json_name = "features"]; + * @return The count of features. + */ + public int getFeaturesCount() { + return features_.size(); + } + /** + * repeated string features = 2 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + public java.lang.String getFeatures(int index) { + return features_.get(index); + } + /** + * repeated string features = 2 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + public com.google.protobuf.ByteString + getFeaturesBytes(int index) { + return features_.getByteString(index); + } + /** + * repeated string features = 2 [json_name = "features"]; + * @param index The index to set the value at. + * @param value The features to set. + * @return This builder for chaining. + */ + public Builder setFeatures( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFeaturesIsMutable(); + features_.set(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string features = 2 [json_name = "features"]; + * @param value The features to add. + * @return This builder for chaining. + */ + public Builder addFeatures( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFeaturesIsMutable(); + features_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string features = 2 [json_name = "features"]; + * @param values The features to add. + * @return This builder for chaining. + */ + public Builder addAllFeatures( + java.lang.Iterable values) { + ensureFeaturesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, features_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string features = 2 [json_name = "features"]; + * @return This builder for chaining. + */ + public Builder clearFeatures() { + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002);; + onChanged(); + return this; + } + /** + * repeated string features = 2 [json_name = "features"]; + * @param value The bytes of the features to add. + * @return This builder for chaining. + */ + public Builder addFeaturesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureFeaturesIsMutable(); + features_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.util.List errors_ = + java.util.Collections.emptyList(); + private void ensureErrorsIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + errors_ = new java.util.ArrayList(errors_); + bitField0_ |= 0x00000004; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.common.v1.ChalkError, ai.chalk.protos.chalk.common.v1.ChalkError.Builder, ai.chalk.protos.chalk.common.v1.ChalkErrorOrBuilder> errorsBuilder_; + + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public java.util.List getErrorsList() { + if (errorsBuilder_ == null) { + return java.util.Collections.unmodifiableList(errors_); + } else { + return errorsBuilder_.getMessageList(); + } + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public int getErrorsCount() { + if (errorsBuilder_ == null) { + return errors_.size(); + } else { + return errorsBuilder_.getCount(); + } + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public ai.chalk.protos.chalk.common.v1.ChalkError getErrors(int index) { + if (errorsBuilder_ == null) { + return errors_.get(index); + } else { + return errorsBuilder_.getMessage(index); + } + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder setErrors( + int index, ai.chalk.protos.chalk.common.v1.ChalkError value) { + if (errorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureErrorsIsMutable(); + errors_.set(index, value); + onChanged(); + } else { + errorsBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder setErrors( + int index, ai.chalk.protos.chalk.common.v1.ChalkError.Builder builderForValue) { + if (errorsBuilder_ == null) { + ensureErrorsIsMutable(); + errors_.set(index, builderForValue.build()); + onChanged(); + } else { + errorsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder addErrors(ai.chalk.protos.chalk.common.v1.ChalkError value) { + if (errorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureErrorsIsMutable(); + errors_.add(value); + onChanged(); + } else { + errorsBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder addErrors( + int index, ai.chalk.protos.chalk.common.v1.ChalkError value) { + if (errorsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureErrorsIsMutable(); + errors_.add(index, value); + onChanged(); + } else { + errorsBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder addErrors( + ai.chalk.protos.chalk.common.v1.ChalkError.Builder builderForValue) { + if (errorsBuilder_ == null) { + ensureErrorsIsMutable(); + errors_.add(builderForValue.build()); + onChanged(); + } else { + errorsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder addErrors( + int index, ai.chalk.protos.chalk.common.v1.ChalkError.Builder builderForValue) { + if (errorsBuilder_ == null) { + ensureErrorsIsMutable(); + errors_.add(index, builderForValue.build()); + onChanged(); + } else { + errorsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder addAllErrors( + java.lang.Iterable values) { + if (errorsBuilder_ == null) { + ensureErrorsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, errors_); + onChanged(); + } else { + errorsBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder clearErrors() { + if (errorsBuilder_ == null) { + errors_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + errorsBuilder_.clear(); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public Builder removeErrors(int index) { + if (errorsBuilder_ == null) { + ensureErrorsIsMutable(); + errors_.remove(index); + onChanged(); + } else { + errorsBuilder_.remove(index); + } + return this; + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public ai.chalk.protos.chalk.common.v1.ChalkError.Builder getErrorsBuilder( + int index) { + return getErrorsFieldBuilder().getBuilder(index); + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public ai.chalk.protos.chalk.common.v1.ChalkErrorOrBuilder getErrorsOrBuilder( + int index) { + if (errorsBuilder_ == null) { + return errors_.get(index); } else { + return errorsBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public java.util.List + getErrorsOrBuilderList() { + if (errorsBuilder_ != null) { + return errorsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(errors_); + } + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public ai.chalk.protos.chalk.common.v1.ChalkError.Builder addErrorsBuilder() { + return getErrorsFieldBuilder().addBuilder( + ai.chalk.protos.chalk.common.v1.ChalkError.getDefaultInstance()); + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public ai.chalk.protos.chalk.common.v1.ChalkError.Builder addErrorsBuilder( + int index) { + return getErrorsFieldBuilder().addBuilder( + index, ai.chalk.protos.chalk.common.v1.ChalkError.getDefaultInstance()); + } + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + public java.util.List + getErrorsBuilderList() { + return getErrorsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.common.v1.ChalkError, ai.chalk.protos.chalk.common.v1.ChalkError.Builder, ai.chalk.protos.chalk.common.v1.ChalkErrorOrBuilder> + getErrorsFieldBuilder() { + if (errorsBuilder_ == null) { + errorsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.common.v1.ChalkError, ai.chalk.protos.chalk.common.v1.ChalkError.Builder, ai.chalk.protos.chalk.common.v1.ChalkErrorOrBuilder>( + errors_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + errors_ = null; + } + return errorsBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.CreateAggregateBackfillJobResponse) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.CreateAggregateBackfillJobResponse) + private static final ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CreateAggregateBackfillJobResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobResponseOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobResponseOrBuilder.java new file mode 100644 index 00000000..09a1ada4 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillJobResponseOrBuilder.java @@ -0,0 +1,71 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface CreateAggregateBackfillJobResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.CreateAggregateBackfillJobResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * string job_id = 1 [json_name = "jobId"]; + * @return The jobId. + */ + java.lang.String getJobId(); + /** + * string job_id = 1 [json_name = "jobId"]; + * @return The bytes for jobId. + */ + com.google.protobuf.ByteString + getJobIdBytes(); + + /** + * repeated string features = 2 [json_name = "features"]; + * @return A list containing the features. + */ + java.util.List + getFeaturesList(); + /** + * repeated string features = 2 [json_name = "features"]; + * @return The count of features. + */ + int getFeaturesCount(); + /** + * repeated string features = 2 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + java.lang.String getFeatures(int index); + /** + * repeated string features = 2 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + com.google.protobuf.ByteString + getFeaturesBytes(int index); + + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + java.util.List + getErrorsList(); + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + ai.chalk.protos.chalk.common.v1.ChalkError getErrors(int index); + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + int getErrorsCount(); + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + java.util.List + getErrorsOrBuilderList(); + /** + * repeated .chalk.common.v1.ChalkError errors = 3 [json_name = "errors"]; + */ + ai.chalk.protos.chalk.common.v1.ChalkErrorOrBuilder getErrorsOrBuilder( + int index); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2Request.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2Request.java new file mode 100644 index 00000000..2e123cea --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2Request.java @@ -0,0 +1,2692 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.CreateAggregateBackfillV2Request} + */ +public final class CreateAggregateBackfillV2Request extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.CreateAggregateBackfillV2Request) + CreateAggregateBackfillV2RequestOrBuilder { +private static final long serialVersionUID = 0L; + // Use CreateAggregateBackfillV2Request.newBuilder() to construct. + private CreateAggregateBackfillV2Request(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private CreateAggregateBackfillV2Request() { + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + resolver_ = ""; + inputSql_ = ""; + tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + resourceGroup_ = ""; + mode_ = 0; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new CreateAggregateBackfillV2Request(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + @java.lang.Override + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 13: + return internalGetPlannerOptions(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.class, ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.Builder.class); + } + + private int bitField0_; + public static final int FEATURES_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + *
+   * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+   * request can change independently of the planner's own input message, in either direction.
+   * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @return A list containing the features. + */ + public com.google.protobuf.ProtocolStringList + getFeaturesList() { + return features_; + } + /** + *
+   * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+   * request can change independently of the planner's own input message, in either direction.
+   * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @return The count of features. + */ + public int getFeaturesCount() { + return features_.size(); + } + /** + *
+   * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+   * request can change independently of the planner's own input message, in either direction.
+   * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + public java.lang.String getFeatures(int index) { + return features_.get(index); + } + /** + *
+   * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+   * request can change independently of the planner's own input message, in either direction.
+   * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + public com.google.protobuf.ByteString + getFeaturesBytes(int index) { + return features_.getByteString(index); + } + + public static final int RESOLVER_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object resolver_ = ""; + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return Whether the resolver field is set. + */ + @java.lang.Override + public boolean hasResolver() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return The resolver. + */ + @java.lang.Override + public java.lang.String getResolver() { + java.lang.Object ref = resolver_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resolver_ = s; + return s; + } + } + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return The bytes for resolver. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getResolverBytes() { + java.lang.Object ref = resolver_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resolver_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int INPUT_SQL_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object inputSql_ = ""; + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + @java.lang.Override + public boolean hasInputSql() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return The inputSql. + */ + @java.lang.Override + public java.lang.String getInputSql() { + java.lang.Object ref = inputSql_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + inputSql_ = s; + return s; + } + } + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getInputSqlBytes() { + java.lang.Object ref = inputSql_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + inputSql_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int LOWER_BOUND_FIELD_NUMBER = 4; + private com.google.protobuf.Timestamp lowerBound_; + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + * @return Whether the lowerBound field is set. + */ + @java.lang.Override + public boolean hasLowerBound() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + * @return The lowerBound. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getLowerBound() { + return lowerBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lowerBound_; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getLowerBoundOrBuilder() { + return lowerBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lowerBound_; + } + + public static final int UPPER_BOUND_FIELD_NUMBER = 5; + private com.google.protobuf.Timestamp upperBound_; + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + * @return Whether the upperBound field is set. + */ + @java.lang.Override + public boolean hasUpperBound() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + * @return The upperBound. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpperBound() { + return upperBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder() { + return upperBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; + } + + public static final int TAGS_FIELD_NUMBER = 6; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string tags = 6 [json_name = "tags"]; + * @return A list containing the tags. + */ + public com.google.protobuf.ProtocolStringList + getTagsList() { + return tags_; + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @return The count of tags. + */ + public int getTagsCount() { + return tags_.size(); + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param index The index of the element to return. + * @return The tags at the given index. + */ + public java.lang.String getTags(int index) { + return tags_.get(index); + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + public com.google.protobuf.ByteString + getTagsBytes(int index) { + return tags_.getByteString(index); + } + + public static final int EXACT_FIELD_NUMBER = 7; + private boolean exact_ = false; + /** + * bool exact = 7 [json_name = "exact"]; + * @return The exact. + */ + @java.lang.Override + public boolean getExact() { + return exact_; + } + + public static final int STORE_ONLINE_FIELD_NUMBER = 8; + private boolean storeOnline_ = false; + /** + *
+   * How to run it, applied identically to every job produced by the plan.
+   * Storage targets: both unset means online only, and both explicitly false is a test
+   * run that computes tiles and writes them only to the job's dataset.
+   * 
+ * + * optional bool store_online = 8 [json_name = "storeOnline"]; + * @return Whether the storeOnline field is set. + */ + @java.lang.Override + public boolean hasStoreOnline() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + *
+   * How to run it, applied identically to every job produced by the plan.
+   * Storage targets: both unset means online only, and both explicitly false is a test
+   * run that computes tiles and writes them only to the job's dataset.
+   * 
+ * + * optional bool store_online = 8 [json_name = "storeOnline"]; + * @return The storeOnline. + */ + @java.lang.Override + public boolean getStoreOnline() { + return storeOnline_; + } + + public static final int STORE_OFFLINE_FIELD_NUMBER = 9; + private boolean storeOffline_ = false; + /** + * optional bool store_offline = 9 [json_name = "storeOffline"]; + * @return Whether the storeOffline field is set. + */ + @java.lang.Override + public boolean hasStoreOffline() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * optional bool store_offline = 9 [json_name = "storeOffline"]; + * @return The storeOffline. + */ + @java.lang.Override + public boolean getStoreOffline() { + return storeOffline_; + } + + public static final int ALLOW_EMPTY_TILES_FIELD_NUMBER = 10; + private boolean allowEmptyTiles_ = false; + /** + * optional bool allow_empty_tiles = 10 [json_name = "allowEmptyTiles"]; + * @return Whether the allowEmptyTiles field is set. + */ + @java.lang.Override + public boolean hasAllowEmptyTiles() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + * optional bool allow_empty_tiles = 10 [json_name = "allowEmptyTiles"]; + * @return The allowEmptyTiles. + */ + @java.lang.Override + public boolean getAllowEmptyTiles() { + return allowEmptyTiles_; + } + + public static final int ENABLE_PROFILING_FIELD_NUMBER = 11; + private boolean enableProfiling_ = false; + /** + * bool enable_profiling = 11 [json_name = "enableProfiling"]; + * @return The enableProfiling. + */ + @java.lang.Override + public boolean getEnableProfiling() { + return enableProfiling_; + } + + public static final int RESOURCE_GROUP_FIELD_NUMBER = 12; + @SuppressWarnings("serial") + private volatile java.lang.Object resourceGroup_ = ""; + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + @java.lang.Override + public boolean hasResourceGroup() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + @java.lang.Override + public java.lang.String getResourceGroup() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceGroup_ = s; + return s; + } + } + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getResourceGroupBytes() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceGroup_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PLANNER_OPTIONS_FIELD_NUMBER = 13; + private static final class PlannerOptionsDefaultEntryHolder { + static final com.google.protobuf.MapEntry< + java.lang.String, java.lang.String> defaultEntry = + com.google.protobuf.MapEntry + .newDefaultInstance( + ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_PlannerOptionsEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.STRING, + ""); + } + @SuppressWarnings("serial") + private com.google.protobuf.MapField< + java.lang.String, java.lang.String> plannerOptions_; + private com.google.protobuf.MapField + internalGetPlannerOptions() { + if (plannerOptions_ == null) { + return com.google.protobuf.MapField.emptyMapField( + PlannerOptionsDefaultEntryHolder.defaultEntry); + } + return plannerOptions_; + } + public int getPlannerOptionsCount() { + return internalGetPlannerOptions().getMap().size(); + } + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + @java.lang.Override + public boolean containsPlannerOptions( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + return internalGetPlannerOptions().getMap().containsKey(key); + } + /** + * Use {@link #getPlannerOptionsMap()} instead. + */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getPlannerOptions() { + return getPlannerOptionsMap(); + } + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + @java.lang.Override + public java.util.Map getPlannerOptionsMap() { + return internalGetPlannerOptions().getMap(); + } + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + @java.lang.Override + public /* nullable */ +java.lang.String getPlannerOptionsOrDefault( + java.lang.String key, + /* nullable */ +java.lang.String defaultValue) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetPlannerOptions().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + @java.lang.Override + public java.lang.String getPlannerOptionsOrThrow( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetPlannerOptions().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int MODE_FIELD_NUMBER = 14; + private int mode_ = 0; + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @return The enum numeric value on the wire for mode. + */ + @java.lang.Override public int getModeValue() { + return mode_; + } + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @return The mode. + */ + @java.lang.Override public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode getMode() { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode.forNumber(mode_); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode.UNRECOGNIZED : result; + } + + public static final int NUM_SHARDS_FIELD_NUMBER = 15; + private int numShards_ = 0; + /** + *
+   * Split each planned sub-backfill's window into this many bucket-aligned
+   * time-sharded jobs. Unset/1 preserves the single-job behavior.
+   * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return Whether the numShards field is set. + */ + @java.lang.Override + public boolean hasNumShards() { + return ((bitField0_ & 0x00000100) != 0); + } + /** + *
+   * Split each planned sub-backfill's window into this many bucket-aligned
+   * time-sharded jobs. Unset/1 preserves the single-job behavior.
+   * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return The numShards. + */ + @java.lang.Override + public int getNumShards() { + return numShards_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < features_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, features_.getRaw(i)); + } + if (((bitField0_ & 0x00000001) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, resolver_); + } + if (((bitField0_ & 0x00000002) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, inputSql_); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(4, getLowerBound()); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(5, getUpperBound()); + } + for (int i = 0; i < tags_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 6, tags_.getRaw(i)); + } + if (exact_ != false) { + output.writeBool(7, exact_); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeBool(8, storeOnline_); + } + if (((bitField0_ & 0x00000020) != 0)) { + output.writeBool(9, storeOffline_); + } + if (((bitField0_ & 0x00000040) != 0)) { + output.writeBool(10, allowEmptyTiles_); + } + if (enableProfiling_ != false) { + output.writeBool(11, enableProfiling_); + } + if (((bitField0_ & 0x00000080) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 12, resourceGroup_); + } + com.google.protobuf.GeneratedMessageV3 + .serializeStringMapTo( + output, + internalGetPlannerOptions(), + PlannerOptionsDefaultEntryHolder.defaultEntry, + 13); + if (mode_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_UNSPECIFIED.getNumber()) { + output.writeEnum(14, mode_); + } + if (((bitField0_ & 0x00000100) != 0)) { + output.writeInt32(15, numShards_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + { + int dataSize = 0; + for (int i = 0; i < features_.size(); i++) { + dataSize += computeStringSizeNoTag(features_.getRaw(i)); + } + size += dataSize; + size += 1 * getFeaturesList().size(); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, resolver_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, inputSql_); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, getLowerBound()); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, getUpperBound()); + } + { + int dataSize = 0; + for (int i = 0; i < tags_.size(); i++) { + dataSize += computeStringSizeNoTag(tags_.getRaw(i)); + } + size += dataSize; + size += 1 * getTagsList().size(); + } + if (exact_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(7, exact_); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(8, storeOnline_); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(9, storeOffline_); + } + if (((bitField0_ & 0x00000040) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(10, allowEmptyTiles_); + } + if (enableProfiling_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(11, enableProfiling_); + } + if (((bitField0_ & 0x00000080) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, resourceGroup_); + } + for (java.util.Map.Entry entry + : internalGetPlannerOptions().getMap().entrySet()) { + com.google.protobuf.MapEntry + plannerOptions__ = PlannerOptionsDefaultEntryHolder.defaultEntry.newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(13, plannerOptions__); + } + if (mode_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(14, mode_); + } + if (((bitField0_ & 0x00000100) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(15, numShards_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request other = (ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request) obj; + + if (!getFeaturesList() + .equals(other.getFeaturesList())) return false; + if (hasResolver() != other.hasResolver()) return false; + if (hasResolver()) { + if (!getResolver() + .equals(other.getResolver())) return false; + } + if (hasInputSql() != other.hasInputSql()) return false; + if (hasInputSql()) { + if (!getInputSql() + .equals(other.getInputSql())) return false; + } + if (hasLowerBound() != other.hasLowerBound()) return false; + if (hasLowerBound()) { + if (!getLowerBound() + .equals(other.getLowerBound())) return false; + } + if (hasUpperBound() != other.hasUpperBound()) return false; + if (hasUpperBound()) { + if (!getUpperBound() + .equals(other.getUpperBound())) return false; + } + if (!getTagsList() + .equals(other.getTagsList())) return false; + if (getExact() + != other.getExact()) return false; + if (hasStoreOnline() != other.hasStoreOnline()) return false; + if (hasStoreOnline()) { + if (getStoreOnline() + != other.getStoreOnline()) return false; + } + if (hasStoreOffline() != other.hasStoreOffline()) return false; + if (hasStoreOffline()) { + if (getStoreOffline() + != other.getStoreOffline()) return false; + } + if (hasAllowEmptyTiles() != other.hasAllowEmptyTiles()) return false; + if (hasAllowEmptyTiles()) { + if (getAllowEmptyTiles() + != other.getAllowEmptyTiles()) return false; + } + if (getEnableProfiling() + != other.getEnableProfiling()) return false; + if (hasResourceGroup() != other.hasResourceGroup()) return false; + if (hasResourceGroup()) { + if (!getResourceGroup() + .equals(other.getResourceGroup())) return false; + } + if (!internalGetPlannerOptions().equals( + other.internalGetPlannerOptions())) return false; + if (mode_ != other.mode_) return false; + if (hasNumShards() != other.hasNumShards()) return false; + if (hasNumShards()) { + if (getNumShards() + != other.getNumShards()) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getFeaturesCount() > 0) { + hash = (37 * hash) + FEATURES_FIELD_NUMBER; + hash = (53 * hash) + getFeaturesList().hashCode(); + } + if (hasResolver()) { + hash = (37 * hash) + RESOLVER_FIELD_NUMBER; + hash = (53 * hash) + getResolver().hashCode(); + } + if (hasInputSql()) { + hash = (37 * hash) + INPUT_SQL_FIELD_NUMBER; + hash = (53 * hash) + getInputSql().hashCode(); + } + if (hasLowerBound()) { + hash = (37 * hash) + LOWER_BOUND_FIELD_NUMBER; + hash = (53 * hash) + getLowerBound().hashCode(); + } + if (hasUpperBound()) { + hash = (37 * hash) + UPPER_BOUND_FIELD_NUMBER; + hash = (53 * hash) + getUpperBound().hashCode(); + } + if (getTagsCount() > 0) { + hash = (37 * hash) + TAGS_FIELD_NUMBER; + hash = (53 * hash) + getTagsList().hashCode(); + } + hash = (37 * hash) + EXACT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getExact()); + if (hasStoreOnline()) { + hash = (37 * hash) + STORE_ONLINE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getStoreOnline()); + } + if (hasStoreOffline()) { + hash = (37 * hash) + STORE_OFFLINE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getStoreOffline()); + } + if (hasAllowEmptyTiles()) { + hash = (37 * hash) + ALLOW_EMPTY_TILES_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getAllowEmptyTiles()); + } + hash = (37 * hash) + ENABLE_PROFILING_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getEnableProfiling()); + if (hasResourceGroup()) { + hash = (37 * hash) + RESOURCE_GROUP_FIELD_NUMBER; + hash = (53 * hash) + getResourceGroup().hashCode(); + } + if (!internalGetPlannerOptions().getMap().isEmpty()) { + hash = (37 * hash) + PLANNER_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + internalGetPlannerOptions().hashCode(); + } + hash = (37 * hash) + MODE_FIELD_NUMBER; + hash = (53 * hash) + mode_; + if (hasNumShards()) { + hash = (37 * hash) + NUM_SHARDS_FIELD_NUMBER; + hash = (53 * hash) + getNumShards(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.CreateAggregateBackfillV2Request} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.CreateAggregateBackfillV2Request) + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2RequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 13: + return internalGetPlannerOptions(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 13: + return internalGetMutablePlannerOptions(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.class, ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getLowerBoundFieldBuilder(); + getUpperBoundFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + resolver_ = ""; + inputSql_ = ""; + lowerBound_ = null; + if (lowerBoundBuilder_ != null) { + lowerBoundBuilder_.dispose(); + lowerBoundBuilder_ = null; + } + upperBound_ = null; + if (upperBoundBuilder_ != null) { + upperBoundBuilder_.dispose(); + upperBoundBuilder_ = null; + } + tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + exact_ = false; + storeOnline_ = false; + storeOffline_ = false; + allowEmptyTiles_ = false; + enableProfiling_ = false; + resourceGroup_ = ""; + internalGetMutablePlannerOptions().clear(); + mode_ = 0; + numShards_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request build() { + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request result = new ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + features_.makeImmutable(); + result.features_ = features_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.resolver_ = resolver_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.inputSql_ = inputSql_; + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.lowerBound_ = lowerBoundBuilder_ == null + ? lowerBound_ + : lowerBoundBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.upperBound_ = upperBoundBuilder_ == null + ? upperBound_ + : upperBoundBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + tags_.makeImmutable(); + result.tags_ = tags_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.exact_ = exact_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.storeOnline_ = storeOnline_; + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.storeOffline_ = storeOffline_; + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.allowEmptyTiles_ = allowEmptyTiles_; + to_bitField0_ |= 0x00000040; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.enableProfiling_ = enableProfiling_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.resourceGroup_ = resourceGroup_; + to_bitField0_ |= 0x00000080; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.plannerOptions_ = internalGetPlannerOptions(); + result.plannerOptions_.makeImmutable(); + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.mode_ = mode_; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.numShards_ = numShards_; + to_bitField0_ |= 0x00000100; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request.getDefaultInstance()) return this; + if (!other.features_.isEmpty()) { + if (features_.isEmpty()) { + features_ = other.features_; + bitField0_ |= 0x00000001; + } else { + ensureFeaturesIsMutable(); + features_.addAll(other.features_); + } + onChanged(); + } + if (other.hasResolver()) { + resolver_ = other.resolver_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.hasInputSql()) { + inputSql_ = other.inputSql_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.hasLowerBound()) { + mergeLowerBound(other.getLowerBound()); + } + if (other.hasUpperBound()) { + mergeUpperBound(other.getUpperBound()); + } + if (!other.tags_.isEmpty()) { + if (tags_.isEmpty()) { + tags_ = other.tags_; + bitField0_ |= 0x00000020; + } else { + ensureTagsIsMutable(); + tags_.addAll(other.tags_); + } + onChanged(); + } + if (other.getExact() != false) { + setExact(other.getExact()); + } + if (other.hasStoreOnline()) { + setStoreOnline(other.getStoreOnline()); + } + if (other.hasStoreOffline()) { + setStoreOffline(other.getStoreOffline()); + } + if (other.hasAllowEmptyTiles()) { + setAllowEmptyTiles(other.getAllowEmptyTiles()); + } + if (other.getEnableProfiling() != false) { + setEnableProfiling(other.getEnableProfiling()); + } + if (other.hasResourceGroup()) { + resourceGroup_ = other.resourceGroup_; + bitField0_ |= 0x00000800; + onChanged(); + } + internalGetMutablePlannerOptions().mergeFrom( + other.internalGetPlannerOptions()); + bitField0_ |= 0x00001000; + if (other.mode_ != 0) { + setModeValue(other.getModeValue()); + } + if (other.hasNumShards()) { + setNumShards(other.getNumShards()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + java.lang.String s = input.readStringRequireUtf8(); + ensureFeaturesIsMutable(); + features_.add(s); + break; + } // case 10 + case 18: { + resolver_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + inputSql_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + input.readMessage( + getLowerBoundFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000008; + break; + } // case 34 + case 42: { + input.readMessage( + getUpperBoundFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: { + java.lang.String s = input.readStringRequireUtf8(); + ensureTagsIsMutable(); + tags_.add(s); + break; + } // case 50 + case 56: { + exact_ = input.readBool(); + bitField0_ |= 0x00000040; + break; + } // case 56 + case 64: { + storeOnline_ = input.readBool(); + bitField0_ |= 0x00000080; + break; + } // case 64 + case 72: { + storeOffline_ = input.readBool(); + bitField0_ |= 0x00000100; + break; + } // case 72 + case 80: { + allowEmptyTiles_ = input.readBool(); + bitField0_ |= 0x00000200; + break; + } // case 80 + case 88: { + enableProfiling_ = input.readBool(); + bitField0_ |= 0x00000400; + break; + } // case 88 + case 98: { + resourceGroup_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000800; + break; + } // case 98 + case 106: { + com.google.protobuf.MapEntry + plannerOptions__ = input.readMessage( + PlannerOptionsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutablePlannerOptions().getMutableMap().put( + plannerOptions__.getKey(), plannerOptions__.getValue()); + bitField0_ |= 0x00001000; + break; + } // case 106 + case 112: { + mode_ = input.readEnum(); + bitField0_ |= 0x00002000; + break; + } // case 112 + case 120: { + numShards_ = input.readInt32(); + bitField0_ |= 0x00004000; + break; + } // case 120 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private com.google.protobuf.LazyStringArrayList features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureFeaturesIsMutable() { + if (!features_.isModifiable()) { + features_ = new com.google.protobuf.LazyStringArrayList(features_); + } + bitField0_ |= 0x00000001; + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @return A list containing the features. + */ + public com.google.protobuf.ProtocolStringList + getFeaturesList() { + features_.makeImmutable(); + return features_; + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @return The count of features. + */ + public int getFeaturesCount() { + return features_.size(); + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + public java.lang.String getFeatures(int index) { + return features_.get(index); + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + public com.google.protobuf.ByteString + getFeaturesBytes(int index) { + return features_.getByteString(index); + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param index The index to set the value at. + * @param value The features to set. + * @return This builder for chaining. + */ + public Builder setFeatures( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFeaturesIsMutable(); + features_.set(index, value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param value The features to add. + * @return This builder for chaining. + */ + public Builder addFeatures( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFeaturesIsMutable(); + features_.add(value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param values The features to add. + * @return This builder for chaining. + */ + public Builder addAllFeatures( + java.lang.Iterable values) { + ensureFeaturesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, features_); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @return This builder for chaining. + */ + public Builder clearFeatures() { + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001);; + onChanged(); + return this; + } + /** + *
+     * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+     * request can change independently of the planner's own input message, in either direction.
+     * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param value The bytes of the features to add. + * @return This builder for chaining. + */ + public Builder addFeaturesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureFeaturesIsMutable(); + features_.add(value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object resolver_ = ""; + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return Whether the resolver field is set. + */ + public boolean hasResolver() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return The resolver. + */ + public java.lang.String getResolver() { + java.lang.Object ref = resolver_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resolver_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return The bytes for resolver. + */ + public com.google.protobuf.ByteString + getResolverBytes() { + java.lang.Object ref = resolver_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resolver_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @param value The resolver to set. + * @return This builder for chaining. + */ + public Builder setResolver( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + resolver_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return This builder for chaining. + */ + public Builder clearResolver() { + resolver_ = getDefaultInstance().getResolver(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @param value The bytes for resolver to set. + * @return This builder for chaining. + */ + public Builder setResolverBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + resolver_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object inputSql_ = ""; + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + public boolean hasInputSql() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return The inputSql. + */ + public java.lang.String getInputSql() { + java.lang.Object ref = inputSql_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + inputSql_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + public com.google.protobuf.ByteString + getInputSqlBytes() { + java.lang.Object ref = inputSql_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + inputSql_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @param value The inputSql to set. + * @return This builder for chaining. + */ + public Builder setInputSql( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + inputSql_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return This builder for chaining. + */ + public Builder clearInputSql() { + inputSql_ = getDefaultInstance().getInputSql(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @param value The bytes for inputSql to set. + * @return This builder for chaining. + */ + public Builder setInputSqlBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + inputSql_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp lowerBound_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> lowerBoundBuilder_; + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + * @return Whether the lowerBound field is set. + */ + public boolean hasLowerBound() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + * @return The lowerBound. + */ + public com.google.protobuf.Timestamp getLowerBound() { + if (lowerBoundBuilder_ == null) { + return lowerBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lowerBound_; + } else { + return lowerBoundBuilder_.getMessage(); + } + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + public Builder setLowerBound(com.google.protobuf.Timestamp value) { + if (lowerBoundBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + lowerBound_ = value; + } else { + lowerBoundBuilder_.setMessage(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + public Builder setLowerBound( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (lowerBoundBuilder_ == null) { + lowerBound_ = builderForValue.build(); + } else { + lowerBoundBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + public Builder mergeLowerBound(com.google.protobuf.Timestamp value) { + if (lowerBoundBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0) && + lowerBound_ != null && + lowerBound_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getLowerBoundBuilder().mergeFrom(value); + } else { + lowerBound_ = value; + } + } else { + lowerBoundBuilder_.mergeFrom(value); + } + if (lowerBound_ != null) { + bitField0_ |= 0x00000008; + onChanged(); + } + return this; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + public Builder clearLowerBound() { + bitField0_ = (bitField0_ & ~0x00000008); + lowerBound_ = null; + if (lowerBoundBuilder_ != null) { + lowerBoundBuilder_.dispose(); + lowerBoundBuilder_ = null; + } + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + public com.google.protobuf.Timestamp.Builder getLowerBoundBuilder() { + bitField0_ |= 0x00000008; + onChanged(); + return getLowerBoundFieldBuilder().getBuilder(); + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + public com.google.protobuf.TimestampOrBuilder getLowerBoundOrBuilder() { + if (lowerBoundBuilder_ != null) { + return lowerBoundBuilder_.getMessageOrBuilder(); + } else { + return lowerBound_ == null ? + com.google.protobuf.Timestamp.getDefaultInstance() : lowerBound_; + } + } + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> + getLowerBoundFieldBuilder() { + if (lowerBoundBuilder_ == null) { + lowerBoundBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( + getLowerBound(), + getParentForChildren(), + isClean()); + lowerBound_ = null; + } + return lowerBoundBuilder_; + } + + private com.google.protobuf.Timestamp upperBound_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> upperBoundBuilder_; + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + * @return Whether the upperBound field is set. + */ + public boolean hasUpperBound() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + * @return The upperBound. + */ + public com.google.protobuf.Timestamp getUpperBound() { + if (upperBoundBuilder_ == null) { + return upperBound_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; + } else { + return upperBoundBuilder_.getMessage(); + } + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + public Builder setUpperBound(com.google.protobuf.Timestamp value) { + if (upperBoundBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + upperBound_ = value; + } else { + upperBoundBuilder_.setMessage(value); + } + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + public Builder setUpperBound( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (upperBoundBuilder_ == null) { + upperBound_ = builderForValue.build(); + } else { + upperBoundBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + public Builder mergeUpperBound(com.google.protobuf.Timestamp value) { + if (upperBoundBuilder_ == null) { + if (((bitField0_ & 0x00000010) != 0) && + upperBound_ != null && + upperBound_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpperBoundBuilder().mergeFrom(value); + } else { + upperBound_ = value; + } + } else { + upperBoundBuilder_.mergeFrom(value); + } + if (upperBound_ != null) { + bitField0_ |= 0x00000010; + onChanged(); + } + return this; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + public Builder clearUpperBound() { + bitField0_ = (bitField0_ & ~0x00000010); + upperBound_ = null; + if (upperBoundBuilder_ != null) { + upperBoundBuilder_.dispose(); + upperBoundBuilder_ = null; + } + onChanged(); + return this; + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + public com.google.protobuf.Timestamp.Builder getUpperBoundBuilder() { + bitField0_ |= 0x00000010; + onChanged(); + return getUpperBoundFieldBuilder().getBuilder(); + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + public com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder() { + if (upperBoundBuilder_ != null) { + return upperBoundBuilder_.getMessageOrBuilder(); + } else { + return upperBound_ == null ? + com.google.protobuf.Timestamp.getDefaultInstance() : upperBound_; + } + } + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> + getUpperBoundFieldBuilder() { + if (upperBoundBuilder_ == null) { + upperBoundBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( + getUpperBound(), + getParentForChildren(), + isClean()); + upperBound_ = null; + } + return upperBoundBuilder_; + } + + private com.google.protobuf.LazyStringArrayList tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureTagsIsMutable() { + if (!tags_.isModifiable()) { + tags_ = new com.google.protobuf.LazyStringArrayList(tags_); + } + bitField0_ |= 0x00000020; + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @return A list containing the tags. + */ + public com.google.protobuf.ProtocolStringList + getTagsList() { + tags_.makeImmutable(); + return tags_; + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @return The count of tags. + */ + public int getTagsCount() { + return tags_.size(); + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param index The index of the element to return. + * @return The tags at the given index. + */ + public java.lang.String getTags(int index) { + return tags_.get(index); + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + public com.google.protobuf.ByteString + getTagsBytes(int index) { + return tags_.getByteString(index); + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param index The index to set the value at. + * @param value The tags to set. + * @return This builder for chaining. + */ + public Builder setTags( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureTagsIsMutable(); + tags_.set(index, value); + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param value The tags to add. + * @return This builder for chaining. + */ + public Builder addTags( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureTagsIsMutable(); + tags_.add(value); + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param values The tags to add. + * @return This builder for chaining. + */ + public Builder addAllTags( + java.lang.Iterable values) { + ensureTagsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, tags_); + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @return This builder for chaining. + */ + public Builder clearTags() { + tags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000020);; + onChanged(); + return this; + } + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param value The bytes of the tags to add. + * @return This builder for chaining. + */ + public Builder addTagsBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureTagsIsMutable(); + tags_.add(value); + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private boolean exact_ ; + /** + * bool exact = 7 [json_name = "exact"]; + * @return The exact. + */ + @java.lang.Override + public boolean getExact() { + return exact_; + } + /** + * bool exact = 7 [json_name = "exact"]; + * @param value The exact to set. + * @return This builder for chaining. + */ + public Builder setExact(boolean value) { + + exact_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * bool exact = 7 [json_name = "exact"]; + * @return This builder for chaining. + */ + public Builder clearExact() { + bitField0_ = (bitField0_ & ~0x00000040); + exact_ = false; + onChanged(); + return this; + } + + private boolean storeOnline_ ; + /** + *
+     * How to run it, applied identically to every job produced by the plan.
+     * Storage targets: both unset means online only, and both explicitly false is a test
+     * run that computes tiles and writes them only to the job's dataset.
+     * 
+ * + * optional bool store_online = 8 [json_name = "storeOnline"]; + * @return Whether the storeOnline field is set. + */ + @java.lang.Override + public boolean hasStoreOnline() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + *
+     * How to run it, applied identically to every job produced by the plan.
+     * Storage targets: both unset means online only, and both explicitly false is a test
+     * run that computes tiles and writes them only to the job's dataset.
+     * 
+ * + * optional bool store_online = 8 [json_name = "storeOnline"]; + * @return The storeOnline. + */ + @java.lang.Override + public boolean getStoreOnline() { + return storeOnline_; + } + /** + *
+     * How to run it, applied identically to every job produced by the plan.
+     * Storage targets: both unset means online only, and both explicitly false is a test
+     * run that computes tiles and writes them only to the job's dataset.
+     * 
+ * + * optional bool store_online = 8 [json_name = "storeOnline"]; + * @param value The storeOnline to set. + * @return This builder for chaining. + */ + public Builder setStoreOnline(boolean value) { + + storeOnline_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + *
+     * How to run it, applied identically to every job produced by the plan.
+     * Storage targets: both unset means online only, and both explicitly false is a test
+     * run that computes tiles and writes them only to the job's dataset.
+     * 
+ * + * optional bool store_online = 8 [json_name = "storeOnline"]; + * @return This builder for chaining. + */ + public Builder clearStoreOnline() { + bitField0_ = (bitField0_ & ~0x00000080); + storeOnline_ = false; + onChanged(); + return this; + } + + private boolean storeOffline_ ; + /** + * optional bool store_offline = 9 [json_name = "storeOffline"]; + * @return Whether the storeOffline field is set. + */ + @java.lang.Override + public boolean hasStoreOffline() { + return ((bitField0_ & 0x00000100) != 0); + } + /** + * optional bool store_offline = 9 [json_name = "storeOffline"]; + * @return The storeOffline. + */ + @java.lang.Override + public boolean getStoreOffline() { + return storeOffline_; + } + /** + * optional bool store_offline = 9 [json_name = "storeOffline"]; + * @param value The storeOffline to set. + * @return This builder for chaining. + */ + public Builder setStoreOffline(boolean value) { + + storeOffline_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * optional bool store_offline = 9 [json_name = "storeOffline"]; + * @return This builder for chaining. + */ + public Builder clearStoreOffline() { + bitField0_ = (bitField0_ & ~0x00000100); + storeOffline_ = false; + onChanged(); + return this; + } + + private boolean allowEmptyTiles_ ; + /** + * optional bool allow_empty_tiles = 10 [json_name = "allowEmptyTiles"]; + * @return Whether the allowEmptyTiles field is set. + */ + @java.lang.Override + public boolean hasAllowEmptyTiles() { + return ((bitField0_ & 0x00000200) != 0); + } + /** + * optional bool allow_empty_tiles = 10 [json_name = "allowEmptyTiles"]; + * @return The allowEmptyTiles. + */ + @java.lang.Override + public boolean getAllowEmptyTiles() { + return allowEmptyTiles_; + } + /** + * optional bool allow_empty_tiles = 10 [json_name = "allowEmptyTiles"]; + * @param value The allowEmptyTiles to set. + * @return This builder for chaining. + */ + public Builder setAllowEmptyTiles(boolean value) { + + allowEmptyTiles_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * optional bool allow_empty_tiles = 10 [json_name = "allowEmptyTiles"]; + * @return This builder for chaining. + */ + public Builder clearAllowEmptyTiles() { + bitField0_ = (bitField0_ & ~0x00000200); + allowEmptyTiles_ = false; + onChanged(); + return this; + } + + private boolean enableProfiling_ ; + /** + * bool enable_profiling = 11 [json_name = "enableProfiling"]; + * @return The enableProfiling. + */ + @java.lang.Override + public boolean getEnableProfiling() { + return enableProfiling_; + } + /** + * bool enable_profiling = 11 [json_name = "enableProfiling"]; + * @param value The enableProfiling to set. + * @return This builder for chaining. + */ + public Builder setEnableProfiling(boolean value) { + + enableProfiling_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * bool enable_profiling = 11 [json_name = "enableProfiling"]; + * @return This builder for chaining. + */ + public Builder clearEnableProfiling() { + bitField0_ = (bitField0_ & ~0x00000400); + enableProfiling_ = false; + onChanged(); + return this; + } + + private java.lang.Object resourceGroup_ = ""; + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + public boolean hasResourceGroup() { + return ((bitField0_ & 0x00000800) != 0); + } + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + public java.lang.String getResourceGroup() { + java.lang.Object ref = resourceGroup_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceGroup_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + public com.google.protobuf.ByteString + getResourceGroupBytes() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceGroup_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @param value The resourceGroup to set. + * @return This builder for chaining. + */ + public Builder setResourceGroup( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + resourceGroup_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return This builder for chaining. + */ + public Builder clearResourceGroup() { + resourceGroup_ = getDefaultInstance().getResourceGroup(); + bitField0_ = (bitField0_ & ~0x00000800); + onChanged(); + return this; + } + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @param value The bytes for resourceGroup to set. + * @return This builder for chaining. + */ + public Builder setResourceGroupBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + resourceGroup_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + + private com.google.protobuf.MapField< + java.lang.String, java.lang.String> plannerOptions_; + private com.google.protobuf.MapField + internalGetPlannerOptions() { + if (plannerOptions_ == null) { + return com.google.protobuf.MapField.emptyMapField( + PlannerOptionsDefaultEntryHolder.defaultEntry); + } + return plannerOptions_; + } + private com.google.protobuf.MapField + internalGetMutablePlannerOptions() { + if (plannerOptions_ == null) { + plannerOptions_ = com.google.protobuf.MapField.newMapField( + PlannerOptionsDefaultEntryHolder.defaultEntry); + } + if (!plannerOptions_.isMutable()) { + plannerOptions_ = plannerOptions_.copy(); + } + bitField0_ |= 0x00001000; + onChanged(); + return plannerOptions_; + } + public int getPlannerOptionsCount() { + return internalGetPlannerOptions().getMap().size(); + } + /** + *
+     * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+     * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+     * the planner does not accept planner options.
+     * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + @java.lang.Override + public boolean containsPlannerOptions( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + return internalGetPlannerOptions().getMap().containsKey(key); + } + /** + * Use {@link #getPlannerOptionsMap()} instead. + */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getPlannerOptions() { + return getPlannerOptionsMap(); + } + /** + *
+     * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+     * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+     * the planner does not accept planner options.
+     * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + @java.lang.Override + public java.util.Map getPlannerOptionsMap() { + return internalGetPlannerOptions().getMap(); + } + /** + *
+     * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+     * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+     * the planner does not accept planner options.
+     * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + @java.lang.Override + public /* nullable */ +java.lang.String getPlannerOptionsOrDefault( + java.lang.String key, + /* nullable */ +java.lang.String defaultValue) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetPlannerOptions().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + /** + *
+     * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+     * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+     * the planner does not accept planner options.
+     * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + @java.lang.Override + public java.lang.String getPlannerOptionsOrThrow( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetPlannerOptions().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + public Builder clearPlannerOptions() { + bitField0_ = (bitField0_ & ~0x00001000); + internalGetMutablePlannerOptions().getMutableMap() + .clear(); + return this; + } + /** + *
+     * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+     * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+     * the planner does not accept planner options.
+     * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + public Builder removePlannerOptions( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + internalGetMutablePlannerOptions().getMutableMap() + .remove(key); + return this; + } + /** + * Use alternate mutation accessors instead. + */ + @java.lang.Deprecated + public java.util.Map + getMutablePlannerOptions() { + bitField0_ |= 0x00001000; + return internalGetMutablePlannerOptions().getMutableMap(); + } + /** + *
+     * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+     * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+     * the planner does not accept planner options.
+     * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + public Builder putPlannerOptions( + java.lang.String key, + java.lang.String value) { + if (key == null) { throw new NullPointerException("map key"); } + if (value == null) { throw new NullPointerException("map value"); } + internalGetMutablePlannerOptions().getMutableMap() + .put(key, value); + bitField0_ |= 0x00001000; + return this; + } + /** + *
+     * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+     * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+     * the planner does not accept planner options.
+     * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + public Builder putAllPlannerOptions( + java.util.Map values) { + internalGetMutablePlannerOptions().getMutableMap() + .putAll(values); + bitField0_ |= 0x00001000; + return this; + } + + private int mode_ = 0; + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @return The enum numeric value on the wire for mode. + */ + @java.lang.Override public int getModeValue() { + return mode_; + } + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @param value The enum numeric value on the wire for mode to set. + * @return This builder for chaining. + */ + public Builder setModeValue(int value) { + mode_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @return The mode. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode getMode() { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode.forNumber(mode_); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode.UNRECOGNIZED : result; + } + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @param value The mode to set. + * @return This builder for chaining. + */ + public Builder setMode(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00002000; + mode_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @return This builder for chaining. + */ + public Builder clearMode() { + bitField0_ = (bitField0_ & ~0x00002000); + mode_ = 0; + onChanged(); + return this; + } + + private int numShards_ ; + /** + *
+     * Split each planned sub-backfill's window into this many bucket-aligned
+     * time-sharded jobs. Unset/1 preserves the single-job behavior.
+     * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return Whether the numShards field is set. + */ + @java.lang.Override + public boolean hasNumShards() { + return ((bitField0_ & 0x00004000) != 0); + } + /** + *
+     * Split each planned sub-backfill's window into this many bucket-aligned
+     * time-sharded jobs. Unset/1 preserves the single-job behavior.
+     * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return The numShards. + */ + @java.lang.Override + public int getNumShards() { + return numShards_; + } + /** + *
+     * Split each planned sub-backfill's window into this many bucket-aligned
+     * time-sharded jobs. Unset/1 preserves the single-job behavior.
+     * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @param value The numShards to set. + * @return This builder for chaining. + */ + public Builder setNumShards(int value) { + + numShards_ = value; + bitField0_ |= 0x00004000; + onChanged(); + return this; + } + /** + *
+     * Split each planned sub-backfill's window into this many bucket-aligned
+     * time-sharded jobs. Unset/1 preserves the single-job behavior.
+     * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return This builder for chaining. + */ + public Builder clearNumShards() { + bitField0_ = (bitField0_ & ~0x00004000); + numShards_ = 0; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.CreateAggregateBackfillV2Request) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.CreateAggregateBackfillV2Request) + private static final ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CreateAggregateBackfillV2Request parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2RequestOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2RequestOrBuilder.java new file mode 100644 index 00000000..bc50e3d4 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2RequestOrBuilder.java @@ -0,0 +1,314 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface CreateAggregateBackfillV2RequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.CreateAggregateBackfillV2Request) + com.google.protobuf.MessageOrBuilder { + + /** + *
+   * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+   * request can change independently of the planner's own input message, in either direction.
+   * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @return A list containing the features. + */ + java.util.List + getFeaturesList(); + /** + *
+   * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+   * request can change independently of the planner's own input message, in either direction.
+   * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @return The count of features. + */ + int getFeaturesCount(); + /** + *
+   * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+   * request can change independently of the planner's own input message, in either direction.
+   * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + java.lang.String getFeatures(int index); + /** + *
+   * What to plan. Spelled out here rather than embedding AggregateBackfillUserParams so this
+   * request can change independently of the planner's own input message, in either direction.
+   * 
+ * + * repeated string features = 1 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + com.google.protobuf.ByteString + getFeaturesBytes(int index); + + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return Whether the resolver field is set. + */ + boolean hasResolver(); + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return The resolver. + */ + java.lang.String getResolver(); + /** + * optional string resolver = 2 [json_name = "resolver"]; + * @return The bytes for resolver. + */ + com.google.protobuf.ByteString + getResolverBytes(); + + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return Whether the inputSql field is set. + */ + boolean hasInputSql(); + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return The inputSql. + */ + java.lang.String getInputSql(); + /** + * optional string input_sql = 3 [json_name = "inputSql"]; + * @return The bytes for inputSql. + */ + com.google.protobuf.ByteString + getInputSqlBytes(); + + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + * @return Whether the lowerBound field is set. + */ + boolean hasLowerBound(); + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + * @return The lowerBound. + */ + com.google.protobuf.Timestamp getLowerBound(); + /** + * optional .google.protobuf.Timestamp lower_bound = 4 [json_name = "lowerBound"]; + */ + com.google.protobuf.TimestampOrBuilder getLowerBoundOrBuilder(); + + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + * @return Whether the upperBound field is set. + */ + boolean hasUpperBound(); + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + * @return The upperBound. + */ + com.google.protobuf.Timestamp getUpperBound(); + /** + * optional .google.protobuf.Timestamp upper_bound = 5 [json_name = "upperBound"]; + */ + com.google.protobuf.TimestampOrBuilder getUpperBoundOrBuilder(); + + /** + * repeated string tags = 6 [json_name = "tags"]; + * @return A list containing the tags. + */ + java.util.List + getTagsList(); + /** + * repeated string tags = 6 [json_name = "tags"]; + * @return The count of tags. + */ + int getTagsCount(); + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param index The index of the element to return. + * @return The tags at the given index. + */ + java.lang.String getTags(int index); + /** + * repeated string tags = 6 [json_name = "tags"]; + * @param index The index of the value to return. + * @return The bytes of the tags at the given index. + */ + com.google.protobuf.ByteString + getTagsBytes(int index); + + /** + * bool exact = 7 [json_name = "exact"]; + * @return The exact. + */ + boolean getExact(); + + /** + *
+   * How to run it, applied identically to every job produced by the plan.
+   * Storage targets: both unset means online only, and both explicitly false is a test
+   * run that computes tiles and writes them only to the job's dataset.
+   * 
+ * + * optional bool store_online = 8 [json_name = "storeOnline"]; + * @return Whether the storeOnline field is set. + */ + boolean hasStoreOnline(); + /** + *
+   * How to run it, applied identically to every job produced by the plan.
+   * Storage targets: both unset means online only, and both explicitly false is a test
+   * run that computes tiles and writes them only to the job's dataset.
+   * 
+ * + * optional bool store_online = 8 [json_name = "storeOnline"]; + * @return The storeOnline. + */ + boolean getStoreOnline(); + + /** + * optional bool store_offline = 9 [json_name = "storeOffline"]; + * @return Whether the storeOffline field is set. + */ + boolean hasStoreOffline(); + /** + * optional bool store_offline = 9 [json_name = "storeOffline"]; + * @return The storeOffline. + */ + boolean getStoreOffline(); + + /** + * optional bool allow_empty_tiles = 10 [json_name = "allowEmptyTiles"]; + * @return Whether the allowEmptyTiles field is set. + */ + boolean hasAllowEmptyTiles(); + /** + * optional bool allow_empty_tiles = 10 [json_name = "allowEmptyTiles"]; + * @return The allowEmptyTiles. + */ + boolean getAllowEmptyTiles(); + + /** + * bool enable_profiling = 11 [json_name = "enableProfiling"]; + * @return The enableProfiling. + */ + boolean getEnableProfiling(); + + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + boolean hasResourceGroup(); + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + java.lang.String getResourceGroup(); + /** + * optional string resource_group = 12 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + com.google.protobuf.ByteString + getResourceGroupBytes(); + + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + int getPlannerOptionsCount(); + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + boolean containsPlannerOptions( + java.lang.String key); + /** + * Use {@link #getPlannerOptionsMap()} instead. + */ + @java.lang.Deprecated + java.util.Map + getPlannerOptions(); + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + java.util.Map + getPlannerOptionsMap(); + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + /* nullable */ +java.lang.String getPlannerOptionsOrDefault( + java.lang.String key, + /* nullable */ +java.lang.String defaultValue); + /** + *
+   * Same string-map spelling as artifacts.v1.CronAggregateBackfill.planner_options; the
+   * server converts to the typed chalk.jobqueue.v1.PlannerOptions per job. Execution-only:
+   * the planner does not accept planner options.
+   * 
+ * + * map<string, string> planner_options = 13 [json_name = "plannerOptions"]; + */ + java.lang.String getPlannerOptionsOrThrow( + java.lang.String key); + + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @return The enum numeric value on the wire for mode. + */ + int getModeValue(); + /** + * .chalk.aggregate.v1.AggregateBackfillMode mode = 14 [json_name = "mode"]; + * @return The mode. + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode getMode(); + + /** + *
+   * Split each planned sub-backfill's window into this many bucket-aligned
+   * time-sharded jobs. Unset/1 preserves the single-job behavior.
+   * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return Whether the numShards field is set. + */ + boolean hasNumShards(); + /** + *
+   * Split each planned sub-backfill's window into this many bucket-aligned
+   * time-sharded jobs. Unset/1 preserves the single-job behavior.
+   * 
+ * + * optional int32 num_shards = 15 [json_name = "numShards"]; + * @return The numShards. + */ + int getNumShards(); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2Response.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2Response.java new file mode 100644 index 00000000..3c3d94ff --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2Response.java @@ -0,0 +1,1129 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.CreateAggregateBackfillV2Response} + */ +public final class CreateAggregateBackfillV2Response extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.CreateAggregateBackfillV2Response) + CreateAggregateBackfillV2ResponseOrBuilder { +private static final long serialVersionUID = 0L; + // Use CreateAggregateBackfillV2Response.newBuilder() to construct. + private CreateAggregateBackfillV2Response(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private CreateAggregateBackfillV2Response() { + subBackfills_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new CreateAggregateBackfillV2Response(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.class, ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.Builder.class); + } + + private int bitField0_; + public static final int JOB_FIELD_NUMBER = 1; + private ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob job_; + /** + *
+   * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+   * id, so this is a single job even when the plan splits the request into N sub-backfills.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + * @return Whether the job field is set. + */ + @java.lang.Override + public boolean hasJob() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + *
+   * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+   * id, so this is a single job even when the plan splits the request into N sub-backfills.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + * @return The job. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob getJob() { + return job_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance() : job_; + } + /** + *
+   * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+   * id, so this is a single job even when the plan splits the request into N sub-backfills.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder getJobOrBuilder() { + return job_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance() : job_; + } + + public static final int SUB_BACKFILLS_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private java.util.List subBackfills_; + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + @java.lang.Override + public java.util.List getSubBackfillsList() { + return subBackfills_; + } + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + @java.lang.Override + public java.util.List + getSubBackfillsOrBuilderList() { + return subBackfills_; + } + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + @java.lang.Override + public int getSubBackfillsCount() { + return subBackfills_.size(); + } + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate getSubBackfills(int index) { + return subBackfills_.get(index); + } + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimateOrBuilder getSubBackfillsOrBuilder( + int index) { + return subBackfills_.get(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(1, getJob()); + } + for (int i = 0; i < subBackfills_.size(); i++) { + output.writeMessage(2, subBackfills_.get(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getJob()); + } + for (int i = 0; i < subBackfills_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, subBackfills_.get(i)); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response other = (ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response) obj; + + if (hasJob() != other.hasJob()) return false; + if (hasJob()) { + if (!getJob() + .equals(other.getJob())) return false; + } + if (!getSubBackfillsList() + .equals(other.getSubBackfillsList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasJob()) { + hash = (37 * hash) + JOB_FIELD_NUMBER; + hash = (53 * hash) + getJob().hashCode(); + } + if (getSubBackfillsCount() > 0) { + hash = (37 * hash) + SUB_BACKFILLS_FIELD_NUMBER; + hash = (53 * hash) + getSubBackfillsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.CreateAggregateBackfillV2Response} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.CreateAggregateBackfillV2Response) + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2ResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.class, ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getJobFieldBuilder(); + getSubBackfillsFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + job_ = null; + if (jobBuilder_ != null) { + jobBuilder_.dispose(); + jobBuilder_ = null; + } + if (subBackfillsBuilder_ == null) { + subBackfills_ = java.util.Collections.emptyList(); + } else { + subBackfills_ = null; + subBackfillsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response build() { + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response result = new ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response result) { + if (subBackfillsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + subBackfills_ = java.util.Collections.unmodifiableList(subBackfills_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.subBackfills_ = subBackfills_; + } else { + result.subBackfills_ = subBackfillsBuilder_.build(); + } + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.job_ = jobBuilder_ == null + ? job_ + : jobBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response.getDefaultInstance()) return this; + if (other.hasJob()) { + mergeJob(other.getJob()); + } + if (subBackfillsBuilder_ == null) { + if (!other.subBackfills_.isEmpty()) { + if (subBackfills_.isEmpty()) { + subBackfills_ = other.subBackfills_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureSubBackfillsIsMutable(); + subBackfills_.addAll(other.subBackfills_); + } + onChanged(); + } + } else { + if (!other.subBackfills_.isEmpty()) { + if (subBackfillsBuilder_.isEmpty()) { + subBackfillsBuilder_.dispose(); + subBackfillsBuilder_ = null; + subBackfills_ = other.subBackfills_; + bitField0_ = (bitField0_ & ~0x00000002); + subBackfillsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSubBackfillsFieldBuilder() : null; + } else { + subBackfillsBuilder_.addAllMessages(other.subBackfills_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + input.readMessage( + getJobFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate m = + input.readMessage( + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.parser(), + extensionRegistry); + if (subBackfillsBuilder_ == null) { + ensureSubBackfillsIsMutable(); + subBackfills_.add(m); + } else { + subBackfillsBuilder_.addMessage(m); + } + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob job_; + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder> jobBuilder_; + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + * @return Whether the job field is set. + */ + public boolean hasJob() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + * @return The job. + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob getJob() { + if (jobBuilder_ == null) { + return job_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance() : job_; + } else { + return jobBuilder_.getMessage(); + } + } + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + public Builder setJob(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob value) { + if (jobBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + job_ = value; + } else { + jobBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + public Builder setJob( + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder builderForValue) { + if (jobBuilder_ == null) { + job_ = builderForValue.build(); + } else { + jobBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + public Builder mergeJob(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob value) { + if (jobBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) && + job_ != null && + job_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance()) { + getJobBuilder().mergeFrom(value); + } else { + job_ = value; + } + } else { + jobBuilder_.mergeFrom(value); + } + if (job_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } + return this; + } + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + public Builder clearJob() { + bitField0_ = (bitField0_ & ~0x00000001); + job_ = null; + if (jobBuilder_ != null) { + jobBuilder_.dispose(); + jobBuilder_ = null; + } + onChanged(); + return this; + } + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder getJobBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getJobFieldBuilder().getBuilder(); + } + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder getJobOrBuilder() { + if (jobBuilder_ != null) { + return jobBuilder_.getMessageOrBuilder(); + } else { + return job_ == null ? + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance() : job_; + } + } + /** + *
+     * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+     * id, so this is a single job even when the plan splits the request into N sub-backfills.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder> + getJobFieldBuilder() { + if (jobBuilder_ == null) { + jobBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder>( + getJob(), + getParentForChildren(), + isClean()); + job_ = null; + } + return jobBuilder_; + } + + private java.util.List subBackfills_ = + java.util.Collections.emptyList(); + private void ensureSubBackfillsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + subBackfills_ = new java.util.ArrayList(subBackfills_); + bitField0_ |= 0x00000002; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimateOrBuilder> subBackfillsBuilder_; + + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public java.util.List getSubBackfillsList() { + if (subBackfillsBuilder_ == null) { + return java.util.Collections.unmodifiableList(subBackfills_); + } else { + return subBackfillsBuilder_.getMessageList(); + } + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public int getSubBackfillsCount() { + if (subBackfillsBuilder_ == null) { + return subBackfills_.size(); + } else { + return subBackfillsBuilder_.getCount(); + } + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate getSubBackfills(int index) { + if (subBackfillsBuilder_ == null) { + return subBackfills_.get(index); + } else { + return subBackfillsBuilder_.getMessage(index); + } + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder setSubBackfills( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate value) { + if (subBackfillsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSubBackfillsIsMutable(); + subBackfills_.set(index, value); + onChanged(); + } else { + subBackfillsBuilder_.setMessage(index, value); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder setSubBackfills( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder builderForValue) { + if (subBackfillsBuilder_ == null) { + ensureSubBackfillsIsMutable(); + subBackfills_.set(index, builderForValue.build()); + onChanged(); + } else { + subBackfillsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder addSubBackfills(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate value) { + if (subBackfillsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSubBackfillsIsMutable(); + subBackfills_.add(value); + onChanged(); + } else { + subBackfillsBuilder_.addMessage(value); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder addSubBackfills( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate value) { + if (subBackfillsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSubBackfillsIsMutable(); + subBackfills_.add(index, value); + onChanged(); + } else { + subBackfillsBuilder_.addMessage(index, value); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder addSubBackfills( + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder builderForValue) { + if (subBackfillsBuilder_ == null) { + ensureSubBackfillsIsMutable(); + subBackfills_.add(builderForValue.build()); + onChanged(); + } else { + subBackfillsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder addSubBackfills( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder builderForValue) { + if (subBackfillsBuilder_ == null) { + ensureSubBackfillsIsMutable(); + subBackfills_.add(index, builderForValue.build()); + onChanged(); + } else { + subBackfillsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder addAllSubBackfills( + java.lang.Iterable values) { + if (subBackfillsBuilder_ == null) { + ensureSubBackfillsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, subBackfills_); + onChanged(); + } else { + subBackfillsBuilder_.addAllMessages(values); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder clearSubBackfills() { + if (subBackfillsBuilder_ == null) { + subBackfills_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + subBackfillsBuilder_.clear(); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public Builder removeSubBackfills(int index) { + if (subBackfillsBuilder_ == null) { + ensureSubBackfillsIsMutable(); + subBackfills_.remove(index); + onChanged(); + } else { + subBackfillsBuilder_.remove(index); + } + return this; + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder getSubBackfillsBuilder( + int index) { + return getSubBackfillsFieldBuilder().getBuilder(index); + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimateOrBuilder getSubBackfillsOrBuilder( + int index) { + if (subBackfillsBuilder_ == null) { + return subBackfills_.get(index); } else { + return subBackfillsBuilder_.getMessageOrBuilder(index); + } + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public java.util.List + getSubBackfillsOrBuilderList() { + if (subBackfillsBuilder_ != null) { + return subBackfillsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(subBackfills_); + } + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder addSubBackfillsBuilder() { + return getSubBackfillsFieldBuilder().addBuilder( + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.getDefaultInstance()); + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder addSubBackfillsBuilder( + int index) { + return getSubBackfillsFieldBuilder().addBuilder( + index, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.getDefaultInstance()); + } + /** + *
+     * The planner's split of this request, named for the planner's own vocabulary: it
+     * "splits backfill into sub-backfills".
+     * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + public java.util.List + getSubBackfillsBuilderList() { + return getSubBackfillsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimateOrBuilder> + getSubBackfillsFieldBuilder() { + if (subBackfillsBuilder_ == null) { + subBackfillsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimateOrBuilder>( + subBackfills_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + subBackfills_ = null; + } + return subBackfillsBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.CreateAggregateBackfillV2Response) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.CreateAggregateBackfillV2Response) + private static final ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CreateAggregateBackfillV2Response parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2ResponseOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2ResponseOrBuilder.java new file mode 100644 index 00000000..1da01378 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CreateAggregateBackfillV2ResponseOrBuilder.java @@ -0,0 +1,89 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface CreateAggregateBackfillV2ResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.CreateAggregateBackfillV2Response) + com.google.protobuf.MessageOrBuilder { + + /** + *
+   * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+   * id, so this is a single job even when the plan splits the request into N sub-backfills.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + * @return Whether the job field is set. + */ + boolean hasJob(); + /** + *
+   * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+   * id, so this is a single job even when the plan splits the request into N sub-backfills.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + * @return The job. + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob getJob(); + /** + *
+   * Absent in plan mode. There is one aggregate_backfill_jobs row per aggregate backfill
+   * id, so this is a single job even when the plan splits the request into N sub-backfills.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregateBackfillJob job = 1 [json_name = "job"]; + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder getJobOrBuilder(); + + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + java.util.List + getSubBackfillsList(); + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate getSubBackfills(int index); + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + int getSubBackfillsCount(); + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + java.util.List + getSubBackfillsOrBuilderList(); + /** + *
+   * The planner's split of this request, named for the planner's own vocabulary: it
+   * "splits backfill into sub-backfills".
+   * 
+ * + * repeated .chalk.aggregate.v1.AggregateBackfillWithCostEstimate sub_backfills = 2 [json_name = "subBackfills"]; + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimateOrBuilder getSubBackfillsOrBuilder( + int index); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfill.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfill.java new file mode 100644 index 00000000..f8612b11 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfill.java @@ -0,0 +1,2865 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/backfill.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.CronAggregateBackfill} + */ +public final class CronAggregateBackfill extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.CronAggregateBackfill) + CronAggregateBackfillOrBuilder { +private static final long serialVersionUID = 0L; + // Use CronAggregateBackfill.newBuilder() to construct. + private CronAggregateBackfill(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private CronAggregateBackfill() { + id_ = ""; + environmentId_ = ""; + deploymentId_ = ""; + name_ = ""; + schedule_ = ""; + filename_ = ""; + planHash_ = ""; + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + resolvers_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + target_ = 0; + resourceGroup_ = ""; + targets_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new CronAggregateBackfill(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.BackfillProto.internal_static_chalk_aggregate_v1_CronAggregateBackfill_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.BackfillProto.internal_static_chalk_aggregate_v1_CronAggregateBackfill_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.class, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder.class); + } + + private int bitField0_; + public static final int ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; + /** + * string id = 1 [json_name = "id"]; + * @return The id. + */ + @java.lang.Override + public java.lang.String getId() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; + } + } + /** + * string id = 1 [json_name = "id"]; + * @return The bytes for id. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ENVIRONMENT_ID_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object environmentId_ = ""; + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @return The environmentId. + */ + @java.lang.Override + public java.lang.String getEnvironmentId() { + java.lang.Object ref = environmentId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + environmentId_ = s; + return s; + } + } + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @return The bytes for environmentId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getEnvironmentIdBytes() { + java.lang.Object ref = environmentId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + environmentId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DEPLOYMENT_ID_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object deploymentId_ = ""; + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @return The deploymentId. + */ + @java.lang.Override + public java.lang.String getDeploymentId() { + java.lang.Object ref = deploymentId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deploymentId_ = s; + return s; + } + } + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @return The bytes for deploymentId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDeploymentIdBytes() { + java.lang.Object ref = deploymentId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deploymentId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int NAME_FIELD_NUMBER = 11; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + /** + * string name = 11 [json_name = "name"]; + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * string name = 11 [json_name = "name"]; + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SCHEDULE_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private volatile java.lang.Object schedule_ = ""; + /** + * string schedule = 4 [json_name = "schedule"]; + * @return The schedule. + */ + @java.lang.Override + public java.lang.String getSchedule() { + java.lang.Object ref = schedule_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + schedule_ = s; + return s; + } + } + /** + * string schedule = 4 [json_name = "schedule"]; + * @return The bytes for schedule. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getScheduleBytes() { + java.lang.Object ref = schedule_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + schedule_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int FILENAME_FIELD_NUMBER = 12; + @SuppressWarnings("serial") + private volatile java.lang.Object filename_ = ""; + /** + * optional string filename = 12 [json_name = "filename"]; + * @return Whether the filename field is set. + */ + @java.lang.Override + public boolean hasFilename() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * optional string filename = 12 [json_name = "filename"]; + * @return The filename. + */ + @java.lang.Override + public java.lang.String getFilename() { + java.lang.Object ref = filename_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filename_ = s; + return s; + } + } + /** + * optional string filename = 12 [json_name = "filename"]; + * @return The bytes for filename. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getFilenameBytes() { + java.lang.Object ref = filename_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + filename_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PLAN_HASH_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private volatile java.lang.Object planHash_ = ""; + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @return The planHash. + */ + @java.lang.Override + public java.lang.String getPlanHash() { + java.lang.Object ref = planHash_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + planHash_ = s; + return s; + } + } + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getPlanHashBytes() { + java.lang.Object ref = planHash_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + planHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int FEATURES_FIELD_NUMBER = 8; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string features = 8 [json_name = "features"]; + * @return A list containing the features. + */ + public com.google.protobuf.ProtocolStringList + getFeaturesList() { + return features_; + } + /** + * repeated string features = 8 [json_name = "features"]; + * @return The count of features. + */ + public int getFeaturesCount() { + return features_.size(); + } + /** + * repeated string features = 8 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + public java.lang.String getFeatures(int index) { + return features_.get(index); + } + /** + * repeated string features = 8 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + public com.google.protobuf.ByteString + getFeaturesBytes(int index) { + return features_.getByteString(index); + } + + public static final int RESOLVERS_FIELD_NUMBER = 9; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList resolvers_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @return A list containing the resolvers. + */ + public com.google.protobuf.ProtocolStringList + getResolversList() { + return resolvers_; + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @return The count of resolvers. + */ + public int getResolversCount() { + return resolvers_.size(); + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param index The index of the element to return. + * @return The resolvers at the given index. + */ + public java.lang.String getResolvers(int index) { + return resolvers_.get(index); + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param index The index of the value to return. + * @return The bytes of the resolvers at the given index. + */ + public com.google.protobuf.ByteString + getResolversBytes(int index) { + return resolvers_.getByteString(index); + } + + public static final int QUERY_TAGS_FIELD_NUMBER = 10; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + public com.google.protobuf.ProtocolStringList + getQueryTagsList() { + return queryTags_; + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + public int getQueryTagsCount() { + return queryTags_.size(); + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + public java.lang.String getQueryTags(int index) { + return queryTags_.get(index); + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + public com.google.protobuf.ByteString + getQueryTagsBytes(int index) { + return queryTags_.getByteString(index); + } + + public static final int TARGET_FIELD_NUMBER = 13; + private int target_ = 0; + /** + *
+   * TODO: deprecate
+   * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @return The enum numeric value on the wire for target. + */ + @java.lang.Override public int getTargetValue() { + return target_; + } + /** + *
+   * TODO: deprecate
+   * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @return The target. + */ + @java.lang.Override public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget getTarget() { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget.forNumber(target_); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget.UNRECOGNIZED : result; + } + + public static final int RESOURCE_GROUP_FIELD_NUMBER = 14; + @SuppressWarnings("serial") + private volatile java.lang.Object resourceGroup_ = ""; + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + @java.lang.Override + public boolean hasResourceGroup() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + @java.lang.Override + public java.lang.String getResourceGroup() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceGroup_ = s; + return s; + } + } + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getResourceGroupBytes() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceGroup_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int TARGETS_FIELD_NUMBER = 15; + @SuppressWarnings("serial") + private java.util.List targets_; + private static final com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget> targets_converter_ = + new com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget>() { + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget convert(java.lang.Integer from) { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget.forNumber(from); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget.UNRECOGNIZED : result; + } + }; + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return A list containing the targets. + */ + @java.lang.Override + public java.util.List getTargetsList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget>(targets_, targets_converter_); + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return The count of targets. + */ + @java.lang.Override + public int getTargetsCount() { + return targets_.size(); + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param index The index of the element to return. + * @return The targets at the given index. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget getTargets(int index) { + return targets_converter_.convert(targets_.get(index)); + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return A list containing the enum numeric values on the wire for targets. + */ + @java.lang.Override + public java.util.List + getTargetsValueList() { + return targets_; + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param index The index of the value to return. + * @return The enum numeric value on the wire of targets at the given index. + */ + @java.lang.Override + public int getTargetsValue(int index) { + return targets_.get(index); + } + private int targetsMemoizedSerializedSize; + + public static final int CREATED_AT_FIELD_NUMBER = 6; + private com.google.protobuf.Timestamp createdAt_; + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + * @return Whether the createdAt field is set. + */ + @java.lang.Override + public boolean hasCreatedAt() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + * @return The createdAt. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreatedAt() { + return createdAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_; + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder() { + return createdAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_; + } + + public static final int UPDATED_AT_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp updatedAt_; + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + * @return Whether the updatedAt field is set. + */ + @java.lang.Override + public boolean hasUpdatedAt() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + * @return The updatedAt. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdatedAt() { + return updatedAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updatedAt_; + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdatedAtOrBuilder() { + return updatedAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updatedAt_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(environmentId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, environmentId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deploymentId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, deploymentId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(schedule_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, schedule_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(planHash_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, planHash_); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(6, getCreatedAt()); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(7, getUpdatedAt()); + } + for (int i = 0; i < features_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 8, features_.getRaw(i)); + } + for (int i = 0; i < resolvers_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 9, resolvers_.getRaw(i)); + } + for (int i = 0; i < queryTags_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 10, queryTags_.getRaw(i)); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 11, name_); + } + if (((bitField0_ & 0x00000001) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 12, filename_); + } + if (target_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget.AGGREGATE_BACKFILL_TARGET_UNSPECIFIED.getNumber()) { + output.writeEnum(13, target_); + } + if (((bitField0_ & 0x00000002) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 14, resourceGroup_); + } + if (getTargetsList().size() > 0) { + output.writeUInt32NoTag(122); + output.writeUInt32NoTag(targetsMemoizedSerializedSize); + } + for (int i = 0; i < targets_.size(); i++) { + output.writeEnumNoTag(targets_.get(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(environmentId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, environmentId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deploymentId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, deploymentId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(schedule_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, schedule_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(planHash_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, planHash_); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(6, getCreatedAt()); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(7, getUpdatedAt()); + } + { + int dataSize = 0; + for (int i = 0; i < features_.size(); i++) { + dataSize += computeStringSizeNoTag(features_.getRaw(i)); + } + size += dataSize; + size += 1 * getFeaturesList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < resolvers_.size(); i++) { + dataSize += computeStringSizeNoTag(resolvers_.getRaw(i)); + } + size += dataSize; + size += 1 * getResolversList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < queryTags_.size(); i++) { + dataSize += computeStringSizeNoTag(queryTags_.getRaw(i)); + } + size += dataSize; + size += 1 * getQueryTagsList().size(); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, name_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, filename_); + } + if (target_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget.AGGREGATE_BACKFILL_TARGET_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(13, target_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, resourceGroup_); + } + { + int dataSize = 0; + for (int i = 0; i < targets_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeEnumSizeNoTag(targets_.get(i)); + } + size += dataSize; + if (!getTargetsList().isEmpty()) { size += 1; + size += com.google.protobuf.CodedOutputStream + .computeUInt32SizeNoTag(dataSize); + }targetsMemoizedSerializedSize = dataSize; + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill other = (ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill) obj; + + if (!getId() + .equals(other.getId())) return false; + if (!getEnvironmentId() + .equals(other.getEnvironmentId())) return false; + if (!getDeploymentId() + .equals(other.getDeploymentId())) return false; + if (!getName() + .equals(other.getName())) return false; + if (!getSchedule() + .equals(other.getSchedule())) return false; + if (hasFilename() != other.hasFilename()) return false; + if (hasFilename()) { + if (!getFilename() + .equals(other.getFilename())) return false; + } + if (!getPlanHash() + .equals(other.getPlanHash())) return false; + if (!getFeaturesList() + .equals(other.getFeaturesList())) return false; + if (!getResolversList() + .equals(other.getResolversList())) return false; + if (!getQueryTagsList() + .equals(other.getQueryTagsList())) return false; + if (target_ != other.target_) return false; + if (hasResourceGroup() != other.hasResourceGroup()) return false; + if (hasResourceGroup()) { + if (!getResourceGroup() + .equals(other.getResourceGroup())) return false; + } + if (!targets_.equals(other.targets_)) return false; + if (hasCreatedAt() != other.hasCreatedAt()) return false; + if (hasCreatedAt()) { + if (!getCreatedAt() + .equals(other.getCreatedAt())) return false; + } + if (hasUpdatedAt() != other.hasUpdatedAt()) return false; + if (hasUpdatedAt()) { + if (!getUpdatedAt() + .equals(other.getUpdatedAt())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + hash = (37 * hash) + ENVIRONMENT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEnvironmentId().hashCode(); + hash = (37 * hash) + DEPLOYMENT_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeploymentId().hashCode(); + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + SCHEDULE_FIELD_NUMBER; + hash = (53 * hash) + getSchedule().hashCode(); + if (hasFilename()) { + hash = (37 * hash) + FILENAME_FIELD_NUMBER; + hash = (53 * hash) + getFilename().hashCode(); + } + hash = (37 * hash) + PLAN_HASH_FIELD_NUMBER; + hash = (53 * hash) + getPlanHash().hashCode(); + if (getFeaturesCount() > 0) { + hash = (37 * hash) + FEATURES_FIELD_NUMBER; + hash = (53 * hash) + getFeaturesList().hashCode(); + } + if (getResolversCount() > 0) { + hash = (37 * hash) + RESOLVERS_FIELD_NUMBER; + hash = (53 * hash) + getResolversList().hashCode(); + } + if (getQueryTagsCount() > 0) { + hash = (37 * hash) + QUERY_TAGS_FIELD_NUMBER; + hash = (53 * hash) + getQueryTagsList().hashCode(); + } + hash = (37 * hash) + TARGET_FIELD_NUMBER; + hash = (53 * hash) + target_; + if (hasResourceGroup()) { + hash = (37 * hash) + RESOURCE_GROUP_FIELD_NUMBER; + hash = (53 * hash) + getResourceGroup().hashCode(); + } + if (getTargetsCount() > 0) { + hash = (37 * hash) + TARGETS_FIELD_NUMBER; + hash = (53 * hash) + targets_.hashCode(); + } + if (hasCreatedAt()) { + hash = (37 * hash) + CREATED_AT_FIELD_NUMBER; + hash = (53 * hash) + getCreatedAt().hashCode(); + } + if (hasUpdatedAt()) { + hash = (37 * hash) + UPDATED_AT_FIELD_NUMBER; + hash = (53 * hash) + getUpdatedAt().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.CronAggregateBackfill} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.CronAggregateBackfill) + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.BackfillProto.internal_static_chalk_aggregate_v1_CronAggregateBackfill_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.BackfillProto.internal_static_chalk_aggregate_v1_CronAggregateBackfill_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.class, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getCreatedAtFieldBuilder(); + getUpdatedAtFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + id_ = ""; + environmentId_ = ""; + deploymentId_ = ""; + name_ = ""; + schedule_ = ""; + filename_ = ""; + planHash_ = ""; + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + resolvers_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + target_ = 0; + resourceGroup_ = ""; + targets_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00001000); + createdAt_ = null; + if (createdAtBuilder_ != null) { + createdAtBuilder_.dispose(); + createdAtBuilder_ = null; + } + updatedAt_ = null; + if (updatedAtBuilder_ != null) { + updatedAtBuilder_.dispose(); + updatedAtBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.BackfillProto.internal_static_chalk_aggregate_v1_CronAggregateBackfill_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill build() { + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill result = new ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill result) { + if (((bitField0_ & 0x00001000) != 0)) { + targets_ = java.util.Collections.unmodifiableList(targets_); + bitField0_ = (bitField0_ & ~0x00001000); + } + result.targets_ = targets_; + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.id_ = id_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.environmentId_ = environmentId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.deploymentId_ = deploymentId_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.schedule_ = schedule_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000020) != 0)) { + result.filename_ = filename_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.planHash_ = planHash_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + features_.makeImmutable(); + result.features_ = features_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + resolvers_.makeImmutable(); + result.resolvers_ = resolvers_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + queryTags_.makeImmutable(); + result.queryTags_ = queryTags_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.target_ = target_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.resourceGroup_ = resourceGroup_; + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.createdAt_ = createdAtBuilder_ == null + ? createdAt_ + : createdAtBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.updatedAt_ = updatedAtBuilder_ == null + ? updatedAt_ + : updatedAtBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance()) return this; + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getEnvironmentId().isEmpty()) { + environmentId_ = other.environmentId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getDeploymentId().isEmpty()) { + deploymentId_ = other.deploymentId_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (!other.getSchedule().isEmpty()) { + schedule_ = other.schedule_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (other.hasFilename()) { + filename_ = other.filename_; + bitField0_ |= 0x00000020; + onChanged(); + } + if (!other.getPlanHash().isEmpty()) { + planHash_ = other.planHash_; + bitField0_ |= 0x00000040; + onChanged(); + } + if (!other.features_.isEmpty()) { + if (features_.isEmpty()) { + features_ = other.features_; + bitField0_ |= 0x00000080; + } else { + ensureFeaturesIsMutable(); + features_.addAll(other.features_); + } + onChanged(); + } + if (!other.resolvers_.isEmpty()) { + if (resolvers_.isEmpty()) { + resolvers_ = other.resolvers_; + bitField0_ |= 0x00000100; + } else { + ensureResolversIsMutable(); + resolvers_.addAll(other.resolvers_); + } + onChanged(); + } + if (!other.queryTags_.isEmpty()) { + if (queryTags_.isEmpty()) { + queryTags_ = other.queryTags_; + bitField0_ |= 0x00000200; + } else { + ensureQueryTagsIsMutable(); + queryTags_.addAll(other.queryTags_); + } + onChanged(); + } + if (other.target_ != 0) { + setTargetValue(other.getTargetValue()); + } + if (other.hasResourceGroup()) { + resourceGroup_ = other.resourceGroup_; + bitField0_ |= 0x00000800; + onChanged(); + } + if (!other.targets_.isEmpty()) { + if (targets_.isEmpty()) { + targets_ = other.targets_; + bitField0_ = (bitField0_ & ~0x00001000); + } else { + ensureTargetsIsMutable(); + targets_.addAll(other.targets_); + } + onChanged(); + } + if (other.hasCreatedAt()) { + mergeCreatedAt(other.getCreatedAt()); + } + if (other.hasUpdatedAt()) { + mergeUpdatedAt(other.getUpdatedAt()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + environmentId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + deploymentId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + schedule_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 34 + case 42: { + planHash_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000040; + break; + } // case 42 + case 50: { + input.readMessage( + getCreatedAtFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00002000; + break; + } // case 50 + case 58: { + input.readMessage( + getUpdatedAtFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00004000; + break; + } // case 58 + case 66: { + java.lang.String s = input.readStringRequireUtf8(); + ensureFeaturesIsMutable(); + features_.add(s); + break; + } // case 66 + case 74: { + java.lang.String s = input.readStringRequireUtf8(); + ensureResolversIsMutable(); + resolvers_.add(s); + break; + } // case 74 + case 82: { + java.lang.String s = input.readStringRequireUtf8(); + ensureQueryTagsIsMutable(); + queryTags_.add(s); + break; + } // case 82 + case 90: { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 90 + case 98: { + filename_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 98 + case 104: { + target_ = input.readEnum(); + bitField0_ |= 0x00000400; + break; + } // case 104 + case 114: { + resourceGroup_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000800; + break; + } // case 114 + case 120: { + int tmpRaw = input.readEnum(); + ensureTargetsIsMutable(); + targets_.add(tmpRaw); + break; + } // case 120 + case 122: { + int length = input.readRawVarint32(); + int oldLimit = input.pushLimit(length); + while(input.getBytesUntilLimit() > 0) { + int tmpRaw = input.readEnum(); + ensureTargetsIsMutable(); + targets_.add(tmpRaw); + } + input.popLimit(oldLimit); + break; + } // case 122 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object id_ = ""; + /** + * string id = 1 [json_name = "id"]; + * @return The id. + */ + public java.lang.String getId() { + java.lang.Object ref = id_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + id_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string id = 1 [json_name = "id"]; + * @return The bytes for id. + */ + public com.google.protobuf.ByteString + getIdBytes() { + java.lang.Object ref = id_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + id_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string id = 1 [json_name = "id"]; + * @param value The id to set. + * @return This builder for chaining. + */ + public Builder setId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + id_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string id = 1 [json_name = "id"]; + * @return This builder for chaining. + */ + public Builder clearId() { + id_ = getDefaultInstance().getId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string id = 1 [json_name = "id"]; + * @param value The bytes for id to set. + * @return This builder for chaining. + */ + public Builder setIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + id_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object environmentId_ = ""; + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @return The environmentId. + */ + public java.lang.String getEnvironmentId() { + java.lang.Object ref = environmentId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + environmentId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @return The bytes for environmentId. + */ + public com.google.protobuf.ByteString + getEnvironmentIdBytes() { + java.lang.Object ref = environmentId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + environmentId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @param value The environmentId to set. + * @return This builder for chaining. + */ + public Builder setEnvironmentId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + environmentId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @return This builder for chaining. + */ + public Builder clearEnvironmentId() { + environmentId_ = getDefaultInstance().getEnvironmentId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @param value The bytes for environmentId to set. + * @return This builder for chaining. + */ + public Builder setEnvironmentIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + environmentId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object deploymentId_ = ""; + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @return The deploymentId. + */ + public java.lang.String getDeploymentId() { + java.lang.Object ref = deploymentId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deploymentId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @return The bytes for deploymentId. + */ + public com.google.protobuf.ByteString + getDeploymentIdBytes() { + java.lang.Object ref = deploymentId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deploymentId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @param value The deploymentId to set. + * @return This builder for chaining. + */ + public Builder setDeploymentId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + deploymentId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @return This builder for chaining. + */ + public Builder clearDeploymentId() { + deploymentId_ = getDefaultInstance().getDeploymentId(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @param value The bytes for deploymentId to set. + * @return This builder for chaining. + */ + public Builder setDeploymentIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + deploymentId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private java.lang.Object name_ = ""; + /** + * string name = 11 [json_name = "name"]; + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string name = 11 [json_name = "name"]; + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string name = 11 [json_name = "name"]; + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + name_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * string name = 11 [json_name = "name"]; + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + /** + * string name = 11 [json_name = "name"]; + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + name_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private java.lang.Object schedule_ = ""; + /** + * string schedule = 4 [json_name = "schedule"]; + * @return The schedule. + */ + public java.lang.String getSchedule() { + java.lang.Object ref = schedule_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + schedule_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string schedule = 4 [json_name = "schedule"]; + * @return The bytes for schedule. + */ + public com.google.protobuf.ByteString + getScheduleBytes() { + java.lang.Object ref = schedule_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + schedule_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string schedule = 4 [json_name = "schedule"]; + * @param value The schedule to set. + * @return This builder for chaining. + */ + public Builder setSchedule( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + schedule_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * string schedule = 4 [json_name = "schedule"]; + * @return This builder for chaining. + */ + public Builder clearSchedule() { + schedule_ = getDefaultInstance().getSchedule(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + /** + * string schedule = 4 [json_name = "schedule"]; + * @param value The bytes for schedule to set. + * @return This builder for chaining. + */ + public Builder setScheduleBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + schedule_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private java.lang.Object filename_ = ""; + /** + * optional string filename = 12 [json_name = "filename"]; + * @return Whether the filename field is set. + */ + public boolean hasFilename() { + return ((bitField0_ & 0x00000020) != 0); + } + /** + * optional string filename = 12 [json_name = "filename"]; + * @return The filename. + */ + public java.lang.String getFilename() { + java.lang.Object ref = filename_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filename_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string filename = 12 [json_name = "filename"]; + * @return The bytes for filename. + */ + public com.google.protobuf.ByteString + getFilenameBytes() { + java.lang.Object ref = filename_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + filename_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string filename = 12 [json_name = "filename"]; + * @param value The filename to set. + * @return This builder for chaining. + */ + public Builder setFilename( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + filename_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * optional string filename = 12 [json_name = "filename"]; + * @return This builder for chaining. + */ + public Builder clearFilename() { + filename_ = getDefaultInstance().getFilename(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + * optional string filename = 12 [json_name = "filename"]; + * @param value The bytes for filename to set. + * @return This builder for chaining. + */ + public Builder setFilenameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + filename_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private java.lang.Object planHash_ = ""; + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @return The planHash. + */ + public java.lang.String getPlanHash() { + java.lang.Object ref = planHash_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + planHash_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + public com.google.protobuf.ByteString + getPlanHashBytes() { + java.lang.Object ref = planHash_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + planHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @param value The planHash to set. + * @return This builder for chaining. + */ + public Builder setPlanHash( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + planHash_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @return This builder for chaining. + */ + public Builder clearPlanHash() { + planHash_ = getDefaultInstance().getPlanHash(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + return this; + } + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @param value The bytes for planHash to set. + * @return This builder for chaining. + */ + public Builder setPlanHashBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + planHash_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureFeaturesIsMutable() { + if (!features_.isModifiable()) { + features_ = new com.google.protobuf.LazyStringArrayList(features_); + } + bitField0_ |= 0x00000080; + } + /** + * repeated string features = 8 [json_name = "features"]; + * @return A list containing the features. + */ + public com.google.protobuf.ProtocolStringList + getFeaturesList() { + features_.makeImmutable(); + return features_; + } + /** + * repeated string features = 8 [json_name = "features"]; + * @return The count of features. + */ + public int getFeaturesCount() { + return features_.size(); + } + /** + * repeated string features = 8 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + public java.lang.String getFeatures(int index) { + return features_.get(index); + } + /** + * repeated string features = 8 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + public com.google.protobuf.ByteString + getFeaturesBytes(int index) { + return features_.getByteString(index); + } + /** + * repeated string features = 8 [json_name = "features"]; + * @param index The index to set the value at. + * @param value The features to set. + * @return This builder for chaining. + */ + public Builder setFeatures( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFeaturesIsMutable(); + features_.set(index, value); + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * repeated string features = 8 [json_name = "features"]; + * @param value The features to add. + * @return This builder for chaining. + */ + public Builder addFeatures( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureFeaturesIsMutable(); + features_.add(value); + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * repeated string features = 8 [json_name = "features"]; + * @param values The features to add. + * @return This builder for chaining. + */ + public Builder addAllFeatures( + java.lang.Iterable values) { + ensureFeaturesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, features_); + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * repeated string features = 8 [json_name = "features"]; + * @return This builder for chaining. + */ + public Builder clearFeatures() { + features_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000080);; + onChanged(); + return this; + } + /** + * repeated string features = 8 [json_name = "features"]; + * @param value The bytes of the features to add. + * @return This builder for chaining. + */ + public Builder addFeaturesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureFeaturesIsMutable(); + features_.add(value); + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList resolvers_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureResolversIsMutable() { + if (!resolvers_.isModifiable()) { + resolvers_ = new com.google.protobuf.LazyStringArrayList(resolvers_); + } + bitField0_ |= 0x00000100; + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @return A list containing the resolvers. + */ + public com.google.protobuf.ProtocolStringList + getResolversList() { + resolvers_.makeImmutable(); + return resolvers_; + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @return The count of resolvers. + */ + public int getResolversCount() { + return resolvers_.size(); + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param index The index of the element to return. + * @return The resolvers at the given index. + */ + public java.lang.String getResolvers(int index) { + return resolvers_.get(index); + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param index The index of the value to return. + * @return The bytes of the resolvers at the given index. + */ + public com.google.protobuf.ByteString + getResolversBytes(int index) { + return resolvers_.getByteString(index); + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param index The index to set the value at. + * @param value The resolvers to set. + * @return This builder for chaining. + */ + public Builder setResolvers( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureResolversIsMutable(); + resolvers_.set(index, value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param value The resolvers to add. + * @return This builder for chaining. + */ + public Builder addResolvers( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureResolversIsMutable(); + resolvers_.add(value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param values The resolvers to add. + * @return This builder for chaining. + */ + public Builder addAllResolvers( + java.lang.Iterable values) { + ensureResolversIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, resolvers_); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @return This builder for chaining. + */ + public Builder clearResolvers() { + resolvers_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000100);; + onChanged(); + return this; + } + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param value The bytes of the resolvers to add. + * @return This builder for chaining. + */ + public Builder addResolversBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureResolversIsMutable(); + resolvers_.add(value); + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureQueryTagsIsMutable() { + if (!queryTags_.isModifiable()) { + queryTags_ = new com.google.protobuf.LazyStringArrayList(queryTags_); + } + bitField0_ |= 0x00000200; + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + public com.google.protobuf.ProtocolStringList + getQueryTagsList() { + queryTags_.makeImmutable(); + return queryTags_; + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + public int getQueryTagsCount() { + return queryTags_.size(); + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + public java.lang.String getQueryTags(int index) { + return queryTags_.get(index); + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + public com.google.protobuf.ByteString + getQueryTagsBytes(int index) { + return queryTags_.getByteString(index); + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param index The index to set the value at. + * @param value The queryTags to set. + * @return This builder for chaining. + */ + public Builder setQueryTags( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureQueryTagsIsMutable(); + queryTags_.set(index, value); + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param value The queryTags to add. + * @return This builder for chaining. + */ + public Builder addQueryTags( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureQueryTagsIsMutable(); + queryTags_.add(value); + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param values The queryTags to add. + * @return This builder for chaining. + */ + public Builder addAllQueryTags( + java.lang.Iterable values) { + ensureQueryTagsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, queryTags_); + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @return This builder for chaining. + */ + public Builder clearQueryTags() { + queryTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000200);; + onChanged(); + return this; + } + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param value The bytes of the queryTags to add. + * @return This builder for chaining. + */ + public Builder addQueryTagsBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureQueryTagsIsMutable(); + queryTags_.add(value); + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + + private int target_ = 0; + /** + *
+     * TODO: deprecate
+     * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @return The enum numeric value on the wire for target. + */ + @java.lang.Override public int getTargetValue() { + return target_; + } + /** + *
+     * TODO: deprecate
+     * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @param value The enum numeric value on the wire for target to set. + * @return This builder for chaining. + */ + public Builder setTargetValue(int value) { + target_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + *
+     * TODO: deprecate
+     * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @return The target. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget getTarget() { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget.forNumber(target_); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget.UNRECOGNIZED : result; + } + /** + *
+     * TODO: deprecate
+     * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @param value The target to set. + * @return This builder for chaining. + */ + public Builder setTarget(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000400; + target_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+     * TODO: deprecate
+     * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @return This builder for chaining. + */ + public Builder clearTarget() { + bitField0_ = (bitField0_ & ~0x00000400); + target_ = 0; + onChanged(); + return this; + } + + private java.lang.Object resourceGroup_ = ""; + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + public boolean hasResourceGroup() { + return ((bitField0_ & 0x00000800) != 0); + } + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + public java.lang.String getResourceGroup() { + java.lang.Object ref = resourceGroup_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceGroup_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + public com.google.protobuf.ByteString + getResourceGroupBytes() { + java.lang.Object ref = resourceGroup_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceGroup_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @param value The resourceGroup to set. + * @return This builder for chaining. + */ + public Builder setResourceGroup( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + resourceGroup_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return This builder for chaining. + */ + public Builder clearResourceGroup() { + resourceGroup_ = getDefaultInstance().getResourceGroup(); + bitField0_ = (bitField0_ & ~0x00000800); + onChanged(); + return this; + } + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @param value The bytes for resourceGroup to set. + * @return This builder for chaining. + */ + public Builder setResourceGroupBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + resourceGroup_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + + private java.util.List targets_ = + java.util.Collections.emptyList(); + private void ensureTargetsIsMutable() { + if (!((bitField0_ & 0x00001000) != 0)) { + targets_ = new java.util.ArrayList(targets_); + bitField0_ |= 0x00001000; + } + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return A list containing the targets. + */ + public java.util.List getTargetsList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget>(targets_, targets_converter_); + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return The count of targets. + */ + public int getTargetsCount() { + return targets_.size(); + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param index The index of the element to return. + * @return The targets at the given index. + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget getTargets(int index) { + return targets_converter_.convert(targets_.get(index)); + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param index The index to set the value at. + * @param value The targets to set. + * @return This builder for chaining. + */ + public Builder setTargets( + int index, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget value) { + if (value == null) { + throw new NullPointerException(); + } + ensureTargetsIsMutable(); + targets_.set(index, value.getNumber()); + onChanged(); + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param value The targets to add. + * @return This builder for chaining. + */ + public Builder addTargets(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget value) { + if (value == null) { + throw new NullPointerException(); + } + ensureTargetsIsMutable(); + targets_.add(value.getNumber()); + onChanged(); + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param values The targets to add. + * @return This builder for chaining. + */ + public Builder addAllTargets( + java.lang.Iterable values) { + ensureTargetsIsMutable(); + for (ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget value : values) { + targets_.add(value.getNumber()); + } + onChanged(); + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return This builder for chaining. + */ + public Builder clearTargets() { + targets_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00001000); + onChanged(); + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return A list containing the enum numeric values on the wire for targets. + */ + public java.util.List + getTargetsValueList() { + return java.util.Collections.unmodifiableList(targets_); + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param index The index of the value to return. + * @return The enum numeric value on the wire of targets at the given index. + */ + public int getTargetsValue(int index) { + return targets_.get(index); + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param index The index to set the value at. + * @param value The enum numeric value on the wire for targets to set. + * @return This builder for chaining. + */ + public Builder setTargetsValue( + int index, int value) { + ensureTargetsIsMutable(); + targets_.set(index, value); + onChanged(); + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param value The enum numeric value on the wire for targets to add. + * @return This builder for chaining. + */ + public Builder addTargetsValue(int value) { + ensureTargetsIsMutable(); + targets_.add(value); + onChanged(); + return this; + } + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param values The enum numeric values on the wire for targets to add. + * @return This builder for chaining. + */ + public Builder addAllTargetsValue( + java.lang.Iterable values) { + ensureTargetsIsMutable(); + for (int value : values) { + targets_.add(value); + } + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp createdAt_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> createdAtBuilder_; + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + * @return Whether the createdAt field is set. + */ + public boolean hasCreatedAt() { + return ((bitField0_ & 0x00002000) != 0); + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + * @return The createdAt. + */ + public com.google.protobuf.Timestamp getCreatedAt() { + if (createdAtBuilder_ == null) { + return createdAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_; + } else { + return createdAtBuilder_.getMessage(); + } + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + public Builder setCreatedAt(com.google.protobuf.Timestamp value) { + if (createdAtBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createdAt_ = value; + } else { + createdAtBuilder_.setMessage(value); + } + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + public Builder setCreatedAt( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (createdAtBuilder_ == null) { + createdAt_ = builderForValue.build(); + } else { + createdAtBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + public Builder mergeCreatedAt(com.google.protobuf.Timestamp value) { + if (createdAtBuilder_ == null) { + if (((bitField0_ & 0x00002000) != 0) && + createdAt_ != null && + createdAt_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getCreatedAtBuilder().mergeFrom(value); + } else { + createdAt_ = value; + } + } else { + createdAtBuilder_.mergeFrom(value); + } + if (createdAt_ != null) { + bitField0_ |= 0x00002000; + onChanged(); + } + return this; + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + public Builder clearCreatedAt() { + bitField0_ = (bitField0_ & ~0x00002000); + createdAt_ = null; + if (createdAtBuilder_ != null) { + createdAtBuilder_.dispose(); + createdAtBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + public com.google.protobuf.Timestamp.Builder getCreatedAtBuilder() { + bitField0_ |= 0x00002000; + onChanged(); + return getCreatedAtFieldBuilder().getBuilder(); + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + public com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder() { + if (createdAtBuilder_ != null) { + return createdAtBuilder_.getMessageOrBuilder(); + } else { + return createdAt_ == null ? + com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_; + } + } + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> + getCreatedAtFieldBuilder() { + if (createdAtBuilder_ == null) { + createdAtBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( + getCreatedAt(), + getParentForChildren(), + isClean()); + createdAt_ = null; + } + return createdAtBuilder_; + } + + private com.google.protobuf.Timestamp updatedAt_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> updatedAtBuilder_; + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + * @return Whether the updatedAt field is set. + */ + public boolean hasUpdatedAt() { + return ((bitField0_ & 0x00004000) != 0); + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + * @return The updatedAt. + */ + public com.google.protobuf.Timestamp getUpdatedAt() { + if (updatedAtBuilder_ == null) { + return updatedAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updatedAt_; + } else { + return updatedAtBuilder_.getMessage(); + } + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + public Builder setUpdatedAt(com.google.protobuf.Timestamp value) { + if (updatedAtBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + updatedAt_ = value; + } else { + updatedAtBuilder_.setMessage(value); + } + bitField0_ |= 0x00004000; + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + public Builder setUpdatedAt( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (updatedAtBuilder_ == null) { + updatedAt_ = builderForValue.build(); + } else { + updatedAtBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00004000; + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + public Builder mergeUpdatedAt(com.google.protobuf.Timestamp value) { + if (updatedAtBuilder_ == null) { + if (((bitField0_ & 0x00004000) != 0) && + updatedAt_ != null && + updatedAt_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdatedAtBuilder().mergeFrom(value); + } else { + updatedAt_ = value; + } + } else { + updatedAtBuilder_.mergeFrom(value); + } + if (updatedAt_ != null) { + bitField0_ |= 0x00004000; + onChanged(); + } + return this; + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + public Builder clearUpdatedAt() { + bitField0_ = (bitField0_ & ~0x00004000); + updatedAt_ = null; + if (updatedAtBuilder_ != null) { + updatedAtBuilder_.dispose(); + updatedAtBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + public com.google.protobuf.Timestamp.Builder getUpdatedAtBuilder() { + bitField0_ |= 0x00004000; + onChanged(); + return getUpdatedAtFieldBuilder().getBuilder(); + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + public com.google.protobuf.TimestampOrBuilder getUpdatedAtOrBuilder() { + if (updatedAtBuilder_ != null) { + return updatedAtBuilder_.getMessageOrBuilder(); + } else { + return updatedAt_ == null ? + com.google.protobuf.Timestamp.getDefaultInstance() : updatedAt_; + } + } + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> + getUpdatedAtFieldBuilder() { + if (updatedAtBuilder_ == null) { + updatedAtBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( + getUpdatedAt(), + getParentForChildren(), + isClean()); + updatedAt_ = null; + } + return updatedAtBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.CronAggregateBackfill) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.CronAggregateBackfill) + private static final ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CronAggregateBackfill parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillOrBuilder.java new file mode 100644 index 00000000..d1b2bbbd --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillOrBuilder.java @@ -0,0 +1,269 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/backfill.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface CronAggregateBackfillOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.CronAggregateBackfill) + com.google.protobuf.MessageOrBuilder { + + /** + * string id = 1 [json_name = "id"]; + * @return The id. + */ + java.lang.String getId(); + /** + * string id = 1 [json_name = "id"]; + * @return The bytes for id. + */ + com.google.protobuf.ByteString + getIdBytes(); + + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @return The environmentId. + */ + java.lang.String getEnvironmentId(); + /** + * string environment_id = 2 [json_name = "environmentId"]; + * @return The bytes for environmentId. + */ + com.google.protobuf.ByteString + getEnvironmentIdBytes(); + + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @return The deploymentId. + */ + java.lang.String getDeploymentId(); + /** + * string deployment_id = 3 [json_name = "deploymentId"]; + * @return The bytes for deploymentId. + */ + com.google.protobuf.ByteString + getDeploymentIdBytes(); + + /** + * string name = 11 [json_name = "name"]; + * @return The name. + */ + java.lang.String getName(); + /** + * string name = 11 [json_name = "name"]; + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + * string schedule = 4 [json_name = "schedule"]; + * @return The schedule. + */ + java.lang.String getSchedule(); + /** + * string schedule = 4 [json_name = "schedule"]; + * @return The bytes for schedule. + */ + com.google.protobuf.ByteString + getScheduleBytes(); + + /** + * optional string filename = 12 [json_name = "filename"]; + * @return Whether the filename field is set. + */ + boolean hasFilename(); + /** + * optional string filename = 12 [json_name = "filename"]; + * @return The filename. + */ + java.lang.String getFilename(); + /** + * optional string filename = 12 [json_name = "filename"]; + * @return The bytes for filename. + */ + com.google.protobuf.ByteString + getFilenameBytes(); + + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @return The planHash. + */ + java.lang.String getPlanHash(); + /** + * string plan_hash = 5 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + com.google.protobuf.ByteString + getPlanHashBytes(); + + /** + * repeated string features = 8 [json_name = "features"]; + * @return A list containing the features. + */ + java.util.List + getFeaturesList(); + /** + * repeated string features = 8 [json_name = "features"]; + * @return The count of features. + */ + int getFeaturesCount(); + /** + * repeated string features = 8 [json_name = "features"]; + * @param index The index of the element to return. + * @return The features at the given index. + */ + java.lang.String getFeatures(int index); + /** + * repeated string features = 8 [json_name = "features"]; + * @param index The index of the value to return. + * @return The bytes of the features at the given index. + */ + com.google.protobuf.ByteString + getFeaturesBytes(int index); + + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @return A list containing the resolvers. + */ + java.util.List + getResolversList(); + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @return The count of resolvers. + */ + int getResolversCount(); + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param index The index of the element to return. + * @return The resolvers at the given index. + */ + java.lang.String getResolvers(int index); + /** + * repeated string resolvers = 9 [json_name = "resolvers"]; + * @param index The index of the value to return. + * @return The bytes of the resolvers at the given index. + */ + com.google.protobuf.ByteString + getResolversBytes(int index); + + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @return A list containing the queryTags. + */ + java.util.List + getQueryTagsList(); + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @return The count of queryTags. + */ + int getQueryTagsCount(); + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param index The index of the element to return. + * @return The queryTags at the given index. + */ + java.lang.String getQueryTags(int index); + /** + * repeated string query_tags = 10 [json_name = "queryTags"]; + * @param index The index of the value to return. + * @return The bytes of the queryTags at the given index. + */ + com.google.protobuf.ByteString + getQueryTagsBytes(int index); + + /** + *
+   * TODO: deprecate
+   * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @return The enum numeric value on the wire for target. + */ + int getTargetValue(); + /** + *
+   * TODO: deprecate
+   * 
+ * + * .chalk.aggregate.v1.AggregateBackfillTarget target = 13 [json_name = "target"]; + * @return The target. + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget getTarget(); + + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return Whether the resourceGroup field is set. + */ + boolean hasResourceGroup(); + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return The resourceGroup. + */ + java.lang.String getResourceGroup(); + /** + * optional string resource_group = 14 [json_name = "resourceGroup"]; + * @return The bytes for resourceGroup. + */ + com.google.protobuf.ByteString + getResourceGroupBytes(); + + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return A list containing the targets. + */ + java.util.List getTargetsList(); + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return The count of targets. + */ + int getTargetsCount(); + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param index The index of the element to return. + * @return The targets at the given index. + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillTarget getTargets(int index); + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @return A list containing the enum numeric values on the wire for targets. + */ + java.util.List + getTargetsValueList(); + /** + * repeated .chalk.aggregate.v1.AggregateBackfillTarget targets = 15 [json_name = "targets"]; + * @param index The index of the value to return. + * @return The enum numeric value on the wire of targets at the given index. + */ + int getTargetsValue(int index); + + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + * @return Whether the createdAt field is set. + */ + boolean hasCreatedAt(); + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + * @return The createdAt. + */ + com.google.protobuf.Timestamp getCreatedAt(); + /** + * .google.protobuf.Timestamp created_at = 6 [json_name = "createdAt"]; + */ + com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder(); + + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + * @return Whether the updatedAt field is set. + */ + boolean hasUpdatedAt(); + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + * @return The updatedAt. + */ + com.google.protobuf.Timestamp getUpdatedAt(); + /** + * .google.protobuf.Timestamp updated_at = 7 [json_name = "updatedAt"]; + */ + com.google.protobuf.TimestampOrBuilder getUpdatedAtOrBuilder(); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillWithLatestRun.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillWithLatestRun.java new file mode 100644 index 00000000..2e8b610b --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillWithLatestRun.java @@ -0,0 +1,784 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.CronAggregateBackfillWithLatestRun} + */ +public final class CronAggregateBackfillWithLatestRun extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.CronAggregateBackfillWithLatestRun) + CronAggregateBackfillWithLatestRunOrBuilder { +private static final long serialVersionUID = 0L; + // Use CronAggregateBackfillWithLatestRun.newBuilder() to construct. + private CronAggregateBackfillWithLatestRun(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private CronAggregateBackfillWithLatestRun() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new CronAggregateBackfillWithLatestRun(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.class, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder.class); + } + + private int bitField0_; + public static final int CRON_AGGREGATE_BACKFILL_FIELD_NUMBER = 1; + private ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill cronAggregateBackfill_; + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return Whether the cronAggregateBackfill field is set. + */ + @java.lang.Override + public boolean hasCronAggregateBackfill() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return The cronAggregateBackfill. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getCronAggregateBackfill() { + return cronAggregateBackfill_ == null ? ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance() : cronAggregateBackfill_; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder getCronAggregateBackfillOrBuilder() { + return cronAggregateBackfill_ == null ? ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance() : cronAggregateBackfill_; + } + + public static final int LATEST_JOB_FIELD_NUMBER = 2; + private ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob latestJob_; + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + * @return Whether the latestJob field is set. + */ + @java.lang.Override + public boolean hasLatestJob() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + * @return The latestJob. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob getLatestJob() { + return latestJob_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance() : latestJob_; + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder getLatestJobOrBuilder() { + return latestJob_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance() : latestJob_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(1, getCronAggregateBackfill()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(2, getLatestJob()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getCronAggregateBackfill()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getLatestJob()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun other = (ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun) obj; + + if (hasCronAggregateBackfill() != other.hasCronAggregateBackfill()) return false; + if (hasCronAggregateBackfill()) { + if (!getCronAggregateBackfill() + .equals(other.getCronAggregateBackfill())) return false; + } + if (hasLatestJob() != other.hasLatestJob()) return false; + if (hasLatestJob()) { + if (!getLatestJob() + .equals(other.getLatestJob())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasCronAggregateBackfill()) { + hash = (37 * hash) + CRON_AGGREGATE_BACKFILL_FIELD_NUMBER; + hash = (53 * hash) + getCronAggregateBackfill().hashCode(); + } + if (hasLatestJob()) { + hash = (37 * hash) + LATEST_JOB_FIELD_NUMBER; + hash = (53 * hash) + getLatestJob().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.CronAggregateBackfillWithLatestRun} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.CronAggregateBackfillWithLatestRun) + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRunOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.class, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getCronAggregateBackfillFieldBuilder(); + getLatestJobFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + cronAggregateBackfill_ = null; + if (cronAggregateBackfillBuilder_ != null) { + cronAggregateBackfillBuilder_.dispose(); + cronAggregateBackfillBuilder_ = null; + } + latestJob_ = null; + if (latestJobBuilder_ != null) { + latestJobBuilder_.dispose(); + latestJobBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun build() { + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun result = new ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.cronAggregateBackfill_ = cronAggregateBackfillBuilder_ == null + ? cronAggregateBackfill_ + : cronAggregateBackfillBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.latestJob_ = latestJobBuilder_ == null + ? latestJob_ + : latestJobBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.getDefaultInstance()) return this; + if (other.hasCronAggregateBackfill()) { + mergeCronAggregateBackfill(other.getCronAggregateBackfill()); + } + if (other.hasLatestJob()) { + mergeLatestJob(other.getLatestJob()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + input.readMessage( + getCronAggregateBackfillFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + input.readMessage( + getLatestJobFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill cronAggregateBackfill_; + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder> cronAggregateBackfillBuilder_; + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return Whether the cronAggregateBackfill field is set. + */ + public boolean hasCronAggregateBackfill() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return The cronAggregateBackfill. + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getCronAggregateBackfill() { + if (cronAggregateBackfillBuilder_ == null) { + return cronAggregateBackfill_ == null ? ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance() : cronAggregateBackfill_; + } else { + return cronAggregateBackfillBuilder_.getMessage(); + } + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public Builder setCronAggregateBackfill(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill value) { + if (cronAggregateBackfillBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + cronAggregateBackfill_ = value; + } else { + cronAggregateBackfillBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public Builder setCronAggregateBackfill( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder builderForValue) { + if (cronAggregateBackfillBuilder_ == null) { + cronAggregateBackfill_ = builderForValue.build(); + } else { + cronAggregateBackfillBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public Builder mergeCronAggregateBackfill(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill value) { + if (cronAggregateBackfillBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) && + cronAggregateBackfill_ != null && + cronAggregateBackfill_ != ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance()) { + getCronAggregateBackfillBuilder().mergeFrom(value); + } else { + cronAggregateBackfill_ = value; + } + } else { + cronAggregateBackfillBuilder_.mergeFrom(value); + } + if (cronAggregateBackfill_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } + return this; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public Builder clearCronAggregateBackfill() { + bitField0_ = (bitField0_ & ~0x00000001); + cronAggregateBackfill_ = null; + if (cronAggregateBackfillBuilder_ != null) { + cronAggregateBackfillBuilder_.dispose(); + cronAggregateBackfillBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder getCronAggregateBackfillBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getCronAggregateBackfillFieldBuilder().getBuilder(); + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder getCronAggregateBackfillOrBuilder() { + if (cronAggregateBackfillBuilder_ != null) { + return cronAggregateBackfillBuilder_.getMessageOrBuilder(); + } else { + return cronAggregateBackfill_ == null ? + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance() : cronAggregateBackfill_; + } + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder> + getCronAggregateBackfillFieldBuilder() { + if (cronAggregateBackfillBuilder_ == null) { + cronAggregateBackfillBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder>( + getCronAggregateBackfill(), + getParentForChildren(), + isClean()); + cronAggregateBackfill_ = null; + } + return cronAggregateBackfillBuilder_; + } + + private ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob latestJob_; + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder> latestJobBuilder_; + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + * @return Whether the latestJob field is set. + */ + public boolean hasLatestJob() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + * @return The latestJob. + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob getLatestJob() { + if (latestJobBuilder_ == null) { + return latestJob_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance() : latestJob_; + } else { + return latestJobBuilder_.getMessage(); + } + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + public Builder setLatestJob(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob value) { + if (latestJobBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + latestJob_ = value; + } else { + latestJobBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + public Builder setLatestJob( + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder builderForValue) { + if (latestJobBuilder_ == null) { + latestJob_ = builderForValue.build(); + } else { + latestJobBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + public Builder mergeLatestJob(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob value) { + if (latestJobBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) && + latestJob_ != null && + latestJob_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance()) { + getLatestJobBuilder().mergeFrom(value); + } else { + latestJob_ = value; + } + } else { + latestJobBuilder_.mergeFrom(value); + } + if (latestJob_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + public Builder clearLatestJob() { + bitField0_ = (bitField0_ & ~0x00000002); + latestJob_ = null; + if (latestJobBuilder_ != null) { + latestJobBuilder_.dispose(); + latestJobBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder getLatestJobBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getLatestJobFieldBuilder().getBuilder(); + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder getLatestJobOrBuilder() { + if (latestJobBuilder_ != null) { + return latestJobBuilder_.getMessageOrBuilder(); + } else { + return latestJob_ == null ? + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.getDefaultInstance() : latestJob_; + } + } + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder> + getLatestJobFieldBuilder() { + if (latestJobBuilder_ == null) { + latestJobBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder>( + getLatestJob(), + getParentForChildren(), + isClean()); + latestJob_ = null; + } + return latestJobBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.CronAggregateBackfillWithLatestRun) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.CronAggregateBackfillWithLatestRun) + private static final ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CronAggregateBackfillWithLatestRun parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillWithLatestRunOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillWithLatestRunOrBuilder.java new file mode 100644 index 00000000..96570b4d --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/CronAggregateBackfillWithLatestRunOrBuilder.java @@ -0,0 +1,40 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface CronAggregateBackfillWithLatestRunOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.CronAggregateBackfillWithLatestRun) + com.google.protobuf.MessageOrBuilder { + + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return Whether the cronAggregateBackfill field is set. + */ + boolean hasCronAggregateBackfill(); + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return The cronAggregateBackfill. + */ + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getCronAggregateBackfill(); + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder getCronAggregateBackfillOrBuilder(); + + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + * @return Whether the latestJob field is set. + */ + boolean hasLatestJob(); + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + * @return The latestJob. + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob getLatestJob(); + /** + * .chalk.aggregate.v1.AggregateBackfillJob latest_job = 2 [json_name = "latestJob"]; + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJobOrBuilder getLatestJobOrBuilder(); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsRequest.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsRequest.java new file mode 100644 index 00000000..bdb12406 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsRequest.java @@ -0,0 +1,399 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest} + */ +public final class GetActiveCronAggregateBackfillsRequest extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest) + GetActiveCronAggregateBackfillsRequestOrBuilder { +private static final long serialVersionUID = 0L; + // Use GetActiveCronAggregateBackfillsRequest.newBuilder() to construct. + private GetActiveCronAggregateBackfillsRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private GetActiveCronAggregateBackfillsRequest() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new GetActiveCronAggregateBackfillsRequest(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.class, ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.Builder.class); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest other = (ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest) obj; + + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest) + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.class, ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest build() { + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest result = new ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest.getDefaultInstance()) return this; + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest) + private static final ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetActiveCronAggregateBackfillsRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsRequestOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsRequestOrBuilder.java new file mode 100644 index 00000000..0190ffbc --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsRequestOrBuilder.java @@ -0,0 +1,10 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface GetActiveCronAggregateBackfillsRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.GetActiveCronAggregateBackfillsRequest) + com.google.protobuf.MessageOrBuilder { +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsResponse.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsResponse.java new file mode 100644 index 00000000..77df3420 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsResponse.java @@ -0,0 +1,760 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse} + */ +public final class GetActiveCronAggregateBackfillsResponse extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse) + GetActiveCronAggregateBackfillsResponseOrBuilder { +private static final long serialVersionUID = 0L; + // Use GetActiveCronAggregateBackfillsResponse.newBuilder() to construct. + private GetActiveCronAggregateBackfillsResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private GetActiveCronAggregateBackfillsResponse() { + cronAggregateBackfills_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new GetActiveCronAggregateBackfillsResponse(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.class, ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.Builder.class); + } + + public static final int CRON_AGGREGATE_BACKFILLS_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private java.util.List cronAggregateBackfills_; + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + @java.lang.Override + public java.util.List getCronAggregateBackfillsList() { + return cronAggregateBackfills_; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + @java.lang.Override + public java.util.List + getCronAggregateBackfillsOrBuilderList() { + return cronAggregateBackfills_; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + @java.lang.Override + public int getCronAggregateBackfillsCount() { + return cronAggregateBackfills_.size(); + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun getCronAggregateBackfills(int index) { + return cronAggregateBackfills_.get(index); + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRunOrBuilder getCronAggregateBackfillsOrBuilder( + int index) { + return cronAggregateBackfills_.get(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < cronAggregateBackfills_.size(); i++) { + output.writeMessage(1, cronAggregateBackfills_.get(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (int i = 0; i < cronAggregateBackfills_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, cronAggregateBackfills_.get(i)); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse other = (ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse) obj; + + if (!getCronAggregateBackfillsList() + .equals(other.getCronAggregateBackfillsList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getCronAggregateBackfillsCount() > 0) { + hash = (37 * hash) + CRON_AGGREGATE_BACKFILLS_FIELD_NUMBER; + hash = (53 * hash) + getCronAggregateBackfillsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse) + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.class, ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (cronAggregateBackfillsBuilder_ == null) { + cronAggregateBackfills_ = java.util.Collections.emptyList(); + } else { + cronAggregateBackfills_ = null; + cronAggregateBackfillsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse build() { + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse result = new ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse result) { + if (cronAggregateBackfillsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + cronAggregateBackfills_ = java.util.Collections.unmodifiableList(cronAggregateBackfills_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.cronAggregateBackfills_ = cronAggregateBackfills_; + } else { + result.cronAggregateBackfills_ = cronAggregateBackfillsBuilder_.build(); + } + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse result) { + int from_bitField0_ = bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse.getDefaultInstance()) return this; + if (cronAggregateBackfillsBuilder_ == null) { + if (!other.cronAggregateBackfills_.isEmpty()) { + if (cronAggregateBackfills_.isEmpty()) { + cronAggregateBackfills_ = other.cronAggregateBackfills_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.addAll(other.cronAggregateBackfills_); + } + onChanged(); + } + } else { + if (!other.cronAggregateBackfills_.isEmpty()) { + if (cronAggregateBackfillsBuilder_.isEmpty()) { + cronAggregateBackfillsBuilder_.dispose(); + cronAggregateBackfillsBuilder_ = null; + cronAggregateBackfills_ = other.cronAggregateBackfills_; + bitField0_ = (bitField0_ & ~0x00000001); + cronAggregateBackfillsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getCronAggregateBackfillsFieldBuilder() : null; + } else { + cronAggregateBackfillsBuilder_.addAllMessages(other.cronAggregateBackfills_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun m = + input.readMessage( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.parser(), + extensionRegistry); + if (cronAggregateBackfillsBuilder_ == null) { + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.add(m); + } else { + cronAggregateBackfillsBuilder_.addMessage(m); + } + break; + } // case 10 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.util.List cronAggregateBackfills_ = + java.util.Collections.emptyList(); + private void ensureCronAggregateBackfillsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + cronAggregateBackfills_ = new java.util.ArrayList(cronAggregateBackfills_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRunOrBuilder> cronAggregateBackfillsBuilder_; + + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public java.util.List getCronAggregateBackfillsList() { + if (cronAggregateBackfillsBuilder_ == null) { + return java.util.Collections.unmodifiableList(cronAggregateBackfills_); + } else { + return cronAggregateBackfillsBuilder_.getMessageList(); + } + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public int getCronAggregateBackfillsCount() { + if (cronAggregateBackfillsBuilder_ == null) { + return cronAggregateBackfills_.size(); + } else { + return cronAggregateBackfillsBuilder_.getCount(); + } + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun getCronAggregateBackfills(int index) { + if (cronAggregateBackfillsBuilder_ == null) { + return cronAggregateBackfills_.get(index); + } else { + return cronAggregateBackfillsBuilder_.getMessage(index); + } + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder setCronAggregateBackfills( + int index, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun value) { + if (cronAggregateBackfillsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.set(index, value); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder setCronAggregateBackfills( + int index, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder builderForValue) { + if (cronAggregateBackfillsBuilder_ == null) { + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.set(index, builderForValue.build()); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder addCronAggregateBackfills(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun value) { + if (cronAggregateBackfillsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.add(value); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder addCronAggregateBackfills( + int index, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun value) { + if (cronAggregateBackfillsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.add(index, value); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder addCronAggregateBackfills( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder builderForValue) { + if (cronAggregateBackfillsBuilder_ == null) { + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.add(builderForValue.build()); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder addCronAggregateBackfills( + int index, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder builderForValue) { + if (cronAggregateBackfillsBuilder_ == null) { + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.add(index, builderForValue.build()); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder addAllCronAggregateBackfills( + java.lang.Iterable values) { + if (cronAggregateBackfillsBuilder_ == null) { + ensureCronAggregateBackfillsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, cronAggregateBackfills_); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder clearCronAggregateBackfills() { + if (cronAggregateBackfillsBuilder_ == null) { + cronAggregateBackfills_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.clear(); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public Builder removeCronAggregateBackfills(int index) { + if (cronAggregateBackfillsBuilder_ == null) { + ensureCronAggregateBackfillsIsMutable(); + cronAggregateBackfills_.remove(index); + onChanged(); + } else { + cronAggregateBackfillsBuilder_.remove(index); + } + return this; + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder getCronAggregateBackfillsBuilder( + int index) { + return getCronAggregateBackfillsFieldBuilder().getBuilder(index); + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRunOrBuilder getCronAggregateBackfillsOrBuilder( + int index) { + if (cronAggregateBackfillsBuilder_ == null) { + return cronAggregateBackfills_.get(index); } else { + return cronAggregateBackfillsBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public java.util.List + getCronAggregateBackfillsOrBuilderList() { + if (cronAggregateBackfillsBuilder_ != null) { + return cronAggregateBackfillsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(cronAggregateBackfills_); + } + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder addCronAggregateBackfillsBuilder() { + return getCronAggregateBackfillsFieldBuilder().addBuilder( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.getDefaultInstance()); + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder addCronAggregateBackfillsBuilder( + int index) { + return getCronAggregateBackfillsFieldBuilder().addBuilder( + index, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.getDefaultInstance()); + } + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + public java.util.List + getCronAggregateBackfillsBuilderList() { + return getCronAggregateBackfillsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRunOrBuilder> + getCronAggregateBackfillsFieldBuilder() { + if (cronAggregateBackfillsBuilder_ == null) { + cronAggregateBackfillsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRunOrBuilder>( + cronAggregateBackfills_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + cronAggregateBackfills_ = null; + } + return cronAggregateBackfillsBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse) + private static final ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetActiveCronAggregateBackfillsResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsResponseOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsResponseOrBuilder.java new file mode 100644 index 00000000..651d9bf7 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetActiveCronAggregateBackfillsResponseOrBuilder.java @@ -0,0 +1,34 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface GetActiveCronAggregateBackfillsResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.GetActiveCronAggregateBackfillsResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + java.util.List + getCronAggregateBackfillsList(); + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRun getCronAggregateBackfills(int index); + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + int getCronAggregateBackfillsCount(); + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + java.util.List + getCronAggregateBackfillsOrBuilderList(); + /** + * repeated .chalk.aggregate.v1.CronAggregateBackfillWithLatestRun cron_aggregate_backfills = 1 [json_name = "cronAggregateBackfills"]; + */ + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillWithLatestRunOrBuilder getCronAggregateBackfillsOrBuilder( + int index); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetAggregateBackfillJobsRequest.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetAggregateBackfillJobsRequest.java index 5753b8ba..ad2ec38a 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetAggregateBackfillJobsRequest.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetAggregateBackfillJobsRequest.java @@ -18,6 +18,9 @@ private GetAggregateBackfillJobsRequest(com.google.protobuf.GeneratedMessageV3.B } private GetAggregateBackfillJobsRequest() { cursor_ = ""; + planHash_ = ""; + initStatus_ = 0; + name_ = ""; } @java.lang.Override @@ -40,6 +43,7 @@ protected java.lang.Object newInstance( ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobsRequest.class, ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobsRequest.Builder.class); } + private int bitField0_; public static final int LIMIT_FIELD_NUMBER = 1; private int limit_ = 0; /** @@ -90,6 +94,118 @@ public java.lang.String getCursor() { } } + public static final int PLAN_HASH_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object planHash_ = ""; + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return Whether the planHash field is set. + */ + @java.lang.Override + public boolean hasPlanHash() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return The planHash. + */ + @java.lang.Override + public java.lang.String getPlanHash() { + java.lang.Object ref = planHash_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + planHash_ = s; + return s; + } + } + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getPlanHashBytes() { + java.lang.Object ref = planHash_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + planHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int INIT_STATUS_FIELD_NUMBER = 4; + private int initStatus_ = 0; + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @return The enum numeric value on the wire for initStatus. + */ + @java.lang.Override public int getInitStatusValue() { + return initStatus_; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @return The initStatus. + */ + @java.lang.Override public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus getInitStatus() { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.forNumber(initStatus_); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.UNRECOGNIZED : result; + } + + public static final int NAME_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + /** + * optional string name = 5 [json_name = "name"]; + * @return Whether the name field is set. + */ + @java.lang.Override + public boolean hasName() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * optional string name = 5 [json_name = "name"]; + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * optional string name = 5 [json_name = "name"]; + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -110,6 +226,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cursor_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, cursor_); } + if (((bitField0_ & 0x00000001) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, planHash_); + } + if (initStatus_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.AGGREGATE_BACKFILL_STATUS_UNSPECIFIED.getNumber()) { + output.writeEnum(4, initStatus_); + } + if (((bitField0_ & 0x00000002) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, name_); + } getUnknownFields().writeTo(output); } @@ -126,6 +251,16 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cursor_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, cursor_); } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, planHash_); + } + if (initStatus_ != ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.AGGREGATE_BACKFILL_STATUS_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(4, initStatus_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, name_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -145,6 +280,17 @@ public boolean equals(final java.lang.Object obj) { != other.getLimit()) return false; if (!getCursor() .equals(other.getCursor())) return false; + if (hasPlanHash() != other.hasPlanHash()) return false; + if (hasPlanHash()) { + if (!getPlanHash() + .equals(other.getPlanHash())) return false; + } + if (initStatus_ != other.initStatus_) return false; + if (hasName() != other.hasName()) return false; + if (hasName()) { + if (!getName() + .equals(other.getName())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -160,6 +306,16 @@ public int hashCode() { hash = (53 * hash) + getLimit(); hash = (37 * hash) + CURSOR_FIELD_NUMBER; hash = (53 * hash) + getCursor().hashCode(); + if (hasPlanHash()) { + hash = (37 * hash) + PLAN_HASH_FIELD_NUMBER; + hash = (53 * hash) + getPlanHash().hashCode(); + } + hash = (37 * hash) + INIT_STATUS_FIELD_NUMBER; + hash = (53 * hash) + initStatus_; + if (hasName()) { + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -293,6 +449,9 @@ public Builder clear() { bitField0_ = 0; limit_ = 0; cursor_ = ""; + planHash_ = ""; + initStatus_ = 0; + name_ = ""; return this; } @@ -332,6 +491,19 @@ private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfi if (((from_bitField0_ & 0x00000002) != 0)) { result.cursor_ = cursor_; } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000004) != 0)) { + result.planHash_ = planHash_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.initStatus_ = initStatus_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.name_ = name_; + to_bitField0_ |= 0x00000002; + } + result.bitField0_ |= to_bitField0_; } @java.lang.Override @@ -386,6 +558,19 @@ public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfill bitField0_ |= 0x00000002; onChanged(); } + if (other.hasPlanHash()) { + planHash_ = other.planHash_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.initStatus_ != 0) { + setInitStatusValue(other.getInitStatusValue()); + } + if (other.hasName()) { + name_ = other.name_; + bitField0_ |= 0x00000010; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -422,6 +607,21 @@ public Builder mergeFrom( bitField0_ |= 0x00000002; break; } // case 18 + case 26: { + planHash_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: { + initStatus_ = input.readEnum(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -542,6 +742,217 @@ public Builder setCursorBytes( onChanged(); return this; } + + private java.lang.Object planHash_ = ""; + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return Whether the planHash field is set. + */ + public boolean hasPlanHash() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return The planHash. + */ + public java.lang.String getPlanHash() { + java.lang.Object ref = planHash_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + planHash_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + public com.google.protobuf.ByteString + getPlanHashBytes() { + java.lang.Object ref = planHash_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + planHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @param value The planHash to set. + * @return This builder for chaining. + */ + public Builder setPlanHash( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + planHash_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return This builder for chaining. + */ + public Builder clearPlanHash() { + planHash_ = getDefaultInstance().getPlanHash(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @param value The bytes for planHash to set. + * @return This builder for chaining. + */ + public Builder setPlanHashBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + planHash_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private int initStatus_ = 0; + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @return The enum numeric value on the wire for initStatus. + */ + @java.lang.Override public int getInitStatusValue() { + return initStatus_; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @param value The enum numeric value on the wire for initStatus to set. + * @return This builder for chaining. + */ + public Builder setInitStatusValue(int value) { + initStatus_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @return The initStatus. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus getInitStatus() { + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus result = ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.forNumber(initStatus_); + return result == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.UNRECOGNIZED : result; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @param value The initStatus to set. + * @return This builder for chaining. + */ + public Builder setInitStatus(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000008; + initStatus_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @return This builder for chaining. + */ + public Builder clearInitStatus() { + bitField0_ = (bitField0_ & ~0x00000008); + initStatus_ = 0; + onChanged(); + return this; + } + + private java.lang.Object name_ = ""; + /** + * optional string name = 5 [json_name = "name"]; + * @return Whether the name field is set. + */ + public boolean hasName() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * optional string name = 5 [json_name = "name"]; + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string name = 5 [json_name = "name"]; + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string name = 5 [json_name = "name"]; + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + name_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * optional string name = 5 [json_name = "name"]; + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + /** + * optional string name = 5 [json_name = "name"]; + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + name_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetAggregateBackfillJobsRequestOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetAggregateBackfillJobsRequestOrBuilder.java index 44c265d1..f6bba7ee 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetAggregateBackfillJobsRequestOrBuilder.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetAggregateBackfillJobsRequestOrBuilder.java @@ -25,4 +25,49 @@ public interface GetAggregateBackfillJobsRequestOrBuilder extends */ com.google.protobuf.ByteString getCursorBytes(); + + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return Whether the planHash field is set. + */ + boolean hasPlanHash(); + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return The planHash. + */ + java.lang.String getPlanHash(); + /** + * optional string plan_hash = 3 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + com.google.protobuf.ByteString + getPlanHashBytes(); + + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @return The enum numeric value on the wire for initStatus. + */ + int getInitStatusValue(); + /** + * .chalk.aggregate.v1.AggregateBackfillStatus init_status = 4 [json_name = "initStatus"]; + * @return The initStatus. + */ + ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus getInitStatus(); + + /** + * optional string name = 5 [json_name = "name"]; + * @return Whether the name field is set. + */ + boolean hasName(); + /** + * optional string name = 5 [json_name = "name"]; + * @return The name. + */ + java.lang.String getName(); + /** + * optional string name = 5 [json_name = "name"]; + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); } diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillRequest.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillRequest.java new file mode 100644 index 00000000..0d6ca539 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillRequest.java @@ -0,0 +1,692 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.GetCronAggregateBackfillRequest} + */ +public final class GetCronAggregateBackfillRequest extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.GetCronAggregateBackfillRequest) + GetCronAggregateBackfillRequestOrBuilder { +private static final long serialVersionUID = 0L; + // Use GetCronAggregateBackfillRequest.newBuilder() to construct. + private GetCronAggregateBackfillRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private GetCronAggregateBackfillRequest() { + cronAggregateBackfillId_ = ""; + planHash_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new GetCronAggregateBackfillRequest(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.class, ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.Builder.class); + } + + public static final int CRON_AGGREGATE_BACKFILL_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object cronAggregateBackfillId_ = ""; + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @return The cronAggregateBackfillId. + */ + @java.lang.Override + @java.lang.Deprecated public java.lang.String getCronAggregateBackfillId() { + java.lang.Object ref = cronAggregateBackfillId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + cronAggregateBackfillId_ = s; + return s; + } + } + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @return The bytes for cronAggregateBackfillId. + */ + @java.lang.Override + @java.lang.Deprecated public com.google.protobuf.ByteString + getCronAggregateBackfillIdBytes() { + java.lang.Object ref = cronAggregateBackfillId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + cronAggregateBackfillId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PLAN_HASH_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object planHash_ = ""; + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @return The planHash. + */ + @java.lang.Override + public java.lang.String getPlanHash() { + java.lang.Object ref = planHash_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + planHash_ = s; + return s; + } + } + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getPlanHashBytes() { + java.lang.Object ref = planHash_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + planHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cronAggregateBackfillId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, cronAggregateBackfillId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(planHash_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, planHash_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cronAggregateBackfillId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, cronAggregateBackfillId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(planHash_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, planHash_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest other = (ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest) obj; + + if (!getCronAggregateBackfillId() + .equals(other.getCronAggregateBackfillId())) return false; + if (!getPlanHash() + .equals(other.getPlanHash())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + CRON_AGGREGATE_BACKFILL_ID_FIELD_NUMBER; + hash = (53 * hash) + getCronAggregateBackfillId().hashCode(); + hash = (37 * hash) + PLAN_HASH_FIELD_NUMBER; + hash = (53 * hash) + getPlanHash().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.GetCronAggregateBackfillRequest} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.GetCronAggregateBackfillRequest) + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.class, ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + cronAggregateBackfillId_ = ""; + planHash_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest build() { + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest result = new ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.cronAggregateBackfillId_ = cronAggregateBackfillId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.planHash_ = planHash_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest.getDefaultInstance()) return this; + if (!other.getCronAggregateBackfillId().isEmpty()) { + cronAggregateBackfillId_ = other.cronAggregateBackfillId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getPlanHash().isEmpty()) { + planHash_ = other.planHash_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + cronAggregateBackfillId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + planHash_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object cronAggregateBackfillId_ = ""; + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @return The cronAggregateBackfillId. + */ + @java.lang.Deprecated public java.lang.String getCronAggregateBackfillId() { + java.lang.Object ref = cronAggregateBackfillId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + cronAggregateBackfillId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @return The bytes for cronAggregateBackfillId. + */ + @java.lang.Deprecated public com.google.protobuf.ByteString + getCronAggregateBackfillIdBytes() { + java.lang.Object ref = cronAggregateBackfillId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + cronAggregateBackfillId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @param value The cronAggregateBackfillId to set. + * @return This builder for chaining. + */ + @java.lang.Deprecated public Builder setCronAggregateBackfillId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + cronAggregateBackfillId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @return This builder for chaining. + */ + @java.lang.Deprecated public Builder clearCronAggregateBackfillId() { + cronAggregateBackfillId_ = getDefaultInstance().getCronAggregateBackfillId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @param value The bytes for cronAggregateBackfillId to set. + * @return This builder for chaining. + */ + @java.lang.Deprecated public Builder setCronAggregateBackfillIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + cronAggregateBackfillId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object planHash_ = ""; + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @return The planHash. + */ + public java.lang.String getPlanHash() { + java.lang.Object ref = planHash_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + planHash_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + public com.google.protobuf.ByteString + getPlanHashBytes() { + java.lang.Object ref = planHash_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + planHash_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @param value The planHash to set. + * @return This builder for chaining. + */ + public Builder setPlanHash( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + planHash_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @return This builder for chaining. + */ + public Builder clearPlanHash() { + planHash_ = getDefaultInstance().getPlanHash(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @param value The bytes for planHash to set. + * @return This builder for chaining. + */ + public Builder setPlanHashBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + planHash_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.GetCronAggregateBackfillRequest) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.GetCronAggregateBackfillRequest) + private static final ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetCronAggregateBackfillRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillRequestOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillRequestOrBuilder.java new file mode 100644 index 00000000..aa87a493 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillRequestOrBuilder.java @@ -0,0 +1,38 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface GetCronAggregateBackfillRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.GetCronAggregateBackfillRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @return The cronAggregateBackfillId. + */ + @java.lang.Deprecated java.lang.String getCronAggregateBackfillId(); + /** + * string cron_aggregate_backfill_id = 1 [json_name = "cronAggregateBackfillId", deprecated = true]; + * @deprecated chalk.aggregate.v1.GetCronAggregateBackfillRequest.cron_aggregate_backfill_id is deprecated. + * See chalk/aggregate/v1/service.proto;l=53 + * @return The bytes for cronAggregateBackfillId. + */ + @java.lang.Deprecated com.google.protobuf.ByteString + getCronAggregateBackfillIdBytes(); + + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @return The planHash. + */ + java.lang.String getPlanHash(); + /** + * string plan_hash = 2 [json_name = "planHash"]; + * @return The bytes for planHash. + */ + com.google.protobuf.ByteString + getPlanHashBytes(); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillResponse.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillResponse.java new file mode 100644 index 00000000..85a8f624 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillResponse.java @@ -0,0 +1,599 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.GetCronAggregateBackfillResponse} + */ +public final class GetCronAggregateBackfillResponse extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.GetCronAggregateBackfillResponse) + GetCronAggregateBackfillResponseOrBuilder { +private static final long serialVersionUID = 0L; + // Use GetCronAggregateBackfillResponse.newBuilder() to construct. + private GetCronAggregateBackfillResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private GetCronAggregateBackfillResponse() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new GetCronAggregateBackfillResponse(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.class, ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.Builder.class); + } + + private int bitField0_; + public static final int CRON_AGGREGATE_BACKFILL_FIELD_NUMBER = 1; + private ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill cronAggregateBackfill_; + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return Whether the cronAggregateBackfill field is set. + */ + @java.lang.Override + public boolean hasCronAggregateBackfill() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return The cronAggregateBackfill. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getCronAggregateBackfill() { + return cronAggregateBackfill_ == null ? ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance() : cronAggregateBackfill_; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder getCronAggregateBackfillOrBuilder() { + return cronAggregateBackfill_ == null ? ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance() : cronAggregateBackfill_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(1, getCronAggregateBackfill()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getCronAggregateBackfill()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse other = (ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse) obj; + + if (hasCronAggregateBackfill() != other.hasCronAggregateBackfill()) return false; + if (hasCronAggregateBackfill()) { + if (!getCronAggregateBackfill() + .equals(other.getCronAggregateBackfill())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasCronAggregateBackfill()) { + hash = (37 * hash) + CRON_AGGREGATE_BACKFILL_FIELD_NUMBER; + hash = (53 * hash) + getCronAggregateBackfill().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.GetCronAggregateBackfillResponse} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.GetCronAggregateBackfillResponse) + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.class, ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getCronAggregateBackfillFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + cronAggregateBackfill_ = null; + if (cronAggregateBackfillBuilder_ != null) { + cronAggregateBackfillBuilder_.dispose(); + cronAggregateBackfillBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.ServiceProto.internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse build() { + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse result = new ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.cronAggregateBackfill_ = cronAggregateBackfillBuilder_ == null + ? cronAggregateBackfill_ + : cronAggregateBackfillBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse.getDefaultInstance()) return this; + if (other.hasCronAggregateBackfill()) { + mergeCronAggregateBackfill(other.getCronAggregateBackfill()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + input.readMessage( + getCronAggregateBackfillFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill cronAggregateBackfill_; + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder> cronAggregateBackfillBuilder_; + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return Whether the cronAggregateBackfill field is set. + */ + public boolean hasCronAggregateBackfill() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return The cronAggregateBackfill. + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getCronAggregateBackfill() { + if (cronAggregateBackfillBuilder_ == null) { + return cronAggregateBackfill_ == null ? ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance() : cronAggregateBackfill_; + } else { + return cronAggregateBackfillBuilder_.getMessage(); + } + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public Builder setCronAggregateBackfill(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill value) { + if (cronAggregateBackfillBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + cronAggregateBackfill_ = value; + } else { + cronAggregateBackfillBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public Builder setCronAggregateBackfill( + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder builderForValue) { + if (cronAggregateBackfillBuilder_ == null) { + cronAggregateBackfill_ = builderForValue.build(); + } else { + cronAggregateBackfillBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public Builder mergeCronAggregateBackfill(ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill value) { + if (cronAggregateBackfillBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) && + cronAggregateBackfill_ != null && + cronAggregateBackfill_ != ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance()) { + getCronAggregateBackfillBuilder().mergeFrom(value); + } else { + cronAggregateBackfill_ = value; + } + } else { + cronAggregateBackfillBuilder_.mergeFrom(value); + } + if (cronAggregateBackfill_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } + return this; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public Builder clearCronAggregateBackfill() { + bitField0_ = (bitField0_ & ~0x00000001); + cronAggregateBackfill_ = null; + if (cronAggregateBackfillBuilder_ != null) { + cronAggregateBackfillBuilder_.dispose(); + cronAggregateBackfillBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder getCronAggregateBackfillBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getCronAggregateBackfillFieldBuilder().getBuilder(); + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder getCronAggregateBackfillOrBuilder() { + if (cronAggregateBackfillBuilder_ != null) { + return cronAggregateBackfillBuilder_.getMessageOrBuilder(); + } else { + return cronAggregateBackfill_ == null ? + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.getDefaultInstance() : cronAggregateBackfill_; + } + } + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder> + getCronAggregateBackfillFieldBuilder() { + if (cronAggregateBackfillBuilder_ == null) { + cronAggregateBackfillBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill.Builder, ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder>( + getCronAggregateBackfill(), + getParentForChildren(), + isClean()); + cronAggregateBackfill_ = null; + } + return cronAggregateBackfillBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.GetCronAggregateBackfillResponse) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.GetCronAggregateBackfillResponse) + private static final ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetCronAggregateBackfillResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetCronAggregateBackfillResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillResponseOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillResponseOrBuilder.java new file mode 100644 index 00000000..410922d3 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetCronAggregateBackfillResponseOrBuilder.java @@ -0,0 +1,25 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/service.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface GetCronAggregateBackfillResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.GetCronAggregateBackfillResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return Whether the cronAggregateBackfill field is set. + */ + boolean hasCronAggregateBackfill(); + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + * @return The cronAggregateBackfill. + */ + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfill getCronAggregateBackfill(); + /** + * .chalk.aggregate.v1.CronAggregateBackfill cron_aggregate_backfill = 1 [json_name = "cronAggregateBackfill"]; + */ + ai.chalk.protos.chalk.aggregate.v1.CronAggregateBackfillOrBuilder getCronAggregateBackfillOrBuilder(); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexRequest.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexRequest.java new file mode 100644 index 00000000..3e102e8d --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexRequest.java @@ -0,0 +1,407 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/aggregation_index.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + *
+ * Always answers for the environment's active deployment.
+ * 
+ * + * Protobuf type {@code chalk.aggregate.v1.GetDeploymentAggregationIndexRequest} + */ +public final class GetDeploymentAggregationIndexRequest extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.GetDeploymentAggregationIndexRequest) + GetDeploymentAggregationIndexRequestOrBuilder { +private static final long serialVersionUID = 0L; + // Use GetDeploymentAggregationIndexRequest.newBuilder() to construct. + private GetDeploymentAggregationIndexRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private GetDeploymentAggregationIndexRequest() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new GetDeploymentAggregationIndexRequest(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.class, ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.Builder.class); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest other = (ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest) obj; + + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+   * Always answers for the environment's active deployment.
+   * 
+ * + * Protobuf type {@code chalk.aggregate.v1.GetDeploymentAggregationIndexRequest} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.GetDeploymentAggregationIndexRequest) + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.class, ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexRequest_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest build() { + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest result = new ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest.getDefaultInstance()) return this; + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.GetDeploymentAggregationIndexRequest) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.GetDeploymentAggregationIndexRequest) + private static final ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetDeploymentAggregationIndexRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexRequestOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexRequestOrBuilder.java new file mode 100644 index 00000000..9f57eb31 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexRequestOrBuilder.java @@ -0,0 +1,10 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/aggregation_index.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface GetDeploymentAggregationIndexRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.GetDeploymentAggregationIndexRequest) + com.google.protobuf.MessageOrBuilder { +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexResponse.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexResponse.java new file mode 100644 index 00000000..5c488ee4 --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexResponse.java @@ -0,0 +1,647 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/aggregation_index.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +/** + * Protobuf type {@code chalk.aggregate.v1.GetDeploymentAggregationIndexResponse} + */ +public final class GetDeploymentAggregationIndexResponse extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chalk.aggregate.v1.GetDeploymentAggregationIndexResponse) + GetDeploymentAggregationIndexResponseOrBuilder { +private static final long serialVersionUID = 0L; + // Use GetDeploymentAggregationIndexResponse.newBuilder() to construct. + private GetDeploymentAggregationIndexResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private GetDeploymentAggregationIndexResponse() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new GetDeploymentAggregationIndexResponse(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.class, ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.Builder.class); + } + + private int bitField0_; + public static final int INDEX_FIELD_NUMBER = 1; + private ai.chalk.protos.chalk.aggregate.v1.AggregationIndex index_; + /** + *
+   * Unset when the environment has no active deployment.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + * @return Whether the index field is set. + */ + @java.lang.Override + public boolean hasIndex() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + *
+   * Unset when the environment has no active deployment.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + * @return The index. + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndex getIndex() { + return index_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.getDefaultInstance() : index_; + } + /** + *
+   * Unset when the environment has no active deployment.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndexOrBuilder getIndexOrBuilder() { + return index_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.getDefaultInstance() : index_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(1, getIndex()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getIndex()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse)) { + return super.equals(obj); + } + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse other = (ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse) obj; + + if (hasIndex() != other.hasIndex()) return false; + if (hasIndex()) { + if (!getIndex() + .equals(other.getIndex())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasIndex()) { + hash = (37 * hash) + INDEX_FIELD_NUMBER; + hash = (53 * hash) + getIndex().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code chalk.aggregate.v1.GetDeploymentAggregationIndexResponse} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:chalk.aggregate.v1.GetDeploymentAggregationIndexResponse) + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.class, ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.Builder.class); + } + + // Construct using ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getIndexFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + index_ = null; + if (indexBuilder_ != null) { + indexBuilder_.dispose(); + indexBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return ai.chalk.protos.chalk.aggregate.v1.AggregationIndexProto.internal_static_chalk_aggregate_v1_GetDeploymentAggregationIndexResponse_descriptor; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse getDefaultInstanceForType() { + return ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.getDefaultInstance(); + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse build() { + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse buildPartial() { + ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse result = new ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.index_ = indexBuilder_ == null + ? index_ + : indexBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse) { + return mergeFrom((ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse other) { + if (other == ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse.getDefaultInstance()) return this; + if (other.hasIndex()) { + mergeIndex(other.getIndex()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + input.readMessage( + getIndexFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private ai.chalk.protos.chalk.aggregate.v1.AggregationIndex index_; + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex, ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregationIndexOrBuilder> indexBuilder_; + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + * @return Whether the index field is set. + */ + public boolean hasIndex() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + * @return The index. + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndex getIndex() { + if (indexBuilder_ == null) { + return index_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.getDefaultInstance() : index_; + } else { + return indexBuilder_.getMessage(); + } + } + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + public Builder setIndex(ai.chalk.protos.chalk.aggregate.v1.AggregationIndex value) { + if (indexBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + index_ = value; + } else { + indexBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + public Builder setIndex( + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.Builder builderForValue) { + if (indexBuilder_ == null) { + index_ = builderForValue.build(); + } else { + indexBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + public Builder mergeIndex(ai.chalk.protos.chalk.aggregate.v1.AggregationIndex value) { + if (indexBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) && + index_ != null && + index_ != ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.getDefaultInstance()) { + getIndexBuilder().mergeFrom(value); + } else { + index_ = value; + } + } else { + indexBuilder_.mergeFrom(value); + } + if (index_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } + return this; + } + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + public Builder clearIndex() { + bitField0_ = (bitField0_ & ~0x00000001); + index_ = null; + if (indexBuilder_ != null) { + indexBuilder_.dispose(); + indexBuilder_ = null; + } + onChanged(); + return this; + } + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.Builder getIndexBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getIndexFieldBuilder().getBuilder(); + } + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + public ai.chalk.protos.chalk.aggregate.v1.AggregationIndexOrBuilder getIndexOrBuilder() { + if (indexBuilder_ != null) { + return indexBuilder_.getMessageOrBuilder(); + } else { + return index_ == null ? + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.getDefaultInstance() : index_; + } + } + /** + *
+     * Unset when the environment has no active deployment.
+     * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex, ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregationIndexOrBuilder> + getIndexFieldBuilder() { + if (indexBuilder_ == null) { + indexBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex, ai.chalk.protos.chalk.aggregate.v1.AggregationIndex.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregationIndexOrBuilder>( + getIndex(), + getParentForChildren(), + isClean()); + index_ = null; + } + return indexBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:chalk.aggregate.v1.GetDeploymentAggregationIndexResponse) + } + + // @@protoc_insertion_point(class_scope:chalk.aggregate.v1.GetDeploymentAggregationIndexResponse) + private static final ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse(); + } + + public static ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetDeploymentAggregationIndexResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public ai.chalk.protos.chalk.aggregate.v1.GetDeploymentAggregationIndexResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexResponseOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexResponseOrBuilder.java new file mode 100644 index 00000000..798a2a8e --- /dev/null +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/GetDeploymentAggregationIndexResponseOrBuilder.java @@ -0,0 +1,37 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: chalk/aggregate/v1/aggregation_index.proto + +// Protobuf Java Version: 3.25.1 +package ai.chalk.protos.chalk.aggregate.v1; + +public interface GetDeploymentAggregationIndexResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:chalk.aggregate.v1.GetDeploymentAggregationIndexResponse) + com.google.protobuf.MessageOrBuilder { + + /** + *
+   * Unset when the environment has no active deployment.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + * @return Whether the index field is set. + */ + boolean hasIndex(); + /** + *
+   * Unset when the environment has no active deployment.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + * @return The index. + */ + ai.chalk.protos.chalk.aggregate.v1.AggregationIndex getIndex(); + /** + *
+   * Unset when the environment has no active deployment.
+   * 
+ * + * optional .chalk.aggregate.v1.AggregationIndex index = 1 [json_name = "index"]; + */ + ai.chalk.protos.chalk.aggregate.v1.AggregationIndexOrBuilder getIndexOrBuilder(); +} diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/PlanAggregateBackfillResponse.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/PlanAggregateBackfillResponse.java index 280b783b..b1c153b5 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/PlanAggregateBackfillResponse.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/PlanAggregateBackfillResponse.java @@ -47,26 +47,30 @@ protected java.lang.Object newInstance( public static final int ESTIMATE_FIELD_NUMBER = 2; private ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate estimate_; /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.PlanAggregateBackfillResponse.estimate is deprecated. + * See chalk/aggregate/v1/service.proto;l=17 * @return Whether the estimate field is set. */ @java.lang.Override - public boolean hasEstimate() { + @java.lang.Deprecated public boolean hasEstimate() { return ((bitField0_ & 0x00000001) != 0); } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.PlanAggregateBackfillResponse.estimate is deprecated. + * See chalk/aggregate/v1/service.proto;l=17 * @return The estimate. */ @java.lang.Override - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate() { return estimate_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.getDefaultInstance() : estimate_; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ @java.lang.Override - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder() { return estimate_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.getDefaultInstance() : estimate_; } @@ -674,17 +678,21 @@ public Builder mergeFrom( private com.google.protobuf.SingleFieldBuilderV3< ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder> estimateBuilder_; /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.PlanAggregateBackfillResponse.estimate is deprecated. + * See chalk/aggregate/v1/service.proto;l=17 * @return Whether the estimate field is set. */ - public boolean hasEstimate() { + @java.lang.Deprecated public boolean hasEstimate() { return ((bitField0_ & 0x00000001) != 0); } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.PlanAggregateBackfillResponse.estimate is deprecated. + * See chalk/aggregate/v1/service.proto;l=17 * @return The estimate. */ - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate() { if (estimateBuilder_ == null) { return estimate_ == null ? ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.getDefaultInstance() : estimate_; } else { @@ -692,9 +700,9 @@ public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstim } } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public Builder setEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate value) { + @java.lang.Deprecated public Builder setEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate value) { if (estimateBuilder_ == null) { if (value == null) { throw new NullPointerException(); @@ -708,9 +716,9 @@ public Builder setEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillC return this; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public Builder setEstimate( + @java.lang.Deprecated public Builder setEstimate( ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder builderForValue) { if (estimateBuilder_ == null) { estimate_ = builderForValue.build(); @@ -722,9 +730,9 @@ public Builder setEstimate( return this; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public Builder mergeEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate value) { + @java.lang.Deprecated public Builder mergeEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate value) { if (estimateBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0) && estimate_ != null && @@ -743,9 +751,9 @@ public Builder mergeEstimate(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfil return this; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public Builder clearEstimate() { + @java.lang.Deprecated public Builder clearEstimate() { bitField0_ = (bitField0_ & ~0x00000001); estimate_ = null; if (estimateBuilder_ != null) { @@ -756,17 +764,17 @@ public Builder clearEstimate() { return this; } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder getEstimateBuilder() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder getEstimateBuilder() { bitField0_ |= 0x00000001; onChanged(); return getEstimateFieldBuilder().getBuilder(); } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder() { + @java.lang.Deprecated public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder() { if (estimateBuilder_ != null) { return estimateBuilder_.getMessageOrBuilder(); } else { @@ -775,7 +783,7 @@ public ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder } } /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ private com.google.protobuf.SingleFieldBuilderV3< ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate.Builder, ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder> diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/PlanAggregateBackfillResponseOrBuilder.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/PlanAggregateBackfillResponseOrBuilder.java index 16a10c47..1a0ef755 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/PlanAggregateBackfillResponseOrBuilder.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/PlanAggregateBackfillResponseOrBuilder.java @@ -9,19 +9,23 @@ public interface PlanAggregateBackfillResponseOrBuilder extends com.google.protobuf.MessageOrBuilder { /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.PlanAggregateBackfillResponse.estimate is deprecated. + * See chalk/aggregate/v1/service.proto;l=17 * @return Whether the estimate field is set. */ - boolean hasEstimate(); + @java.lang.Deprecated boolean hasEstimate(); /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; + * @deprecated chalk.aggregate.v1.PlanAggregateBackfillResponse.estimate is deprecated. + * See chalk/aggregate/v1/service.proto;l=17 * @return The estimate. */ - ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate(); + @java.lang.Deprecated ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate getEstimate(); /** - * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate"]; + * .chalk.aggregate.v1.AggregateBackfillCostEstimate estimate = 2 [json_name = "estimate", deprecated = true]; */ - ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder(); + @java.lang.Deprecated ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimateOrBuilder getEstimateOrBuilder(); /** * repeated string errors = 4 [json_name = "errors"]; diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/ServiceProto.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/ServiceProto.java index f362b379..229e1ef2 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/ServiceProto.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/ServiceProto.java @@ -55,6 +55,56 @@ public static void registerAllExtensions( static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_chalk_aggregate_v1_GetAggregateBackfillJobResponse_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_PlannerOptionsEntry_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_PlannerOptionsEntry_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { @@ -68,49 +118,150 @@ public static void registerAllExtensions( "k.aggregate.v1\032!chalk/aggregate/v1/backf" + "ill.proto\032#chalk/aggregate/v1/timeseries" + ".proto\032\031chalk/auth/v1/audit.proto\032\037chalk" + - "/auth/v1/permissions.proto\"g\n\034PlanAggreg" + - "ateBackfillRequest\022G\n\006params\030\001 \001(\0132/.cha" + - "lk.aggregate.v1.AggregateBackfillUserPar" + - "amsR\006params\"\217\002\n\035PlanAggregateBackfillRes" + - "ponse\022M\n\010estimate\030\002 \001(\01321.chalk.aggregat" + - "e.v1.AggregateBackfillCostEstimateR\010esti" + - "mate\022\026\n\006errors\030\004 \003(\tR\006errors\022S\n\tbackfill" + - "s\030\006 \003(\01325.chalk.aggregate.v1.AggregateBa" + - "ckfillWithCostEstimateR\tbackfills\0222\n\025agg" + - "regate_backfill_id\030\007 \001(\tR\023aggregateBackf" + - "illId\"9\n\024GetAggregatesRequest\022!\n\014for_fea" + - "tures\030\001 \003(\tR\013forFeatures\"p\n\025GetAggregate" + - "sResponse\022?\n\006series\030\001 \003(\0132\'.chalk.aggreg" + - "ate.v1.AggregateTimeSeriesR\006series\022\026\n\006er" + - "rors\030\002 \003(\tR\006errors\"O\n\037GetAggregateBackfi" + - "llJobsRequest\022\024\n\005limit\030\001 \001(\005R\005limit\022\026\n\006c" + - "ursor\030\002 \001(\tR\006cursor\"x\n GetAggregateBackf" + - "illJobsResponse\022<\n\004jobs\030\001 \003(\0132(.chalk.ag" + - "gregate.v1.AggregateBackfillJobR\004jobs\022\026\n" + - "\006cursor\030\002 \001(\tR\006cursor\"T\n\036GetAggregateBac" + - "kfillJobRequest\0222\n\025aggregate_backfill_id" + - "\030\001 \001(\tR\023aggregateBackfillId\"]\n\037GetAggreg" + - "ateBackfillJobResponse\022:\n\003job\030\001 \001(\0132(.ch" + - "alk.aggregate.v1.AggregateBackfillJobR\003j" + - "ob2\260\004\n\020AggregateService\022\212\001\n\025PlanAggregat" + - "eBackfill\0220.chalk.aggregate.v1.PlanAggre" + - "gateBackfillRequest\0321.chalk.aggregate.v1" + - ".PlanAggregateBackfillResponse\"\014\220\002\001\200}\014\212\323" + - "\016\002\010\002\022r\n\rGetAggregates\022(.chalk.aggregate." + - "v1.GetAggregatesRequest\032).chalk.aggregat" + - "e.v1.GetAggregatesResponse\"\014\220\002\001\200}\013\212\323\016\002\010\002" + - "\022\215\001\n\030GetAggregateBackfillJobs\0223.chalk.ag" + - "gregate.v1.GetAggregateBackfillJobsReque" + - "st\0324.chalk.aggregate.v1.GetAggregateBack" + - "fillJobsResponse\"\006\220\002\001\200}\013\022\212\001\n\027GetAggregat" + - "eBackfillJob\0222.chalk.aggregate.v1.GetAgg" + - "regateBackfillJobRequest\0323.chalk.aggrega" + - "te.v1.GetAggregateBackfillJobResponse\"\006\220" + - "\002\001\200}\013B\266\001\n\"ai.chalk.protos.chalk.aggregat" + - "e.v1B\014ServiceProtoP\001Z\030aggregate/v1;aggre" + - "gatev1\242\002\003CAX\252\002\022Chalk.Aggregate.V1\312\002\022Chal" + - "k\\Aggregate\\V1\342\002\036Chalk\\Aggregate\\V1\\GPBM" + - "etadata\352\002\024Chalk::Aggregate::V1b\006proto3" + "/auth/v1/permissions.proto\032!chalk/common" + + "/v1/chalk_error.proto\032\037google/protobuf/t" + + "imestamp.proto\"g\n\034PlanAggregateBackfillR" + + "equest\022G\n\006params\030\001 \001(\0132/.chalk.aggregate" + + ".v1.AggregateBackfillUserParamsR\006params\"" + + "\223\002\n\035PlanAggregateBackfillResponse\022Q\n\010est" + + "imate\030\002 \001(\01321.chalk.aggregate.v1.Aggrega" + + "teBackfillCostEstimateB\002\030\001R\010estimate\022\026\n\006" + + "errors\030\004 \003(\tR\006errors\022S\n\tbackfills\030\006 \003(\0132" + + "5.chalk.aggregate.v1.AggregateBackfillWi" + + "thCostEstimateR\tbackfills\0222\n\025aggregate_b" + + "ackfill_id\030\007 \001(\tR\023aggregateBackfillId\"9\n" + + "\024GetAggregatesRequest\022!\n\014for_features\030\001 " + + "\003(\tR\013forFeatures\"p\n\025GetAggregatesRespons" + + "e\022?\n\006series\030\001 \003(\0132\'.chalk.aggregate.v1.A" + + "ggregateTimeSeriesR\006series\022\026\n\006errors\030\002 \003" + + "(\tR\006errors\"\357\001\n\037GetAggregateBackfillJobsR" + + "equest\022\024\n\005limit\030\001 \001(\005R\005limit\022\026\n\006cursor\030\002" + + " \001(\tR\006cursor\022 \n\tplan_hash\030\003 \001(\tH\000R\010planH" + + "ash\210\001\001\022L\n\013init_status\030\004 \001(\0162+.chalk.aggr" + + "egate.v1.AggregateBackfillStatusR\ninitSt" + + "atus\022\027\n\004name\030\005 \001(\tH\001R\004name\210\001\001B\014\n\n_plan_h" + + "ashB\007\n\005_name\"x\n GetAggregateBackfillJobs" + + "Response\022<\n\004jobs\030\001 \003(\0132(.chalk.aggregate" + + ".v1.AggregateBackfillJobR\004jobs\022\026\n\006cursor" + + "\030\002 \001(\tR\006cursor\"T\n\036GetAggregateBackfillJo" + + "bRequest\0222\n\025aggregate_backfill_id\030\001 \001(\tR" + + "\023aggregateBackfillId\"]\n\037GetAggregateBack" + + "fillJobResponse\022:\n\003job\030\001 \001(\0132(.chalk.agg" + + "regate.v1.AggregateBackfillJobR\003job\"\177\n\037G" + + "etCronAggregateBackfillRequest\022?\n\032cron_a" + + "ggregate_backfill_id\030\001 \001(\tB\002\030\001R\027cronAggr" + + "egateBackfillId\022\033\n\tplan_hash\030\002 \001(\tR\010plan" + + "Hash\"\205\001\n GetCronAggregateBackfillRespons" + + "e\022a\n\027cron_aggregate_backfill\030\001 \001(\0132).cha" + + "lk.aggregate.v1.CronAggregateBackfillR\025c" + + "ronAggregateBackfill\"(\n&GetActiveCronAgg" + + "regateBackfillsRequest\"\320\001\n\"CronAggregate" + + "BackfillWithLatestRun\022a\n\027cron_aggregate_" + + "backfill\030\001 \001(\0132).chalk.aggregate.v1.Cron" + + "AggregateBackfillR\025cronAggregateBackfill" + + "\022G\n\nlatest_job\030\002 \001(\0132(.chalk.aggregate.v" + + "1.AggregateBackfillJobR\tlatestJob\"\233\001\n\'Ge" + + "tActiveCronAggregateBackfillsResponse\022p\n" + + "\030cron_aggregate_backfills\030\001 \003(\01326.chalk." + + "aggregate.v1.CronAggregateBackfillWithLa" + + "testRunR\026cronAggregateBackfills\"\215\007\n!Crea" + + "teAggregateBackfillJobRequest\022\032\n\010feature" + + "s\030\001 \003(\tR\010features\022@\n\013lower_bound\030\002 \001(\0132\032" + + ".google.protobuf.TimestampH\000R\nlowerBound" + + "\210\001\001\022@\n\013upper_bound\030\003 \001(\0132\032.google.protob" + + "uf.TimestampH\001R\nupperBound\210\001\001\022\037\n\010resolve" + + "r\030\004 \001(\tH\002R\010resolver\210\001\001\022*\n\016bucket_feature" + + "\030\005 \001(\tH\003R\rbucketFeature\210\001\001\022)\n\020enable_pro" + + "filing\030\006 \001(\010R\017enableProfiling\0227\n\025aggrega" + + "te_backfill_id\030\007 \001(\tH\004R\023aggregateBackfil" + + "lId\210\001\001\022*\n\016resource_group\030\010 \001(\tH\005R\rresour" + + "ceGroup\210\001\001\022\035\n\nquery_tags\030\t \003(\tR\tqueryTag" + + "s\022(\n\rstore_offline\030\n \001(\010H\006R\014storeOffline" + + "\210\001\001\022,\n\017use_metaplanner\030\013 \001(\010H\007R\016useMetap" + + "lanner\210\001\001\022/\n\021allow_empty_tiles\030\014 \001(\010H\010R\017" + + "allowEmptyTiles\210\001\001\022&\n\014store_online\030\r \001(\010" + + "H\tR\013storeOnline\210\001\001\022 \n\tinput_sql\030\016 \001(\tH\nR" + + "\010inputSql\210\001\001\022\"\n\nnum_shards\030\017 \001(\005H\013R\tnumS" + + "hards\210\001\001B\016\n\014_lower_boundB\016\n\014_upper_bound" + + "B\013\n\t_resolverB\021\n\017_bucket_featureB\030\n\026_agg" + + "regate_backfill_idB\021\n\017_resource_groupB\020\n" + + "\016_store_offlineB\022\n\020_use_metaplannerB\024\n\022_" + + "allow_empty_tilesB\017\n\r_store_onlineB\014\n\n_i" + + "nput_sqlB\r\n\013_num_shards\"\214\001\n\"CreateAggreg" + + "ateBackfillJobResponse\022\025\n\006job_id\030\001 \001(\tR\005" + + "jobId\022\032\n\010features\030\002 \003(\tR\010features\0223\n\006err" + + "ors\030\003 \003(\0132\033.chalk.common.v1.ChalkErrorR\006" + + "errors\"\270\007\n CreateAggregateBackfillV2Requ" + + "est\022\032\n\010features\030\001 \003(\tR\010features\022\037\n\010resol" + + "ver\030\002 \001(\tH\000R\010resolver\210\001\001\022 \n\tinput_sql\030\003 " + + "\001(\tH\001R\010inputSql\210\001\001\022@\n\013lower_bound\030\004 \001(\0132" + + "\032.google.protobuf.TimestampH\002R\nlowerBoun" + + "d\210\001\001\022@\n\013upper_bound\030\005 \001(\0132\032.google.proto" + + "buf.TimestampH\003R\nupperBound\210\001\001\022\022\n\004tags\030\006" + + " \003(\tR\004tags\022\024\n\005exact\030\007 \001(\010R\005exact\022&\n\014stor" + + "e_online\030\010 \001(\010H\004R\013storeOnline\210\001\001\022(\n\rstor" + + "e_offline\030\t \001(\010H\005R\014storeOffline\210\001\001\022/\n\021al" + + "low_empty_tiles\030\n \001(\010H\006R\017allowEmptyTiles" + + "\210\001\001\022)\n\020enable_profiling\030\013 \001(\010R\017enablePro" + + "filing\022*\n\016resource_group\030\014 \001(\tH\007R\rresour" + + "ceGroup\210\001\001\022q\n\017planner_options\030\r \003(\0132H.ch" + + "alk.aggregate.v1.CreateAggregateBackfill" + + "V2Request.PlannerOptionsEntryR\016plannerOp" + + "tions\022=\n\004mode\030\016 \001(\0162).chalk.aggregate.v1" + + ".AggregateBackfillModeR\004mode\022\"\n\nnum_shar" + + "ds\030\017 \001(\005H\010R\tnumShards\210\001\001\032A\n\023PlannerOptio" + + "nsEntry\022\020\n\003key\030\001 \001(\tR\003key\022\024\n\005value\030\002 \001(\t" + + "R\005value:\0028\001B\013\n\t_resolverB\014\n\n_input_sqlB\016" + + "\n\014_lower_boundB\016\n\014_upper_boundB\017\n\r_store" + + "_onlineB\020\n\016_store_offlineB\024\n\022_allow_empt" + + "y_tilesB\021\n\017_resource_groupB\r\n\013_num_shard" + + "s\"\310\001\n!CreateAggregateBackfillV2Response\022" + + "?\n\003job\030\001 \001(\0132(.chalk.aggregate.v1.Aggreg" + + "ateBackfillJobH\000R\003job\210\001\001\022Z\n\rsub_backfill" + + "s\030\002 \003(\01325.chalk.aggregate.v1.AggregateBa" + + "ckfillWithCostEstimateR\014subBackfillsB\006\n\004" + + "_job*\206\001\n\025AggregateBackfillMode\022\'\n#AGGREG" + + "ATE_BACKFILL_MODE_UNSPECIFIED\020\000\022 \n\034AGGRE" + + "GATE_BACKFILL_MODE_PLAN\020\001\022\"\n\036AGGREGATE_B" + + "ACKFILL_MODE_CREATE\020\0022\243\n\n\020AggregateServi" + + "ce\022\303\001\n\025PlanAggregateBackfill\0220.chalk.agg" + + "regate.v1.PlanAggregateBackfillRequest\0321" + + ".chalk.aggregate.v1.PlanAggregateBackfil" + + "lResponse\"E\220\002\001\200}\004\212\323\016;\010\002\0227Estimated the r" + + "esources needed to backfill an aggregate" + + "\022\256\001\n\rGetAggregates\022(.chalk.aggregate.v1." + + "GetAggregatesRequest\032).chalk.aggregate.v" + + "1.GetAggregatesResponse\"H\220\002\001\200}\013\212\323\016>\010\002\022:R" + + "etrieved aggregate time series for the r" + + "equested features\022\215\001\n\030GetAggregateBackfi" + + "llJobs\0223.chalk.aggregate.v1.GetAggregate" + + "BackfillJobsRequest\0324.chalk.aggregate.v1" + + ".GetAggregateBackfillJobsResponse\"\006\220\002\001\200}" + + "\013\022\212\001\n\027GetAggregateBackfillJob\0222.chalk.ag" + + "gregate.v1.GetAggregateBackfillJobReques" + + "t\0323.chalk.aggregate.v1.GetAggregateBackf" + + "illJobResponse\"\006\220\002\001\200}\013\022\215\001\n\030GetCronAggreg" + + "ateBackfill\0223.chalk.aggregate.v1.GetCron" + + "AggregateBackfillRequest\0324.chalk.aggrega" + + "te.v1.GetCronAggregateBackfillResponse\"\006" + + "\220\002\001\200}\013\022\242\001\n\037GetActiveCronAggregateBackfil" + + "ls\022:.chalk.aggregate.v1.GetActiveCronAgg" + + "regateBackfillsRequest\032;.chalk.aggregate" + + ".v1.GetActiveCronAggregateBackfillsRespo" + + "nse\"\006\220\002\001\200}\013\022\220\001\n\032CreateAggregateBackfillJ" + + "ob\0225.chalk.aggregate.v1.CreateAggregateB" + + "ackfillJobRequest\0326.chalk.aggregate.v1.C" + + "reateAggregateBackfillJobResponse\"\003\200}\004\022\262" + + "\001\n\031CreateAggregateBackfillV2\0224.chalk.agg" + + "regate.v1.CreateAggregateBackfillV2Reque" + + "st\0325.chalk.aggregate.v1.CreateAggregateB" + + "ackfillV2Response\"(\200}\004\212\323\016!\010\002\022\035Created an" + + " aggregate backfillB\266\001\n\"ai.chalk.protos." + + "chalk.aggregate.v1B\014ServiceProtoP\001Z\030aggr" + + "egate/v1;aggregatev1\242\002\003CAX\252\002\022Chalk.Aggre" + + "gate.V1\312\002\022Chalk\\Aggregate\\V1\342\002\036Chalk\\Agg" + + "regate\\V1\\GPBMetadata\352\002\024Chalk::Aggregate" + + "::V1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -119,6 +270,8 @@ public static void registerAllExtensions( ai.chalk.protos.chalk.aggregate.v1.TimeseriesProto.getDescriptor(), ai.chalk.protos.chalk.auth.v1.AuditProto.getDescriptor(), ai.chalk.protos.chalk.auth.v1.PermissionsProto.getDescriptor(), + ai.chalk.protos.chalk.common.v1.ChalkErrorProto.getDescriptor(), + com.google.protobuf.TimestampProto.getDescriptor(), }); internal_static_chalk_aggregate_v1_PlanAggregateBackfillRequest_descriptor = getDescriptor().getMessageTypes().get(0); @@ -149,7 +302,7 @@ public static void registerAllExtensions( internal_static_chalk_aggregate_v1_GetAggregateBackfillJobsRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_chalk_aggregate_v1_GetAggregateBackfillJobsRequest_descriptor, - new java.lang.String[] { "Limit", "Cursor", }); + new java.lang.String[] { "Limit", "Cursor", "PlanHash", "InitStatus", "Name", }); internal_static_chalk_aggregate_v1_GetAggregateBackfillJobsResponse_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_chalk_aggregate_v1_GetAggregateBackfillJobsResponse_fieldAccessorTable = new @@ -168,6 +321,66 @@ public static void registerAllExtensions( com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_chalk_aggregate_v1_GetAggregateBackfillJobResponse_descriptor, new java.lang.String[] { "Job", }); + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_descriptor = + getDescriptor().getMessageTypes().get(8); + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillRequest_descriptor, + new java.lang.String[] { "CronAggregateBackfillId", "PlanHash", }); + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_descriptor = + getDescriptor().getMessageTypes().get(9); + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_GetCronAggregateBackfillResponse_descriptor, + new java.lang.String[] { "CronAggregateBackfill", }); + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_descriptor = + getDescriptor().getMessageTypes().get(10); + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsRequest_descriptor, + new java.lang.String[] { }); + internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_descriptor = + getDescriptor().getMessageTypes().get(11); + internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_CronAggregateBackfillWithLatestRun_descriptor, + new java.lang.String[] { "CronAggregateBackfill", "LatestJob", }); + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_descriptor = + getDescriptor().getMessageTypes().get(12); + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_GetActiveCronAggregateBackfillsResponse_descriptor, + new java.lang.String[] { "CronAggregateBackfills", }); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_descriptor = + getDescriptor().getMessageTypes().get(13); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobRequest_descriptor, + new java.lang.String[] { "Features", "LowerBound", "UpperBound", "Resolver", "BucketFeature", "EnableProfiling", "AggregateBackfillId", "ResourceGroup", "QueryTags", "StoreOffline", "UseMetaplanner", "AllowEmptyTiles", "StoreOnline", "InputSql", "NumShards", }); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_descriptor = + getDescriptor().getMessageTypes().get(14); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_CreateAggregateBackfillJobResponse_descriptor, + new java.lang.String[] { "JobId", "Features", "Errors", }); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_descriptor = + getDescriptor().getMessageTypes().get(15); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_descriptor, + new java.lang.String[] { "Features", "Resolver", "InputSql", "LowerBound", "UpperBound", "Tags", "Exact", "StoreOnline", "StoreOffline", "AllowEmptyTiles", "EnableProfiling", "ResourceGroup", "PlannerOptions", "Mode", "NumShards", }); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_PlannerOptionsEntry_descriptor = + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_descriptor.getNestedTypes().get(0); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_PlannerOptionsEntry_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Request_PlannerOptionsEntry_descriptor, + new java.lang.String[] { "Key", "Value", }); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_descriptor = + getDescriptor().getMessageTypes().get(16); + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_chalk_aggregate_v1_CreateAggregateBackfillV2Response_descriptor, + new java.lang.String[] { "Job", "SubBackfills", }); com.google.protobuf.ExtensionRegistry registry = com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(ai.chalk.protos.chalk.auth.v1.AuditProto.audit); @@ -178,6 +391,8 @@ public static void registerAllExtensions( ai.chalk.protos.chalk.aggregate.v1.TimeseriesProto.getDescriptor(); ai.chalk.protos.chalk.auth.v1.AuditProto.getDescriptor(); ai.chalk.protos.chalk.auth.v1.PermissionsProto.getDescriptor(); + ai.chalk.protos.chalk.common.v1.ChalkErrorProto.getDescriptor(); + com.google.protobuf.TimestampProto.getDescriptor(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/TimeseriesProto.java b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/TimeseriesProto.java index 73335517..ada89fbb 100644 --- a/src/main/java/ai/chalk/protos/chalk/aggregate/v1/TimeseriesProto.java +++ b/src/main/java/ai/chalk/protos/chalk/aggregate/v1/TimeseriesProto.java @@ -36,25 +36,30 @@ public static void registerAllExtensions( java.lang.String[] descriptorData = { "\n#chalk/aggregate/v1/timeseries.proto\022\022c" + "halk.aggregate.v1\032\036google/protobuf/durat" + - "ion.proto\"\222\002\n\027AggregateTimeSeriesRule\022 \n" + + "ion.proto\"\314\002\n\027AggregateTimeSeriesRule\022 \n" + "\013aggregation\030\001 \001(\tR\013aggregation\022B\n\017bucke" + "t_duration\030\002 \001(\0132\031.google.protobuf.Durat" + "ionR\016bucketDuration\022-\n\022dependent_feature" + "s\030\003 \003(\tR\021dependentFeatures\0227\n\tretention\030" + "\004 \001(\0132\031.google.protobuf.DurationR\tretent" + "ion\022)\n\020datetime_feature\030\005 \001(\tR\017datetimeF" + - "eature\"\214\002\n\023AggregateTimeSeries\022\034\n\tnamesp" + - "ace\030\001 \001(\tR\tnamespace\022!\n\014aggregate_on\030\002 \001" + - "(\tR\013aggregateOn\022\031\n\010group_by\030\003 \003(\tR\007group" + - "By\022A\n\005rules\030\005 \003(\0132+.chalk.aggregate.v1.A" + - "ggregateTimeSeriesRuleR\005rules\022/\n\023filters" + - "_description\030\006 \001(\tR\022filtersDescription\022%" + - "\n\016bucket_feature\030\007 \001(\tR\rbucketFeatureB\271\001" + - "\n\"ai.chalk.protos.chalk.aggregate.v1B\017Ti" + - "meseriesProtoP\001Z\030aggregate/v1;aggregatev" + - "1\242\002\003CAX\252\002\022Chalk.Aggregate.V1\312\002\022Chalk\\Agg" + - "regate\\V1\342\002\036Chalk\\Aggregate\\V1\\GPBMetada" + - "ta\352\002\024Chalk::Aggregate::V1b\006proto3" + "eature\0228\n\030materialization_key_hash\030\006 \001(\t" + + "R\026materializationKeyHash\"\236\003\n\023AggregateTi" + + "meSeries\022\034\n\tnamespace\030\001 \001(\tR\tnamespace\022%" + + "\n\014aggregate_on\030\002 \001(\tB\002\030\001R\013aggregateOn\022\031\n" + + "\010group_by\030\003 \003(\tR\007groupBy\022A\n\005rules\030\005 \003(\0132" + + "+.chalk.aggregate.v1.AggregateTimeSeries" + + "RuleR\005rules\022/\n\023filters_description\030\006 \001(\t" + + "R\022filtersDescription\022%\n\016bucket_feature\030\007" + + " \001(\tR\rbucketFeature\0222\n\025aggregate_on_feat" + + "ures\030\010 \003(\tR\023aggregateOnFeatures\022\'\n\017filte" + + "r_features\030\t \003(\tR\016filterFeatures\022/\n\023proj" + + "ection_features\030\n \003(\tR\022projectionFeature" + + "sB\271\001\n\"ai.chalk.protos.chalk.aggregate.v1" + + "B\017TimeseriesProtoP\001Z\030aggregate/v1;aggreg" + + "atev1\242\002\003CAX\252\002\022Chalk.Aggregate.V1\312\002\022Chalk" + + "\\Aggregate\\V1\342\002\036Chalk\\Aggregate\\V1\\GPBMe" + + "tadata\352\002\024Chalk::Aggregate::V1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -66,13 +71,13 @@ public static void registerAllExtensions( internal_static_chalk_aggregate_v1_AggregateTimeSeriesRule_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_chalk_aggregate_v1_AggregateTimeSeriesRule_descriptor, - new java.lang.String[] { "Aggregation", "BucketDuration", "DependentFeatures", "Retention", "DatetimeFeature", }); + new java.lang.String[] { "Aggregation", "BucketDuration", "DependentFeatures", "Retention", "DatetimeFeature", "MaterializationKeyHash", }); internal_static_chalk_aggregate_v1_AggregateTimeSeries_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_chalk_aggregate_v1_AggregateTimeSeries_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_chalk_aggregate_v1_AggregateTimeSeries_descriptor, - new java.lang.String[] { "Namespace", "AggregateOn", "GroupBy", "Rules", "FiltersDescription", "BucketFeature", }); + new java.lang.String[] { "Namespace", "AggregateOn", "GroupBy", "Rules", "FiltersDescription", "BucketFeature", "AggregateOnFeatures", "FilterFeatures", "ProjectionFeatures", }); com.google.protobuf.DurationProto.getDescriptor(); } From 63e837dcabbba93c032730ef669d0535d45a808b Mon Sep 17 00:00:00 2001 From: Dovie Shalev Date: Wed, 28 Oct 2026 11:54:56 -0400 Subject: [PATCH 2/2] Add triggerAggregateBackfill to the gRPC client Port of ChalkGRPCClient.trigger_aggregate_backfill from chalkpy (the 'chalk aggregate backfill' CLI route). Calls AggregateService CreateAggregateBackfillV2 on the API server over an authenticated server channel. Servers that predate it answer UNIMPLEMENTED, and the client falls back to PlanAggregateBackfill + CreateAggregateBackfillJob + GetAggregateBackfillJob, except for planOnly/numShards requests. Both paths decode into AggregateBackfillResponse. Co-Authored-By: Claude Opus 5.5 --- README.md | 36 + .../client/AggregateBackfillConverter.java | 147 ++++ .../ai/chalk/client/AggregateBackfills.java | 310 +++++++++ .../java/ai/chalk/client/ChalkClient.java | 46 ++ src/main/java/ai/chalk/client/GRPCClient.java | 53 +- .../AggregateBackfillException.java | 41 ++ .../models/AggregateBackfillCostEstimate.java | 28 + .../ai/chalk/models/AggregateBackfillJob.java | 55 ++ .../chalk/models/AggregateBackfillParams.java | 220 ++++++ .../chalk/models/AggregateBackfillPlan.java | 49 ++ .../models/AggregateBackfillResponse.java | 43 ++ .../chalk/models/AggregateBackfillStatus.java | 25 + .../chalk/client/TestAggregateBackfill.java | 658 ++++++++++++++++++ .../client/TestAggregateBackfillClient.java | 173 +++++ 14 files changed, 1881 insertions(+), 3 deletions(-) create mode 100644 src/main/java/ai/chalk/client/AggregateBackfillConverter.java create mode 100644 src/main/java/ai/chalk/client/AggregateBackfills.java create mode 100644 src/main/java/ai/chalk/exceptions/AggregateBackfillException.java create mode 100644 src/main/java/ai/chalk/models/AggregateBackfillCostEstimate.java create mode 100644 src/main/java/ai/chalk/models/AggregateBackfillJob.java create mode 100644 src/main/java/ai/chalk/models/AggregateBackfillParams.java create mode 100644 src/main/java/ai/chalk/models/AggregateBackfillPlan.java create mode 100644 src/main/java/ai/chalk/models/AggregateBackfillResponse.java create mode 100644 src/main/java/ai/chalk/models/AggregateBackfillStatus.java create mode 100644 src/test/java/ai/chalk/client/TestAggregateBackfill.java create mode 100644 src/test/java/ai/chalk/client/TestAggregateBackfillClient.java diff --git a/README.md b/README.md index e0dce372..4339229e 100644 --- a/README.md +++ b/README.md @@ -448,3 +448,39 @@ A few things to know: and `queryNameVersion` may differ freely since each query carries its own. The deadline is the longest of the effective per-query timeouts, where a query that sets none is bounded by the client-level timeout, so per-query timeouts are not independently enforced. + +## Aggregate backfill + +`triggerAggregateBackfill` backfills materialized aggregate features, the same operation as the +`chalk aggregate backfill` CLI command. It requires the gRPC client. + +```java +import ai.chalk.client.ChalkClient; +import ai.chalk.models.AggregateBackfillParams; +import ai.chalk.models.AggregateBackfillResponse; + +ChalkClient client = ChalkClient.createGrpc(); + +// Validate the request and see the planner's split and cost estimates, without creating anything. +AggregateBackfillResponse plan = client.triggerAggregateBackfill( + AggregateBackfillParams.builder() + .withFeatures("user.spend_30d") + .withPlanOnly(true) + .build() +); +plan.getSubBackfills().forEach(sub -> System.out.println(sub.getFeatures() + " " + sub.getEstimate())); + +// Run it. The job id is the aggregate backfill id, which you can poll for status. +AggregateBackfillResponse response = client.triggerAggregateBackfill( + AggregateBackfillParams.builder() + .withFeatures("user.spend_30d") + .build() +); +String backfillId = response.getJob().getId(); +``` + +Setting `withStoreOffline(true)` requires both `withLowerBound` and `withUpperBound`, and +`withNumShards` must be greater than 1. If the server rejects the request, the call throws +`AggregateBackfillException`, which carries the server's detail. Servers that predate server-side +planning are handled by planning and creating the jobs client-side, except for `planOnly` and +`numShards` requests, which need a current server. diff --git a/src/main/java/ai/chalk/client/AggregateBackfillConverter.java b/src/main/java/ai/chalk/client/AggregateBackfillConverter.java new file mode 100644 index 00000000..0d09a59d --- /dev/null +++ b/src/main/java/ai/chalk/client/AggregateBackfillConverter.java @@ -0,0 +1,147 @@ +package ai.chalk.client; + +import ai.chalk.models.AggregateBackfillCostEstimate; +import ai.chalk.models.AggregateBackfillJob; +import ai.chalk.models.AggregateBackfillPlan; +import ai.chalk.models.AggregateBackfillResponse; +import ai.chalk.models.AggregateBackfillStatus; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfill; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate; +import ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries; +import ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesRule; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response; +import com.google.protobuf.Timestamp; + +import javax.annotation.Nullable; +import java.time.Duration; +import java.time.Instant; +import java.time.ZoneOffset; +import java.time.ZonedDateTime; +import java.util.ArrayList; +import java.util.LinkedHashSet; +import java.util.List; + +/** + * Decodes aggregate backfill protos into the public models, so callers never handle + * a protobuf message. Mirrors {@code AggregateBackfillConverter} in the Python client. + */ +final class AggregateBackfillConverter { + private AggregateBackfillConverter() {} + + static AggregateBackfillResponse responseDecode(CreateAggregateBackfillV2Response proto) { + return new AggregateBackfillResponse( + // An unset `job` means the request was a plan-only dry run, which creates nothing. + proto.hasJob() ? jobDecode(proto.getJob()) : null, + plansDecode(proto.getSubBackfillsList()) + ); + } + + static List plansDecode(List protos) { + List plans = new ArrayList<>(); + for (AggregateBackfillWithCostEstimate proto : protos) { + plans.add(planDecode(proto)); + } + return plans; + } + + static AggregateBackfillPlan planDecode(AggregateBackfillWithCostEstimate proto) { + AggregateBackfill backfill = proto.getBackfill(); + var estimate = proto.getEstimate(); + return new AggregateBackfillPlan( + // Flattened from series[].rules[].dependent_features so callers do not have to walk + // four levels of nesting to answer "which features does this sub-backfill cover?". + dependentFeatures(backfill), + new AggregateBackfillCostEstimate( + estimate.getMaxBuckets(), + estimate.getExpectedBuckets(), + estimate.getExpectedBytes(), + estimate.getExpectedStorageCost(), + estimate.hasExpectedRuntime() ? durationDecode(estimate.getExpectedRuntime()) : null + ), + emptyToNull(backfill.getResolver()), + emptyToNull(backfill.getDatetimeFeature()), + backfill.hasLowerBound() ? timestampDecode(backfill.getLowerBound()) : null, + backfill.hasUpperBound() ? timestampDecode(backfill.getUpperBound()) : null, + backfill.hasBucketDuration() ? durationDecode(backfill.getBucketDuration()) : null, + backfill.hasMaxRetention() ? durationDecode(backfill.getMaxRetention()) : null, + new ArrayList<>(backfill.getGroupByList()), + emptyToNull(backfill.getFiltersDescription()), + backfill.hasInputSql() ? backfill.getInputSql() : null + ); + } + + static AggregateBackfillJob jobDecode(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob proto) { + return new AggregateBackfillJob( + proto.getId(), + statusDecode(proto.getStatus()), + // Deduplicated so every server path agrees. CreateAggregateBackfillV2 writes a + // deduplicated set, but a V1 server builds this row from one insert per sub-backfill, + // repeating anything two sub-backfills share, and the server can also append + // resolvers while hydrating the row without deduplicating. + dedupe(proto.getFeaturesList()), + dedupe(proto.getResolversList()), + new ArrayList<>(proto.getQueryTagsList()), + emptyToNull(proto.getEnvironmentId()), + proto.hasResolver() ? proto.getResolver() : null, + proto.hasAgentId() ? proto.getAgentId() : null, + proto.hasDeploymentId() ? proto.getDeploymentId() : null, + proto.hasPlanHash() ? proto.getPlanHash() : null, + proto.hasCronAggregateBackfillId() ? proto.getCronAggregateBackfillId() : null, + proto.hasCronAggregateBackfillName() ? proto.getCronAggregateBackfillName() : null, + proto.hasCreatedAt() ? timestampDecode(proto.getCreatedAt()) : null, + proto.hasUpdatedAt() ? timestampDecode(proto.getUpdatedAt()) : null + ); + } + + /* + * Unlike ErrorCode, this is a lifecycle enum a newer server can extend. Reporting an + * unrecognized value as UNKNOWN keeps the rest of the backfill readable, where throwing + * would fail the whole response over one status we happen not to know yet. + */ + static AggregateBackfillStatus statusDecode(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus status) { + return switch (status) { + case AGGREGATE_BACKFILL_STATUS_INITIALIZING -> AggregateBackfillStatus.INITIALIZING; + case AGGREGATE_BACKFILL_STATUS_INIT_FAILED -> AggregateBackfillStatus.INIT_FAILED; + case AGGREGATE_BACKFILL_STATUS_SKIPPED -> AggregateBackfillStatus.SKIPPED; + case AGGREGATE_BACKFILL_STATUS_QUEUED -> AggregateBackfillStatus.QUEUED; + case AGGREGATE_BACKFILL_STATUS_WORKING -> AggregateBackfillStatus.WORKING; + case AGGREGATE_BACKFILL_STATUS_COMPLETED -> AggregateBackfillStatus.COMPLETED; + case AGGREGATE_BACKFILL_STATUS_FAILED -> AggregateBackfillStatus.FAILED; + case AGGREGATE_BACKFILL_STATUS_CANCELED -> AggregateBackfillStatus.CANCELED; + case AGGREGATE_BACKFILL_STATUS_UNSPECIFIED, UNRECOGNIZED -> AggregateBackfillStatus.UNKNOWN; + }; + } + + static List dependentFeatures(AggregateBackfill backfill) { + LinkedHashSet features = new LinkedHashSet<>(); + for (AggregateTimeSeries series : backfill.getSeriesList()) { + for (AggregateTimeSeriesRule rule : series.getRulesList()) { + features.addAll(rule.getDependentFeaturesList()); + } + } + return new ArrayList<>(features); + } + + static Timestamp timestampEncode(ZonedDateTime value) { + return Timestamp.newBuilder() + .setSeconds(value.toEpochSecond()) + .setNanos(value.getNano()) + .build(); + } + + private static ZonedDateTime timestampDecode(Timestamp ts) { + return ZonedDateTime.ofInstant(Instant.ofEpochSecond(ts.getSeconds(), ts.getNanos()), ZoneOffset.UTC); + } + + private static Duration durationDecode(com.google.protobuf.Duration d) { + return Duration.ofSeconds(d.getSeconds(), d.getNanos()); + } + + private static List dedupe(List values) { + return new ArrayList<>(new LinkedHashSet<>(values)); + } + + private static @Nullable String emptyToNull(String value) { + return value.isEmpty() ? null : value; + } +} diff --git a/src/main/java/ai/chalk/client/AggregateBackfills.java b/src/main/java/ai/chalk/client/AggregateBackfills.java new file mode 100644 index 00000000..bfddd343 --- /dev/null +++ b/src/main/java/ai/chalk/client/AggregateBackfills.java @@ -0,0 +1,310 @@ +package ai.chalk.client; + +import ai.chalk.exceptions.AggregateBackfillException; +import ai.chalk.exceptions.ChalkException; +import ai.chalk.exceptions.ClientException; +import ai.chalk.exceptions.ServerError; +import ai.chalk.models.AggregateBackfillParams; +import ai.chalk.models.AggregateBackfillResponse; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfill; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillUserParams; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate; +import ai.chalk.protos.chalk.aggregate.v1.AggregateServiceGrpc; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response; +import ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobRequest; +import ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobResponse; +import ai.chalk.protos.chalk.aggregate.v1.PlanAggregateBackfillRequest; +import ai.chalk.protos.chalk.aggregate.v1.PlanAggregateBackfillResponse; +import io.grpc.Status; +import io.grpc.StatusRuntimeException; + +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.List; + +/** + * Triggers aggregate backfills against the API server's AggregateService. Mirrors + * {@code ChalkGRPCClient.trigger_aggregate_backfill} in the Python client. + * + *

A single CreateAggregateBackfillV2 call plans and creates every job server-side. + * Servers that predate that RPC answer UNIMPLEMENTED, and the client falls back to + * planning and creating one job per sub-backfill itself. Both paths decode into the same + * {@link AggregateBackfillResponse}, so callers see one type regardless of server version. + */ +final class AggregateBackfills { + private static final System.Logger logger = System.getLogger(AggregateBackfills.class.getName()); + + private AggregateBackfills() {} + + static AggregateBackfillResponse trigger( + AggregateServiceGrpc.AggregateServiceBlockingStub stub, + AggregateBackfillParams params + ) throws ChalkException { + validate(params); + + CreateAggregateBackfillV2Request request = buildV2Request(params); + CreateAggregateBackfillV2Response response = createV2(stub, request); + if (response != null) { + return AggregateBackfillConverter.responseDecode(response); + } + + // The server predates CreateAggregateBackfillV2. Plan mode has no behavior to + // preserve on such servers, so it fails rather than degrading. + if (params.isPlanOnly()) { + throw new ClientException( + "This Chalk server does not support plan-only aggregate backfills. Upgrade your " + + "Chalk server, or omit planOnly to run the backfill." + ); + } + // Same for sharding: a server this old would silently run one unsharded job, which + // defeats the reason to pass numShards (avoiding OOM), so fail instead. + if (params.getNumShards() != null) { + throw new ClientException( + "This Chalk server does not support sharded aggregate backfills. Upgrade your " + + "Chalk server, or omit numShards to run the backfill as a single job." + ); + } + logger.log( + System.Logger.Level.WARNING, + "This Chalk server does not support server-side aggregate backfill planning. " + + "Falling back to client-side planning." + ); + return triggerLegacy(stub, params, request.getAllowEmptyTiles()); + } + + static void validate(AggregateBackfillParams params) throws ClientException { + if (params.getFeatures() == null) { + throw new ClientException("features is required to trigger an aggregate backfill."); + } + if (Boolean.TRUE.equals(params.getStoreOffline()) + && (params.getLowerBound() == null || params.getUpperBound() == null)) { + throw new ClientException( + "When storeOffline is true, both lowerBound and upperBound must be specified." + ); + } + if (params.getNumShards() != null && params.getNumShards() <= 1) { + throw new ClientException( + "numShards must be > 1 when provided; omit it to run the backfill as a single job." + ); + } + } + + static CreateAggregateBackfillV2Request buildV2Request(AggregateBackfillParams params) { + var request = CreateAggregateBackfillV2Request.newBuilder() + .addAllFeatures(params.getFeatures()) + .setExact(params.isExact()) + .setEnableProfiling(params.isEnableProfiling()) + .setMode( + params.isPlanOnly() + ? AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_PLAN + : AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_CREATE + ); + if (params.getQueryTags() != null) { + request.addAllTags(params.getQueryTags()); + } + if (params.getLowerBound() != null) { + request.setLowerBound(AggregateBackfillConverter.timestampEncode(params.getLowerBound())); + } + if (params.getUpperBound() != null) { + request.setUpperBound(AggregateBackfillConverter.timestampEncode(params.getUpperBound())); + } + if (params.getResolver() != null) { + request.setResolver(params.getResolver()); + } + if (params.getInputSql() != null) { + request.setInputSql(params.getInputSql()); + } + if (params.getStoreOffline() != null) { + request.setStoreOffline(params.getStoreOffline()); + } + if (params.getResourceGroup() != null) { + request.setResourceGroup(params.getResourceGroup()); + } + if (params.getNumShards() != null) { + request.setNumShards(params.getNumShards()); + } + // The server rejects allow_empty_tiles without an offline target, and this parameter + // defaults to true, so every default call would fail validation if it were sent + // verbatim. The flag has no effect off the offline path anyway. + request.setAllowEmptyTiles( + params.isAllowEmptyTiles() && Boolean.TRUE.equals(params.getStoreOffline()) + ); + return request.build(); + } + + /* + * Calls CreateAggregateBackfillV2, returning null if the server predates it. + * + * Only the RPC itself is guarded, so an UNIMPLEMENTED raised by anything else is never + * mistaken for version skew. + */ + private static @Nullable CreateAggregateBackfillV2Response createV2( + AggregateServiceGrpc.AggregateServiceBlockingStub stub, + CreateAggregateBackfillV2Request request + ) throws AggregateBackfillException { + try { + return stub.createAggregateBackfillV2(request); + } catch (StatusRuntimeException e) { + Status.Code code = e.getStatus().getCode(); + if (code == Status.Code.UNIMPLEMENTED) { + return null; + } + if (code == Status.Code.INVALID_ARGUMENT) { + // Both modes run the same validation and neither creates anything when it + // fails, so name the operation the caller actually asked for. + throw new AggregateBackfillException( + request.getMode() == AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_PLAN + ? "Failed to plan aggregate backfill." + : "Failed to create aggregate backfill. No jobs were created.", + e.getStatus().getDescription(), + List.of(), + e + ); + } + if (code == Status.Code.INTERNAL) { + // Includes the partial-launch case, where some jobs did start. The server's + // detail says how many, so it has to reach the caller. + throw new AggregateBackfillException( + "Failed to create aggregate backfill jobs.", + e.getStatus().getDescription(), + List.of(), + e + ); + } + throw e; + } + } + + /* + * Plans and creates one job per sub-backfill, for servers without V2. + * + * Returns the same AggregateBackfillResponse the V2 path does. The per-sub-backfill + * responses are used only to check for errors and to reconstruct the job row if it + * cannot be read back. + */ + private static AggregateBackfillResponse triggerLegacy( + AggregateServiceGrpc.AggregateServiceBlockingStub stub, + AggregateBackfillParams params, + boolean allowEmptyTiles + ) throws AggregateBackfillException { + List queryTags = params.getQueryTags() == null ? List.of() : params.getQueryTags(); + + var userParams = AggregateBackfillUserParams.newBuilder() + .addAllFeatures(params.getFeatures()) + .setExact(params.isExact()) + .addAllTags(queryTags); + if (params.getLowerBound() != null) { + userParams.setLowerBound(AggregateBackfillConverter.timestampEncode(params.getLowerBound())); + } + if (params.getUpperBound() != null) { + userParams.setUpperBound(AggregateBackfillConverter.timestampEncode(params.getUpperBound())); + } + if (params.getResolver() != null) { + userParams.setResolver(params.getResolver()); + } + if (params.getInputSql() != null) { + userParams.setInputSql(params.getInputSql()); + } + + PlanAggregateBackfillResponse planResponse = stub.planAggregateBackfill( + PlanAggregateBackfillRequest.newBuilder().setParams(userParams).build() + ); + if (planResponse.getErrorsCount() > 0) { + throw new AggregateBackfillException( + "Failed to plan aggregate backfill.", + String.join("\n", planResponse.getErrorsList()) + ); + } + + String aggregateBackfillId = planResponse.getAggregateBackfillId(); + List createResponses = new ArrayList<>(); + for (AggregateBackfillWithCostEstimate backfillWithEstimate : planResponse.getBackfillsList()) { + AggregateBackfill backfill = backfillWithEstimate.getBackfill(); + var createRequest = CreateAggregateBackfillJobRequest.newBuilder() + .addAllFeatures(AggregateBackfillConverter.dependentFeatures(backfill)) + .setBucketFeature(backfill.getDatetimeFeature()) + .setEnableProfiling(params.isEnableProfiling()) + .setAggregateBackfillId(aggregateBackfillId) + .addAllQueryTags(queryTags) + .setAllowEmptyTiles(allowEmptyTiles); + if (!backfill.getResolver().isEmpty()) { + createRequest.setResolver(backfill.getResolver()); + } + if (backfill.hasInputSql()) { + createRequest.setInputSql(backfill.getInputSql()); + } + if (backfill.hasLowerBound()) { + createRequest.setLowerBound(backfill.getLowerBound()); + } + if (backfill.hasUpperBound()) { + createRequest.setUpperBound(backfill.getUpperBound()); + } + if (params.getStoreOffline() != null) { + createRequest.setStoreOffline(params.getStoreOffline()); + } + if (params.getResourceGroup() != null) { + createRequest.setResourceGroup(params.getResourceGroup()); + } + + CreateAggregateBackfillJobResponse createResponse = stub.createAggregateBackfillJob(createRequest.build()); + if (createResponse.getErrorsCount() > 0) { + List errors = new ArrayList<>(); + for (var error : createResponse.getErrorsList()) { + errors.add(GrpcSerializer.toServerError(error)); + } + throw new AggregateBackfillException("Failed to create aggregate backfill job.", errors); + } + createResponses.add(createResponse); + } + + AggregateBackfillJob job = null; + try { + GetAggregateBackfillJobResponse getResponse = stub.getAggregateBackfillJob( + GetAggregateBackfillJobRequest.newBuilder().setAggregateBackfillId(aggregateBackfillId).build() + ); + // An unset `job` reads back as an empty message, which would otherwise be + // returned as a job with no id. + if (getResponse.hasJob()) { + job = getResponse.getJob(); + } + } catch (StatusRuntimeException e) { + // The jobs are already running, so a failed read must not fail the call. + logger.log( + System.Logger.Level.WARNING, + "Could not read back aggregate backfill " + aggregateBackfillId + ": " + e.getStatus(), + e + ); + } + + if (job == null) { + // The jobs did launch, so describe them rather than returning nothing. Only the + // fields this path can know are set; the rest stay unset and decode to null. + var reconstructed = AggregateBackfillJob.newBuilder() + .setId(aggregateBackfillId) + .setStatus(AggregateBackfillStatus.AGGREGATE_BACKFILL_STATUS_QUEUED) + .addAllQueryTags(queryTags); + for (CreateAggregateBackfillJobResponse createResponse : createResponses) { + reconstructed.addAllFeatures(createResponse.getFeaturesList()); + } + for (AggregateBackfillWithCostEstimate backfillWithEstimate : planResponse.getBackfillsList()) { + if (!backfillWithEstimate.getBackfill().getResolver().isEmpty()) { + reconstructed.addResolvers(backfillWithEstimate.getBackfill().getResolver()); + } + } + job = reconstructed.build(); + } + + // Decoding both branches through the converter is what makes the two server paths + // agree: it is the single place features and resolvers are deduplicated. + return new AggregateBackfillResponse( + AggregateBackfillConverter.jobDecode(job), + AggregateBackfillConverter.plansDecode(planResponse.getBackfillsList()) + ); + } +} diff --git a/src/main/java/ai/chalk/client/ChalkClient.java b/src/main/java/ai/chalk/client/ChalkClient.java index 42be5692..89ba4df2 100644 --- a/src/main/java/ai/chalk/client/ChalkClient.java +++ b/src/main/java/ai/chalk/client/ChalkClient.java @@ -291,6 +291,52 @@ default DeleteFeaturesResult deleteFeatures(DeleteFeaturesParams params) throws ); } + /** + * TriggerAggregateBackfill triggers one or more aggregate backfill jobs, the same + * operation as the {@code chalk aggregate backfill} CLI command. + *

See {@link AggregateBackfillParams} for more details on the parameters. + * + *

This is supported only by the gRPC client; see {@link ChalkClient#createGrpc()}. + * + *

+ * Example usage: + *

+     *         {@code
+     *         AggregateBackfillParams params = AggregateBackfillParams.builder()
+     *             .withFeatures("user.spend_30d")
+     *             .build();
+     *         AggregateBackfillResponse res = client.triggerAggregateBackfill(params);
+     *         String backfillId = res.getJob().getId();
+     *
+     *         // Validate the request and see the planner's cost estimates without creating anything:
+     *         AggregateBackfillResponse plan = client.triggerAggregateBackfill(
+     *             AggregateBackfillParams.builder()
+     *                 .withFeatures("user.spend_30d")
+     *                 .withPlanOnly(true)
+     *                 .build()
+     *         );
+     *         }
+     *     
+ *

+ * + * @return {@link AggregateBackfillResponse}. Its {@code job} is the single aggregate + * backfill row covering every job this request launched -- {@code job.getId()} + * is the aggregate backfill id -- and is null when {@code planOnly} is set. Its + * {@code subBackfills} is the planner's split of the request, each entry pairing + * the features it covers with its cost estimate. + * @throws ai.chalk.exceptions.AggregateBackfillException if the server fails to plan or + * create the backfill + * @throws ChalkException if the parameters are invalid, or the server does not support a + * requested option + */ + default AggregateBackfillResponse triggerAggregateBackfill(AggregateBackfillParams params) + throws ChalkException { + throw new ClientException( + "triggerAggregateBackfill is only supported by the gRPC client. Build one with " + + "ChalkClient.builder().withGrpc().build() or ChalkClient.createGrpc()." + ); + } + diff --git a/src/main/java/ai/chalk/client/GRPCClient.java b/src/main/java/ai/chalk/client/GRPCClient.java index 97857667..ddffbb64 100644 --- a/src/main/java/ai/chalk/client/GRPCClient.java +++ b/src/main/java/ai/chalk/client/GRPCClient.java @@ -7,11 +7,14 @@ import ai.chalk.internal.arrow.FeatherProcessor; import ai.chalk.internal.config.Loader; import ai.chalk.internal.config.models.ProjectToken; +import ai.chalk.models.AggregateBackfillParams; +import ai.chalk.models.AggregateBackfillResponse; import ai.chalk.models.OnlineQueryMultiResult; import ai.chalk.models.OnlineQueryParamsComplete; import ai.chalk.models.OnlineQueryResult; import ai.chalk.models.UploadFeaturesParams; import ai.chalk.models.UploadFeaturesResult; +import ai.chalk.protos.chalk.aggregate.v1.AggregateServiceGrpc; import ai.chalk.protos.chalk.common.v1.*; import ai.chalk.protos.chalk.engine.v1.PingRequest; import ai.chalk.protos.chalk.engine.v1.QueryServiceGrpc; @@ -167,7 +170,15 @@ public GRPCClient(BuilderImpl builder) throws ChalkException { var queryStub = QueryServiceGrpc.newBlockingStub(engineChannel); - this.stubsProvider = new StubsProvider(queryStub, this.timeout); + // API-server services (e.g. AggregateService) share the token-exchange channel, + // authenticated per call, as the Python client's server channel does. + Channel serverChannel = ClientInterceptors.intercept( + unauthServerChannel, + new AuthenticatedHeaderClientInterceptor(ServerType.SERVER, Map.of(), tokenRefresher, null) + ); + var aggregateStub = AggregateServiceGrpc.newBlockingStub(serverChannel); + + this.stubsProvider = new StubsProvider(queryStub, aggregateStub, this.timeout); } private static ChannelCredentials getChannelCredentials(String grpcHost, ResolvedConfig resolvedConfig) throws ClientException { @@ -781,6 +792,16 @@ public UploadFeaturesResult uploadFeatures(UploadFeaturesParams params) throws C return new UploadFeaturesResult(response.getOperationId(), errors); } + @Override + public AggregateBackfillResponse triggerAggregateBackfill(AggregateBackfillParams params) + throws ChalkException { + return AggregateBackfills.trigger( + this.stubsProvider.getAggregateStub(Optional.ofNullable(params.getTimeout())) + .withInterceptors(this.getRequestHeaderInterceptor(params.getEnvironmentId(), null)), + params + ); + } + @Override public void close() throws InterruptedException { this.allocator.close(); @@ -796,17 +817,43 @@ public void close() throws InterruptedException { */ public static class StubsProvider { private final @NonNull QueryServiceGrpc.QueryServiceBlockingStub queryStub; + private final @Nullable AggregateServiceGrpc.AggregateServiceBlockingStub aggregateStub; private final Optional clientLevelTimeout; public StubsProvider( QueryServiceGrpc.QueryServiceBlockingStub queryStub, Optional clientLevelTimeout + ) { + this(queryStub, null, clientLevelTimeout); + } + + public StubsProvider( + QueryServiceGrpc.QueryServiceBlockingStub queryStub, + @Nullable AggregateServiceGrpc.AggregateServiceBlockingStub aggregateStub, + Optional clientLevelTimeout ) { this.queryStub = queryStub; + this.aggregateStub = aggregateStub; this.clientLevelTimeout = clientLevelTimeout; } public QueryServiceGrpc.QueryServiceBlockingStub getQueryStub(Optional requestLevelTimeout) { + return withTimeout(queryStub, requestLevelTimeout); + } + + public AggregateServiceGrpc.AggregateServiceBlockingStub getAggregateStub( + Optional requestLevelTimeout + ) throws ClientException { + if (aggregateStub == null) { + throw new ClientException("The gRPC API server's AggregateService is not configured."); + } + return withTimeout(aggregateStub, requestLevelTimeout); + } + + private > S withTimeout( + S stub, + Optional requestLevelTimeout + ) { Duration timeout = null; if (requestLevelTimeout.isPresent()) { timeout = requestLevelTimeout.get(); @@ -814,9 +861,9 @@ public QueryServiceGrpc.QueryServiceBlockingStub getQueryStub(Optional timeout = this.clientLevelTimeout.get(); } if (timeout != null) { - return queryStub.withDeadlineAfter(timeout.toMillis(), java.util.concurrent.TimeUnit.MILLISECONDS); + return stub.withDeadlineAfter(timeout.toMillis(), java.util.concurrent.TimeUnit.MILLISECONDS); } - return queryStub; + return stub; } } } diff --git a/src/main/java/ai/chalk/exceptions/AggregateBackfillException.java b/src/main/java/ai/chalk/exceptions/AggregateBackfillException.java new file mode 100644 index 00000000..624e2c3f --- /dev/null +++ b/src/main/java/ai/chalk/exceptions/AggregateBackfillException.java @@ -0,0 +1,41 @@ +package ai.chalk.exceptions; + +import lombok.Getter; + +import javax.annotation.Nullable; +import java.util.List; + +/** + * Exception thrown when the server fails to plan or create an aggregate backfill. + */ +@Getter +public class AggregateBackfillException extends ChalkException { + /** + * The server's description of the failure, if it gave one. + */ + @Nullable + private final String detail; + /** + * The errors the server reported, if it reported structured errors. + */ + private final List errors; + + public AggregateBackfillException(String message, @Nullable String detail) { + this(message, detail, List.of(), null); + } + + public AggregateBackfillException(String message, List errors) { + this(message, null, errors, null); + } + + public AggregateBackfillException( + String message, + @Nullable String detail, + List errors, + @Nullable Throwable cause + ) { + super(detail == null || detail.isEmpty() ? message : message + " " + detail, cause); + this.detail = detail; + this.errors = errors; + } +} diff --git a/src/main/java/ai/chalk/models/AggregateBackfillCostEstimate.java b/src/main/java/ai/chalk/models/AggregateBackfillCostEstimate.java new file mode 100644 index 00000000..e2caf10d --- /dev/null +++ b/src/main/java/ai/chalk/models/AggregateBackfillCostEstimate.java @@ -0,0 +1,28 @@ +package ai.chalk.models; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.annotation.Nullable; +import java.time.Duration; + +/** + * The planner's cost estimate for a single sub-backfill. + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class AggregateBackfillCostEstimate { + /** The largest number of tile buckets the sub-backfill could write. */ + private long maxBuckets; + /** The number of tile buckets the sub-backfill is expected to write. */ + private long expectedBuckets; + /** The number of bytes the sub-backfill is expected to write. */ + private long expectedBytes; + /** The expected storage cost, in dollars, of the data the sub-backfill writes. */ + private double expectedStorageCost; + /** How long the sub-backfill is expected to take, if the planner could estimate it. */ + @Nullable + private Duration expectedRuntime; +} diff --git a/src/main/java/ai/chalk/models/AggregateBackfillJob.java b/src/main/java/ai/chalk/models/AggregateBackfillJob.java new file mode 100644 index 00000000..f7ce3731 --- /dev/null +++ b/src/main/java/ai/chalk/models/AggregateBackfillJob.java @@ -0,0 +1,55 @@ +package ai.chalk.models; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.annotation.Nullable; +import java.time.ZonedDateTime; +import java.util.List; + +/** + * The aggregate backfill row covering every job a single request launched. + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class AggregateBackfillJob { + /** The aggregate backfill id. Use this to poll the backfill's status. */ + private String id; + /** The current status of the backfill. */ + private AggregateBackfillStatus status; + /** Every aggregate feature this backfill covers. */ + private List features; + /** Every resolver this backfill runs. */ + private List resolvers; + /** The resolver tags the backfill's jobs run with. */ + private List queryTags; + /** The environment the backfill runs in. */ + @Nullable + private String environmentId; + /** The resolver the request named, if it named one. */ + @Nullable + private String resolver; + /** The id of the user or service token that triggered the backfill. */ + @Nullable + private String agentId; + /** The deployment the backfill's jobs run against. */ + @Nullable + private String deploymentId; + /** The hash of the plan the backfill was created from. */ + @Nullable + private String planHash; + /** The id of the cron aggregate backfill that created this backfill, if any. */ + @Nullable + private String cronAggregateBackfillId; + /** The name of the cron aggregate backfill that created this backfill, if any. */ + @Nullable + private String cronAggregateBackfillName; + /** When the backfill was created. */ + @Nullable + private ZonedDateTime createdAt; + /** When the backfill was last updated. */ + @Nullable + private ZonedDateTime updatedAt; +} diff --git a/src/main/java/ai/chalk/models/AggregateBackfillParams.java b/src/main/java/ai/chalk/models/AggregateBackfillParams.java new file mode 100644 index 00000000..b17fc4d8 --- /dev/null +++ b/src/main/java/ai/chalk/models/AggregateBackfillParams.java @@ -0,0 +1,220 @@ +package ai.chalk.models; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; + +import javax.annotation.Nullable; +import java.time.Duration; +import java.time.ZonedDateTime; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + + +/** + * Parameters for triggering one or more aggregate backfill jobs. Mirrors the parameters + * of {@code ChalkClient.trigger_aggregate_backfill} in the Python client, and of the + * {@code chalk aggregate backfill} CLI command. + */ +@AllArgsConstructor @Getter +public class AggregateBackfillParams { + /** + * The fully-qualified names of the aggregate features to backfill. + */ + private final List features; + /** + * The lower bound of the time range to backfill. + */ + @Nullable + private final ZonedDateTime lowerBound; + /** + * The upper bound of the time range to backfill. + */ + @Nullable + private final ZonedDateTime upperBound; + /** + * The resolver to use for the backfill. Mutually exclusive with {@code inputSql}. + */ + @Nullable + private final String resolver; + /** + * Resolver tags to prefer when running the backfill. + */ + @Nullable + private final List queryTags; + /** + * If true, store materialized aggregate values in the offline store. Requires both + * {@code lowerBound} and {@code upperBound}. If null, the server default applies. + */ + @Nullable + private final Boolean storeOffline; + /** + * If true, empty tile spans are silently skipped instead of raising an error. + * Defaults to true, but is only meaningful together with {@code storeOffline = true}: + * without an offline target it is always sent as false. + */ + private final boolean allowEmptyTiles; + /** + * If true, execute the underlying SQL source to determine the exact number of rows + * that need to migrate. + */ + private final boolean exact; + /** + * If true, enable profiling while running the backfill jobs. + */ + private final boolean enableProfiling; + /** + * Resource group to use for the created backfill jobs. + */ + @Nullable + private final String resourceGroup; + /** + * Chalk SQL query to use to resolve event data. Mutually exclusive with {@code resolver}. + */ + @Nullable + private final String inputSql; + /** + * Maximum number of bucket-aligned, time-sharded jobs to split each backfill job's + * window into. Must be greater than 1 when provided. The server chooses the actual + * count (at most this many) so that all shards stay aligned to the aggregation's + * bucket grid. Useful when a single job over the full window would run out of memory + * or disk. Unset preserves the single-job behavior. + */ + @Nullable + private final Integer numShards; + /** + * If true, validate the request and return the planner's split with cost estimates + * without creating anything. The response's job is absent, and there is no backfill + * id to poll. The same validation runs as for a real backfill, so a request that plans + * cleanly will also create cleanly. + */ + private final boolean planOnly; + @Nullable + private final String environmentId; + @Nullable + private final Duration timeout; + + @AllArgsConstructor + @NoArgsConstructor + public static class Builder { + protected List features; + protected ZonedDateTime lowerBound; + protected ZonedDateTime upperBound; + protected String resolver; + protected List queryTags; + protected Boolean storeOffline; + protected boolean allowEmptyTiles = true; + protected boolean exact = false; + protected boolean enableProfiling = false; + protected String resourceGroup; + protected String inputSql; + protected Integer numShards; + protected boolean planOnly = false; + protected String environmentId; + protected Duration timeout; + + public AggregateBackfillParams build() { + return new AggregateBackfillParams( + this.features, + this.lowerBound, + this.upperBound, + this.resolver, + this.queryTags, + this.storeOffline, + this.allowEmptyTiles, + this.exact, + this.enableProfiling, + this.resourceGroup, + this.inputSql, + this.numShards, + this.planOnly, + this.environmentId, + this.timeout); + } + + public Builder withFeatures(List features) { + this.features = features == null ? null : new ArrayList<>(features); + return this; + } + + public Builder withFeatures(String... features) { + return this.withFeatures(Arrays.asList(features)); + } + + public Builder withLowerBound(ZonedDateTime lowerBound) { + this.lowerBound = lowerBound; + return this; + } + + public Builder withUpperBound(ZonedDateTime upperBound) { + this.upperBound = upperBound; + return this; + } + + public Builder withResolver(String resolver) { + this.resolver = resolver; + return this; + } + + public Builder withQueryTags(List queryTags) { + this.queryTags = queryTags; + return this; + } + + public Builder withStoreOffline(Boolean storeOffline) { + this.storeOffline = storeOffline; + return this; + } + + /** Defaults to {@code true}; only sent when {@code storeOffline} is true. */ + public Builder withAllowEmptyTiles(boolean allowEmptyTiles) { + this.allowEmptyTiles = allowEmptyTiles; + return this; + } + + public Builder withExact(boolean exact) { + this.exact = exact; + return this; + } + + public Builder withEnableProfiling(boolean enableProfiling) { + this.enableProfiling = enableProfiling; + return this; + } + + public Builder withResourceGroup(String resourceGroup) { + this.resourceGroup = resourceGroup; + return this; + } + + public Builder withInputSql(String inputSql) { + this.inputSql = inputSql; + return this; + } + + public Builder withNumShards(Integer numShards) { + this.numShards = numShards; + return this; + } + + public Builder withPlanOnly(boolean planOnly) { + this.planOnly = planOnly; + return this; + } + + public Builder withEnvironmentId(String environmentId) { + this.environmentId = environmentId; + return this; + } + + public Builder withTimeout(Duration timeout) { + this.timeout = timeout; + return this; + } + } + + public static Builder builder() { + return new Builder(); + } +} diff --git a/src/main/java/ai/chalk/models/AggregateBackfillPlan.java b/src/main/java/ai/chalk/models/AggregateBackfillPlan.java new file mode 100644 index 00000000..61ad1474 --- /dev/null +++ b/src/main/java/ai/chalk/models/AggregateBackfillPlan.java @@ -0,0 +1,49 @@ +package ai.chalk.models; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.annotation.Nullable; +import java.time.Duration; +import java.time.ZonedDateTime; +import java.util.List; + +/** + * One sub-backfill that the planner split an aggregate backfill request into. + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class AggregateBackfillPlan { + /** The aggregate features this sub-backfill computes. */ + private List features; + /** The planner's cost estimate for this sub-backfill. */ + private AggregateBackfillCostEstimate estimate; + /** The resolver this sub-backfill runs, if it resolves from a resolver. */ + @Nullable + private String resolver; + /** The feature this sub-backfill buckets on. */ + @Nullable + private String datetimeFeature; + /** The start of the time range this sub-backfill covers, if bounded. */ + @Nullable + private ZonedDateTime lowerBound; + /** The end of the time range this sub-backfill covers, if bounded. */ + @Nullable + private ZonedDateTime upperBound; + /** The width of each tile bucket this sub-backfill writes. */ + @Nullable + private Duration bucketDuration; + /** The longest retention across the aggregations this sub-backfill serves. */ + @Nullable + private Duration maxRetention; + /** The features this sub-backfill groups by. */ + private List groupBy; + /** A human-readable description of the filters applied to the source data. */ + @Nullable + private String filtersDescription; + /** The SQL this sub-backfill runs to resolve event data, if it resolves from SQL. */ + @Nullable + private String inputSql; +} diff --git a/src/main/java/ai/chalk/models/AggregateBackfillResponse.java b/src/main/java/ai/chalk/models/AggregateBackfillResponse.java new file mode 100644 index 00000000..18931c9b --- /dev/null +++ b/src/main/java/ai/chalk/models/AggregateBackfillResponse.java @@ -0,0 +1,43 @@ +package ai.chalk.models; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Set; + +/** + * The result of triggering an aggregate backfill. + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class AggregateBackfillResponse { + /** + * The backfill that was created, or null when the request was a {@code planOnly} + * dry run. A dry run creates nothing, so there is no id to poll. + */ + @Nullable + private AggregateBackfillJob job; + /** + * The planner's split of the request, one entry per sub-backfill, each with its + * cost estimate. + */ + private List subBackfills; + + /** + * Every aggregate feature covered by the request, across all sub-backfills, in order + * of first appearance. + */ + public List getFeatures() { + Set features = new LinkedHashSet<>(); + for (AggregateBackfillPlan subBackfill : this.subBackfills) { + features.addAll(subBackfill.getFeatures()); + } + return new ArrayList<>(features); + } +} diff --git a/src/main/java/ai/chalk/models/AggregateBackfillStatus.java b/src/main/java/ai/chalk/models/AggregateBackfillStatus.java new file mode 100644 index 00000000..0f2b7fb2 --- /dev/null +++ b/src/main/java/ai/chalk/models/AggregateBackfillStatus.java @@ -0,0 +1,25 @@ +package ai.chalk.models; + +/** + * Status of an aggregate backfill. + */ +public enum AggregateBackfillStatus { + /** The backfill's jobs are being created. */ + INITIALIZING, + /** The backfill's jobs could not be created. */ + INIT_FAILED, + /** The backfill had no work to do. */ + SKIPPED, + /** The backfill's jobs have been created and are waiting to run. */ + QUEUED, + /** The backfill's jobs are running. */ + WORKING, + /** Every job in the backfill finished successfully. */ + COMPLETED, + /** At least one job in the backfill failed. */ + FAILED, + /** The backfill was canceled before finishing. */ + CANCELED, + /** The server reported a status this version of chalk-java does not recognize. */ + UNKNOWN +} diff --git a/src/test/java/ai/chalk/client/TestAggregateBackfill.java b/src/test/java/ai/chalk/client/TestAggregateBackfill.java new file mode 100644 index 00000000..c274141c --- /dev/null +++ b/src/test/java/ai/chalk/client/TestAggregateBackfill.java @@ -0,0 +1,658 @@ +package ai.chalk.client; + +import ai.chalk.exceptions.AggregateBackfillException; +import ai.chalk.exceptions.ClientException; +import ai.chalk.models.AggregateBackfillParams; +import ai.chalk.models.AggregateBackfillResponse; +import ai.chalk.models.AggregateBackfillStatus; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfill; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillCostEstimate; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillMode; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillWithCostEstimate; +import ai.chalk.protos.chalk.aggregate.v1.AggregateServiceGrpc; +import ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeries; +import ai.chalk.protos.chalk.aggregate.v1.AggregateTimeSeriesRule; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobRequest; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillJobResponse; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response; +import ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobRequest; +import ai.chalk.protos.chalk.aggregate.v1.GetAggregateBackfillJobResponse; +import ai.chalk.protos.chalk.aggregate.v1.PlanAggregateBackfillRequest; +import ai.chalk.protos.chalk.aggregate.v1.PlanAggregateBackfillResponse; +import ai.chalk.protos.chalk.common.v1.ChalkError; +import com.google.protobuf.Timestamp; +import io.grpc.ManagedChannel; +import io.grpc.Server; +import io.grpc.Status; +import io.grpc.StatusRuntimeException; +import io.grpc.netty.shaded.io.grpc.netty.NettyChannelBuilder; +import io.grpc.netty.shaded.io.grpc.netty.NettyServerBuilder; +import io.grpc.stub.StreamObserver; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.CsvSource; + +import java.net.InetSocketAddress; +import java.time.ZoneOffset; +import java.time.ZonedDateTime; +import java.util.ArrayDeque; +import java.util.ArrayList; +import java.util.Deque; +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * Tests for aggregate backfill planning and job creation, ported from the Python client's + * {@code tests/client/test_trigger_aggregate_backfill.py}. + * + *

{@code triggerAggregateBackfill} issues a single CreateAggregateBackfillV2 call. + * Servers that predate that RPC answer UNIMPLEMENTED, and the client falls back to planning + * and creating one job per sub-backfill itself. Both paths decode into an + * {@link AggregateBackfillResponse}. These run against a loopback AggregateService, so + * requests and status codes go through real gRPC stubs. + */ +public class TestAggregateBackfill { + private static final String AGG_BACKFILL_ID = "agg-backfill-123"; + private static final ZonedDateTime LOWER = ZonedDateTime.of(2024, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC); + private static final ZonedDateTime UPPER = ZonedDateTime.of(2024, 1, 2, 0, 0, 0, 0, ZoneOffset.UTC); + + private FakeAggregateService service; + private Server server; + private ManagedChannel channel; + private AggregateServiceGrpc.AggregateServiceBlockingStub stub; + + @BeforeEach + public void setUp() throws Exception { + service = new FakeAggregateService(); + server = NettyServerBuilder.forAddress(new InetSocketAddress("localhost", 0)) + .addService(service) + .build() + .start(); + channel = NettyChannelBuilder.forAddress("localhost", server.getPort()).usePlaintext().build(); + stub = AggregateServiceGrpc.newBlockingStub(channel); + } + + @AfterEach + public void tearDown() { + channel.shutdownNow(); + server.shutdownNow(); + } + + // ---------------------------------------------------------------- fake server + + /** + * An AggregateService that records every request. By default it supports + * CreateAggregateBackfillV2; set {@code v2Error} to UNIMPLEMENTED to act as a server + * that predates it. + */ + static class FakeAggregateService extends AggregateServiceGrpc.AggregateServiceImplBase { + CreateAggregateBackfillV2Response v2Response = CreateAggregateBackfillV2Response.newBuilder() + .setJob(AggregateBackfillJob.newBuilder().setId(AGG_BACKFILL_ID)) + .build(); + Status v2Error; + PlanAggregateBackfillResponse planResponse = planResponse(defaultBackfills(), List.of()); + Deque createResponses = new ArrayDeque<>(); + CreateAggregateBackfillJobResponse defaultCreateResponse = + CreateAggregateBackfillJobResponse.newBuilder().setJobId("job-1").build(); + GetAggregateBackfillJobResponse getResponse = GetAggregateBackfillJobResponse.newBuilder() + .setJob(AggregateBackfillJob.newBuilder().setId(AGG_BACKFILL_ID)) + .build(); + Status getError; + + final List v2Requests = new ArrayList<>(); + final List planRequests = new ArrayList<>(); + final List createRequests = new ArrayList<>(); + final List getRequests = new ArrayList<>(); + + void actAsLegacyServer() { + this.v2Error = Status.UNIMPLEMENTED; + } + + @Override + public void createAggregateBackfillV2( + CreateAggregateBackfillV2Request request, + StreamObserver observer + ) { + v2Requests.add(request); + if (v2Error != null) { + observer.onError(v2Error.asRuntimeException()); + return; + } + observer.onNext(v2Response); + observer.onCompleted(); + } + + @Override + public void planAggregateBackfill( + PlanAggregateBackfillRequest request, + StreamObserver observer + ) { + planRequests.add(request); + observer.onNext(planResponse); + observer.onCompleted(); + } + + @Override + public void createAggregateBackfillJob( + CreateAggregateBackfillJobRequest request, + StreamObserver observer + ) { + createRequests.add(request); + observer.onNext(createResponses.isEmpty() ? defaultCreateResponse : createResponses.poll()); + observer.onCompleted(); + } + + @Override + public void getAggregateBackfillJob( + GetAggregateBackfillJobRequest request, + StreamObserver observer + ) { + getRequests.add(request); + if (getError != null) { + observer.onError(getError.asRuntimeException()); + return; + } + observer.onNext(getResponse); + observer.onCompleted(); + } + } + + // ---------------------------------------------------------------- helpers + + private static AggregateBackfill.Builder backfill(String resolver, String datetimeFeature, String... features) { + return AggregateBackfill.newBuilder() + .setResolver(resolver) + .setDatetimeFeature(datetimeFeature) + .addSeries(AggregateTimeSeries.newBuilder() + .setNamespace("events") + .setAggregateOn("amount") + .addRules(AggregateTimeSeriesRule.newBuilder().addAllDependentFeatures(List.of(features)))); + } + + private static AggregateBackfillWithCostEstimate withEstimate(AggregateBackfill.Builder backfill, long maxBuckets) { + return AggregateBackfillWithCostEstimate.newBuilder() + .setBackfill(backfill) + .setEstimate(AggregateBackfillCostEstimate.newBuilder().setMaxBuckets(maxBuckets)) + .build(); + } + + private static List defaultBackfills() { + return List.of(withEstimate(backfill("aggregate_resolver", "events.ts", "user.spend_by_merchant_1d"), 1)); + } + + private static PlanAggregateBackfillResponse planResponse( + List backfills, + List errors + ) { + return PlanAggregateBackfillResponse.newBuilder() + .setAggregateBackfillId(AGG_BACKFILL_ID) + .addAllBackfills(backfills) + .addAllErrors(errors) + .build(); + } + + private static AggregateBackfillParams.Builder params() { + return AggregateBackfillParams.builder().withFeatures("user.spend_by_merchant_1d"); + } + + private AggregateBackfillResponse trigger(AggregateBackfillParams.Builder params) throws Exception { + return AggregateBackfills.trigger(stub, params.build()); + } + + private static long seconds(ZonedDateTime value) { + return value.toEpochSecond(); + } + + // ---------------------------------------------------------------- CreateAggregateBackfillV2 + + @Test + public void testSendsASingleV2Request() throws Exception { + trigger(params() + .withLowerBound(LOWER) + .withUpperBound(UPPER) + .withResolver("my_resolver") + .withQueryTags(List.of("prod", "priority")) + .withStoreOffline(true) + .withExact(true) + .withEnableProfiling(true) + .withResourceGroup("batch-rg")); + + assertEquals(1, service.v2Requests.size()); + assertTrue(service.planRequests.isEmpty()); + assertTrue(service.createRequests.isEmpty()); + + CreateAggregateBackfillV2Request req = service.v2Requests.get(0); + assertEquals(List.of("user.spend_by_merchant_1d"), req.getFeaturesList()); + assertEquals("my_resolver", req.getResolver()); + assertEquals(List.of("prod", "priority"), req.getTagsList()); + assertTrue(req.getExact()); + assertEquals(seconds(LOWER), req.getLowerBound().getSeconds()); + assertEquals(seconds(UPPER), req.getUpperBound().getSeconds()); + assertTrue(req.getEnableProfiling()); + assertEquals("batch-rg", req.getResourceGroup()); + assertEquals(AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_CREATE, req.getMode()); + assertFalse(req.hasNumShards()); + assertFalse(req.hasInputSql()); + } + + @Test + public void testDecodesTheV2ResponseIntoTheModel() throws Exception { + service.v2Response = CreateAggregateBackfillV2Response.newBuilder() + .setJob(AggregateBackfillJob.newBuilder() + .setId(AGG_BACKFILL_ID) + .setStatus(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.AGGREGATE_BACKFILL_STATUS_QUEUED) + .addFeatures("user.spend_by_merchant_1d") + .setCreatedAt(Timestamp.newBuilder().setSeconds(seconds(LOWER)))) + .addAllSubBackfills(List.of(withEstimate( + backfill("aggregate_resolver", "events.ts", "user.spend_by_merchant_1d") + .setLowerBound(Timestamp.newBuilder().setSeconds(seconds(LOWER))) + .setBucketDuration(com.google.protobuf.Duration.newBuilder().setSeconds(3600)), + 1))) + .build(); + + AggregateBackfillResponse response = trigger(params()); + + assertNotNull(response.getJob()); + assertEquals(AGG_BACKFILL_ID, response.getJob().getId()); + assertEquals(AggregateBackfillStatus.QUEUED, response.getJob().getStatus()); + assertEquals(List.of("user.spend_by_merchant_1d"), response.getJob().getFeatures()); + assertEquals(LOWER, response.getJob().getCreatedAt()); + assertNull(response.getJob().getUpdatedAt()); + assertNull(response.getJob().getEnvironmentId()); + // dependent_features is flattened out of series[].rules[] onto the sub-backfill. + var sub = response.getSubBackfills().get(0); + assertEquals(List.of("user.spend_by_merchant_1d"), sub.getFeatures()); + assertEquals(1, sub.getEstimate().getMaxBuckets()); + assertNull(sub.getEstimate().getExpectedRuntime()); + assertEquals("aggregate_resolver", sub.getResolver()); + assertEquals("events.ts", sub.getDatetimeFeature()); + assertEquals(LOWER, sub.getLowerBound()); + assertNull(sub.getUpperBound()); + assertEquals(java.time.Duration.ofHours(1), sub.getBucketDuration()); + assertNull(sub.getInputSql()); + assertNull(sub.getFiltersDescription()); + assertEquals(List.of("user.spend_by_merchant_1d"), response.getFeatures()); + } + + @Test + public void testUnrecognizedStatusDecodesAsUnknown() throws Exception { + service.v2Response = CreateAggregateBackfillV2Response.newBuilder() + .setJob(AggregateBackfillJob.newBuilder().setId(AGG_BACKFILL_ID).setStatusValue(999)) + .build(); + + AggregateBackfillResponse response = trigger(params()); + + assertEquals(AggregateBackfillStatus.UNKNOWN, response.getJob().getStatus()); + } + + @Test + public void testInputSqlIsForwarded() throws Exception { + trigger(params().withInputSql("select 1")); + + assertEquals("select 1", service.v2Requests.get(0).getInputSql()); + } + + @Test + public void testOmitsStoreOfflineByDefault() throws Exception { + trigger(params()); + + CreateAggregateBackfillV2Request req = service.v2Requests.get(0); + assertFalse(req.hasStoreOffline()); + assertFalse(req.hasResourceGroup()); + assertFalse(req.hasResolver()); + } + + @Test + public void testSetsStoreOfflineFalseWithoutBounds() throws Exception { + trigger(params().withStoreOffline(false)); + + CreateAggregateBackfillV2Request req = service.v2Requests.get(0); + assertTrue(req.hasStoreOffline()); + assertFalse(req.getStoreOffline()); + } + + @Test + public void testAllowEmptyTilesPassedThroughForOffline() throws Exception { + trigger(params().withStoreOffline(true).withLowerBound(LOWER).withUpperBound(UPPER)); + + CreateAggregateBackfillV2Request req = service.v2Requests.get(0); + assertTrue(req.hasAllowEmptyTiles()); + assertTrue(req.getAllowEmptyTiles()); + } + + /** + * The server rejects allow_empty_tiles without an offline target, and this parameter + * defaults to true, so every default call would fail validation if it were sent verbatim. + */ + @Test + public void testAllowEmptyTilesCoercedToFalseWithoutOffline() throws Exception { + trigger(params()); + + CreateAggregateBackfillV2Request req = service.v2Requests.get(0); + assertTrue(req.hasAllowEmptyTiles()); + assertFalse(req.getAllowEmptyTiles()); + } + + @ParameterizedTest + @CsvSource({"false,false", "true,false", "false,true"}) + public void testRequiresBothBoundsForStoreOffline(boolean withLower, boolean withUpper) { + var params = params().withStoreOffline(true); + if (withLower) { + params.withLowerBound(LOWER); + } + if (withUpper) { + params.withUpperBound(UPPER); + } + + var e = assertThrows(ClientException.class, () -> trigger(params)); + assertTrue(e.getMessage().contains("both lowerBound and upperBound must be specified")); + assertTrue(service.v2Requests.isEmpty()); + } + + @ParameterizedTest + @CsvSource({"1", "0", "-3"}) + public void testNumShardsMustExceedOneClientSide(int numShards) { + var e = assertThrows(ClientException.class, () -> trigger(params().withNumShards(numShards))); + assertTrue(e.getMessage().contains("numShards must be > 1")); + assertTrue(service.v2Requests.isEmpty()); + } + + @Test + public void testNumShardsIsForwarded() throws Exception { + trigger(params().withNumShards(4)); + + CreateAggregateBackfillV2Request req = service.v2Requests.get(0); + assertTrue(req.hasNumShards()); + assertEquals(4, req.getNumShards()); + } + + @Test + public void testFeaturesAreRequired() { + assertThrows(ClientException.class, () -> trigger(AggregateBackfillParams.builder())); + assertTrue(service.v2Requests.isEmpty()); + } + + // ---------------------------------------------------------------- plan mode + + @Test + public void testPlanOnlySetsPlanModeAndChangesNothingElse() throws Exception { + var params = params() + .withResolver("my_resolver") + .withQueryTags(List.of("prod")) + .withStoreOffline(true) + .withLowerBound(LOWER) + .withUpperBound(UPPER) + .withResourceGroup("batch-rg"); + + trigger(params.withPlanOnly(true)); + trigger(params.withPlanOnly(false)); + + CreateAggregateBackfillV2Request planReq = service.v2Requests.get(0); + CreateAggregateBackfillV2Request createReq = service.v2Requests.get(1); + assertEquals(AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_PLAN, planReq.getMode()); + assertEquals(AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_CREATE, createReq.getMode()); + + // Only `mode` differs: a dry run has to exercise the same validation as a real run. + assertEquals( + createReq, + planReq.toBuilder().setMode(AggregateBackfillMode.AGGREGATE_BACKFILL_MODE_CREATE).build() + ); + } + + @Test + public void testPlanOnlyReturnsSubBackfillsWithoutAJob() throws Exception { + service.v2Response = CreateAggregateBackfillV2Response.newBuilder() + .addAllSubBackfills(defaultBackfills()) + .build(); + + AggregateBackfillResponse response = trigger(params().withPlanOnly(true)); + + assertNull(response.getJob()); + assertEquals(1, response.getSubBackfills().size()); + assertEquals(List.of("user.spend_by_merchant_1d"), response.getSubBackfills().get(0).getFeatures()); + } + + /** Plan mode is new, so there is no old behavior to preserve by falling back. */ + @Test + public void testPlanOnlyFailsAgainstAServerWithoutV2() { + service.actAsLegacyServer(); + + var e = assertThrows(ClientException.class, () -> trigger(params().withPlanOnly(true))); + assertTrue(e.getMessage().contains("planOnly")); + + // A rejected dry run must not have started, or planned, anything. + assertTrue(service.planRequests.isEmpty()); + assertTrue(service.createRequests.isEmpty()); + assertTrue(service.getRequests.isEmpty()); + } + + /** Sharding against an old server would silently run one unsharded job, so it fails. */ + @Test + public void testNumShardsFailsAgainstAServerWithoutV2() { + service.actAsLegacyServer(); + + var e = assertThrows(ClientException.class, () -> trigger(params().withNumShards(4))); + assertTrue(e.getMessage().contains("numShards")); + assertTrue(service.planRequests.isEmpty()); + assertTrue(service.createRequests.isEmpty()); + } + + // ---------------------------------------------------------------- error translation + + /** The same validation runs in both modes, so the message must not claim the caller planned. */ + @ParameterizedTest + @CsvSource({ + "true,Failed to plan aggregate backfill.", + "false,Failed to create aggregate backfill. No jobs were created." + }) + public void testInvalidArgumentNamesTheRequestedOperation(boolean planOnly, String expectedMessage) { + service.v2Error = Status.INVALID_ARGUMENT.withDescription("invalid feature"); + + var e = assertThrows(AggregateBackfillException.class, () -> trigger(params().withPlanOnly(planOnly))); + assertTrue(e.getMessage().startsWith(expectedMessage), e.getMessage()); + assertEquals("invalid feature", e.getDetail()); + assertTrue(e.getCause() instanceof StatusRuntimeException); + } + + @Test + public void testInternalErrorIsWrapped() { + service.v2Error = Status.INTERNAL.withDescription("Started 1 of 2 aggregate backfill jobs."); + + var e = assertThrows(AggregateBackfillException.class, () -> trigger(params())); + assertTrue(e.getMessage().startsWith("Failed to create aggregate backfill jobs.")); + // The partial-launch detail has to reach the caller. + assertEquals("Started 1 of 2 aggregate backfill jobs.", e.getDetail()); + } + + @Test + public void testUnrelatedRpcErrorsPropagateWithoutFallingBack() { + service.v2Error = Status.PERMISSION_DENIED.withDescription("nope"); + + var e = assertThrows(StatusRuntimeException.class, () -> trigger(params())); + assertEquals(Status.Code.PERMISSION_DENIED, e.getStatus().getCode()); + assertTrue(service.planRequests.isEmpty()); + } + + // ---------------------------------------------------------------- legacy fallback + + @Test + public void testLegacyFallbackPlansThenCreatesJobs() throws Exception { + service.actAsLegacyServer(); + service.planResponse = planResponse(List.of( + withEstimate( + backfill("resolver_a", "events.ts", "user.spend_by_merchant_1d", "user.spend_by_merchant_7d") + .setLowerBound(Timestamp.newBuilder().setSeconds(seconds(LOWER))) + .setUpperBound(Timestamp.newBuilder().setSeconds(seconds(UPPER))), + 1), + withEstimate(backfill("resolver_b", "sessions.ts", "user.session_count_1d"), 2) + ), List.of()); + service.createResponses.add(CreateAggregateBackfillJobResponse.newBuilder().setJobId("job-1").build()); + service.createResponses.add(CreateAggregateBackfillJobResponse.newBuilder().setJobId("job-2").build()); + + AggregateBackfillResponse response = trigger(params() + .withLowerBound(LOWER) + .withUpperBound(UPPER) + .withResolver("my_resolver") + .withQueryTags(List.of("prod", "priority")) + .withStoreOffline(true) + .withAllowEmptyTiles(true) + .withExact(true) + .withEnableProfiling(true) + .withResourceGroup("batch-rg")); + + var planParams = service.planRequests.get(0).getParams(); + assertEquals(List.of("user.spend_by_merchant_1d"), planParams.getFeaturesList()); + assertEquals("my_resolver", planParams.getResolver()); + assertEquals(List.of("prod", "priority"), planParams.getTagsList()); + assertTrue(planParams.getExact()); + + assertEquals(2, service.createRequests.size()); + + CreateAggregateBackfillJobRequest first = service.createRequests.get(0); + assertEquals(List.of("user.spend_by_merchant_1d", "user.spend_by_merchant_7d"), first.getFeaturesList()); + assertEquals("resolver_a", first.getResolver()); + assertEquals("events.ts", first.getBucketFeature()); + assertTrue(first.getEnableProfiling()); + assertEquals(AGG_BACKFILL_ID, first.getAggregateBackfillId()); + assertEquals("batch-rg", first.getResourceGroup()); + assertEquals(List.of("prod", "priority"), first.getQueryTagsList()); + assertTrue(first.hasStoreOffline()); + assertTrue(first.getStoreOffline()); + assertTrue(first.hasAllowEmptyTiles()); + assertTrue(first.getAllowEmptyTiles()); + assertEquals(seconds(LOWER), first.getLowerBound().getSeconds()); + assertEquals(seconds(UPPER), first.getUpperBound().getSeconds()); + + CreateAggregateBackfillJobRequest second = service.createRequests.get(1); + assertEquals(List.of("user.session_count_1d"), second.getFeaturesList()); + assertEquals("resolver_b", second.getResolver()); + assertEquals("sessions.ts", second.getBucketFeature()); + assertFalse(second.hasLowerBound()); + assertFalse(second.hasUpperBound()); + + // The caller sees the same model regardless of which path served the request. + assertNotNull(response.getJob()); + assertEquals(AGG_BACKFILL_ID, response.getJob().getId()); + assertEquals(2, response.getSubBackfills().size()); + } + + @Test + public void testLegacyFallbackCarriesAllowEmptyTilesCoercion() throws Exception { + service.actAsLegacyServer(); + + trigger(params()); + + CreateAggregateBackfillJobRequest req = service.createRequests.get(0); + assertTrue(req.hasAllowEmptyTiles()); + assertFalse(req.getAllowEmptyTiles()); + } + + @Test + public void testLegacyFallbackReadsTheJobRowBack() throws Exception { + service.actAsLegacyServer(); + service.getResponse = GetAggregateBackfillJobResponse.newBuilder() + .setJob(AggregateBackfillJob.newBuilder() + .setId(AGG_BACKFILL_ID) + .addFeatures("user.spend_by_merchant_1d") + .addResolvers("aggregate_resolver") + .setStatus(ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillStatus.AGGREGATE_BACKFILL_STATUS_WORKING)) + .build(); + + AggregateBackfillResponse response = trigger(params()); + + assertEquals(AGG_BACKFILL_ID, service.getRequests.get(0).getAggregateBackfillId()); + assertEquals(AggregateBackfillStatus.WORKING, response.getJob().getStatus()); + assertEquals(List.of("aggregate_resolver"), response.getJob().getResolvers()); + } + + /** + * The V1 handler concatenates features across the per-job inserts without + * deduplicating, where V2 writes a deduplicated set. Both paths must agree. + */ + @Test + public void testLegacyFallbackDedupesAccumulatedFeatures() throws Exception { + service.actAsLegacyServer(); + service.getResponse = GetAggregateBackfillJobResponse.newBuilder() + .setJob(AggregateBackfillJob.newBuilder() + .setId(AGG_BACKFILL_ID) + .addAllFeatures(List.of("user.spend_1d", "user.spend_7d", "user.spend_1d")) + .addAllResolvers(List.of("resolver_a", "resolver_a"))) + .build(); + + AggregateBackfillResponse response = trigger(AggregateBackfillParams.builder().withFeatures("user.spend_1d")); + + assertEquals(List.of("user.spend_1d", "user.spend_7d"), response.getJob().getFeatures()); + assertEquals(List.of("resolver_a"), response.getJob().getResolvers()); + } + + /** The jobs are already running, so a failed read must not fail the call. */ + @Test + public void testLegacyFallbackSurvivesAFailedReadBack() throws Exception { + service.actAsLegacyServer(); + service.getError = Status.NOT_FOUND.withDescription("gone"); + service.defaultCreateResponse = CreateAggregateBackfillJobResponse.newBuilder() + .setJobId("job-1") + .addFeatures("user.spend_by_merchant_1d") + .build(); + + AggregateBackfillResponse response = trigger(params()); + + assertEquals(AGG_BACKFILL_ID, response.getJob().getId()); + assertEquals(List.of("user.spend_by_merchant_1d"), response.getJob().getFeatures()); + assertEquals(List.of("aggregate_resolver"), response.getJob().getResolvers()); + // The jobs did launch, so the reconstructed row says so rather than leaving the + // status at the proto default, which would decode to UNKNOWN. + assertEquals(AggregateBackfillStatus.QUEUED, response.getJob().getStatus()); + assertEquals(1, response.getSubBackfills().size()); + } + + /** An unset `job` reads back as an empty message, which must not be mistaken for a row. */ + @Test + public void testLegacyFallbackHandlesAReadBackWithNoJob() throws Exception { + service.actAsLegacyServer(); + service.getResponse = GetAggregateBackfillJobResponse.getDefaultInstance(); + service.defaultCreateResponse = CreateAggregateBackfillJobResponse.newBuilder() + .setJobId("job-1") + .addFeatures("user.spend_by_merchant_1d") + .build(); + + AggregateBackfillResponse response = trigger(params()); + + assertEquals(AGG_BACKFILL_ID, response.getJob().getId()); + assertEquals(List.of("user.spend_by_merchant_1d"), response.getJob().getFeatures()); + } + + @Test + public void testLegacyFallbackRaisesForPlanErrors() { + service.actAsLegacyServer(); + service.planResponse = planResponse(defaultBackfills(), List.of("invalid feature")); + + var e = assertThrows(AggregateBackfillException.class, () -> trigger(params())); + assertTrue(e.getMessage().startsWith("Failed to plan aggregate backfill.")); + assertEquals("invalid feature", e.getDetail()); + assertTrue(service.createRequests.isEmpty()); + } + + @Test + public void testLegacyFallbackRaisesForCreateErrors() { + service.actAsLegacyServer(); + service.defaultCreateResponse = CreateAggregateBackfillJobResponse.newBuilder() + .addErrors(ChalkError.newBuilder().setMessage("job failed")) + .build(); + + var e = assertThrows(AggregateBackfillException.class, () -> trigger(params())); + assertTrue(e.getMessage().startsWith("Failed to create aggregate backfill job.")); + assertEquals(1, e.getErrors().size()); + assertEquals("job failed", e.getErrors().get(0).getMessage()); + } +} diff --git a/src/test/java/ai/chalk/client/TestAggregateBackfillClient.java b/src/test/java/ai/chalk/client/TestAggregateBackfillClient.java new file mode 100644 index 00000000..ff84cd7f --- /dev/null +++ b/src/test/java/ai/chalk/client/TestAggregateBackfillClient.java @@ -0,0 +1,173 @@ +package ai.chalk.client; + +import ai.chalk.exceptions.ClientException; +import ai.chalk.models.AggregateBackfillParams; +import ai.chalk.models.AggregateBackfillResponse; +import ai.chalk.protos.chalk.aggregate.v1.AggregateBackfillJob; +import ai.chalk.protos.chalk.aggregate.v1.AggregateServiceGrpc; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Request; +import ai.chalk.protos.chalk.aggregate.v1.CreateAggregateBackfillV2Response; +import ai.chalk.protos.chalk.server.v1.AuthServiceGrpc; +import ai.chalk.protos.chalk.server.v1.GetTokenRequest; +import ai.chalk.protos.chalk.server.v1.GetTokenResponse; +import com.google.protobuf.Timestamp; +import com.sun.net.httpserver.HttpExchange; +import com.sun.net.httpserver.HttpServer; +import io.grpc.Metadata; +import io.grpc.Server; +import io.grpc.ServerCall; +import io.grpc.ServerCallHandler; +import io.grpc.ServerInterceptor; +import io.grpc.ServerInterceptors; +import io.grpc.netty.shaded.io.grpc.netty.NettyServerBuilder; +import io.grpc.stub.StreamObserver; +import org.junit.jupiter.api.Test; + +import java.io.IOException; +import java.net.InetSocketAddress; +import java.nio.charset.StandardCharsets; +import java.time.Instant; +import java.util.List; +import java.util.concurrent.atomic.AtomicReference; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + +/** + * Exercises {@link ChalkClient#triggerAggregateBackfill} through the public client, to check + * that the request reaches the API server's AggregateService with credentials attached. + */ +public class TestAggregateBackfillClient { + private static final String ENVIRONMENT_ID = "test-environment"; + private static final Metadata.Key AUTHORIZATION = key("authorization"); + private static final Metadata.Key ENVIRONMENT = key("x-chalk-env-id"); + private static final Metadata.Key SERVER = key("x-chalk-server"); + + private static Metadata.Key key(String name) { + return Metadata.Key.of(name, Metadata.ASCII_STRING_MARSHALLER); + } + + @Test + public void testGrpcClientCallsTheApiServerWithCredentials() throws Exception { + AtomicReference headers = new AtomicReference<>(); + AtomicReference received = new AtomicReference<>(); + Server server = NettyServerBuilder.forPort(0) + .addService(new AuthServiceGrpc.AuthServiceImplBase() { + @Override + public void getToken(GetTokenRequest request, StreamObserver observer) { + observer.onNext(GetTokenResponse.newBuilder() + .setAccessToken("test-token") + .setExpiresAt(Timestamp.newBuilder() + .setSeconds(Instant.now().plusSeconds(3600).getEpochSecond())) + .setPrimaryEnvironment(ENVIRONMENT_ID) + .putEnvironmentIdToName(ENVIRONMENT_ID, "test") + .build()); + observer.onCompleted(); + } + }) + .addService(ServerInterceptors.intercept( + new AggregateServiceGrpc.AggregateServiceImplBase() { + @Override + public void createAggregateBackfillV2( + CreateAggregateBackfillV2Request request, + StreamObserver observer + ) { + received.set(request); + observer.onNext(CreateAggregateBackfillV2Response.newBuilder() + .setJob(AggregateBackfillJob.newBuilder().setId("agg-backfill-123")) + .build()); + observer.onCompleted(); + } + }, + new ServerInterceptor() { + @Override + public ServerCall.Listener interceptCall( + ServerCall call, + Metadata requestHeaders, + ServerCallHandler next + ) { + headers.set(requestHeaders); + return next.startCall(call, requestHeaders); + } + } + )) + .build() + .start(); + + String grpcHost = "localhost:" + server.getPort(); + try (ChalkClient client = ChalkClient.builder() + .withApiServer("http://" + grpcHost) + .withQueryServer(grpcHost) + .withClientId("test-client") + .withClientSecret("test-secret") + .withEnvironmentId(ENVIRONMENT_ID) + .withGrpc() + .build()) { + AggregateBackfillResponse response = client.triggerAggregateBackfill( + AggregateBackfillParams.builder().withFeatures("user.spend_30d").build() + ); + + assertEquals("agg-backfill-123", response.getJob().getId()); + assertEquals(List.of("user.spend_30d"), received.get().getFeaturesList()); + assertEquals("Bearer test-token", headers.get().get(AUTHORIZATION)); + assertEquals(ENVIRONMENT_ID, headers.get().get(ENVIRONMENT)); + assertEquals("go-api", headers.get().get(SERVER)); + + // A per-request environment overrides the client's. + client.triggerAggregateBackfill( + AggregateBackfillParams.builder() + .withFeatures("user.spend_30d") + .withEnvironmentId("other-environment") + .build() + ); + assertEquals("other-environment", headers.get().get(ENVIRONMENT)); + } finally { + server.shutdownNow(); + } + } + + @Test + public void testHttpClientDirectsCallersToTheGrpcClient() throws Exception { + HttpServer server = HttpServer.create(new InetSocketAddress("localhost", 0), 0); + server.createContext("/v1/oauth/token", exchange -> respondJson( + exchange, + """ + { + "access_token": "test-token", + "expires_in": 3600, + "primary_environment": "%s", + "engines": {} + } + """.formatted(ENVIRONMENT_ID) + )); + server.start(); + + String serverUrl = "http://localhost:" + server.getAddress().getPort(); + try (ChalkClient client = ChalkClient.builder() + .withApiServer(serverUrl) + .withQueryServer(serverUrl) + .withClientId("test-client") + .withClientSecret("test-secret") + .withEnvironmentId(ENVIRONMENT_ID) + .build()) { + var e = assertThrows( + ClientException.class, + () -> client.triggerAggregateBackfill( + AggregateBackfillParams.builder().withFeatures("user.spend_30d").build() + ) + ); + assertTrue(e.getMessage().contains("only supported by the gRPC client")); + } finally { + server.stop(0); + } + } + + private static void respondJson(HttpExchange exchange, String body) throws IOException { + byte[] response = body.getBytes(StandardCharsets.UTF_8); + exchange.getResponseHeaders().set("Content-Type", "application/json"); + exchange.sendResponseHeaders(200, response.length); + exchange.getResponseBody().write(response); + exchange.close(); + } +}