diff --git a/java-aiplatform/README.md b/java-aiplatform/README.md index c739eb6feb56..ab07b6dbf777 100644 --- a/java-aiplatform/README.md +++ b/java-aiplatform/README.md @@ -20,7 +20,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.32.0 + 26.33.0 pom import @@ -195,7 +195,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-aiplatform.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-aiplatform/3.36.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-aiplatform/3.37.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/java-aiplatform/google-cloud-aiplatform/src/main/resources/META-INF/native-image/com.google.cloud.aiplatform.v1/reflect-config.json b/java-aiplatform/google-cloud-aiplatform/src/main/resources/META-INF/native-image/com.google.cloud.aiplatform.v1/reflect-config.json index 43fec91e34dc..fb4c935773c4 100644 --- a/java-aiplatform/google-cloud-aiplatform/src/main/resources/META-INF/native-image/com.google.cloud.aiplatform.v1/reflect-config.json +++ b/java-aiplatform/google-cloud-aiplatform/src/main/resources/META-INF/native-image/com.google.cloud.aiplatform.v1/reflect-config.json @@ -5318,6 +5318,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.aiplatform.v1.FeatureViewDataKey$CompositeKey", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.aiplatform.v1.FeatureViewDataKey$CompositeKey$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.aiplatform.v1.FeatureViewSync", "queryAllDeclaredConstructors": true, diff --git a/java-aiplatform/google-cloud-aiplatform/src/main/resources/META-INF/native-image/com.google.cloud.aiplatform.v1beta1/reflect-config.json b/java-aiplatform/google-cloud-aiplatform/src/main/resources/META-INF/native-image/com.google.cloud.aiplatform.v1beta1/reflect-config.json index bcf45187e795..fdccfdd6af01 100644 --- a/java-aiplatform/google-cloud-aiplatform/src/main/resources/META-INF/native-image/com.google.cloud.aiplatform.v1beta1/reflect-config.json +++ b/java-aiplatform/google-cloud-aiplatform/src/main/resources/META-INF/native-image/com.google.cloud.aiplatform.v1beta1/reflect-config.json @@ -5462,6 +5462,15 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.aiplatform.v1beta1.FeatureView$ServiceAgentType", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.aiplatform.v1beta1.FeatureView$SyncConfig", "queryAllDeclaredConstructors": true, @@ -5570,6 +5579,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey$CompositeKey", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey$CompositeKey$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.aiplatform.v1beta1.FeatureViewSync", "queryAllDeclaredConstructors": true, @@ -11708,6 +11735,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.cloud.aiplatform.v1beta1.RayMetricSpec", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.cloud.aiplatform.v1beta1.RayMetricSpec$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.cloud.aiplatform.v1beta1.RaySpec", "queryAllDeclaredConstructors": true, diff --git a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1/FeatureRegistryServiceClientTest.java b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1/FeatureRegistryServiceClientTest.java index b0914f46cf7c..f6fb038870f3 100644 --- a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1/FeatureRegistryServiceClientTest.java +++ b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1/FeatureRegistryServiceClientTest.java @@ -558,6 +558,7 @@ public void createFeatureTest() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -623,6 +624,7 @@ public void createFeatureTest2() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -686,6 +688,7 @@ public void createFeatureTest3() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -749,6 +752,7 @@ public void getFeatureTest() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeatureRegistryService.addResponse(expectedResponse); @@ -802,6 +806,7 @@ public void getFeatureTest2() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeatureRegistryService.addResponse(expectedResponse); @@ -985,6 +990,7 @@ public void updateFeatureTest() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() diff --git a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1/FeaturestoreServiceClientTest.java b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1/FeaturestoreServiceClientTest.java index 252140b1db10..d89247cb67cd 100644 --- a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1/FeaturestoreServiceClientTest.java +++ b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1/FeaturestoreServiceClientTest.java @@ -1417,6 +1417,7 @@ public void createFeatureTest() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1479,6 +1480,7 @@ public void createFeatureTest2() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1539,6 +1541,7 @@ public void createFeatureTest3() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1599,6 +1602,7 @@ public void createFeatureTest4() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1664,6 +1668,7 @@ public void createFeatureTest5() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1727,6 +1732,7 @@ public void createFeatureTest6() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1888,6 +1894,7 @@ public void getFeatureTest() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeaturestoreService.addResponse(expectedResponse); @@ -1941,6 +1948,7 @@ public void getFeatureTest2() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeaturestoreService.addResponse(expectedResponse); @@ -2124,6 +2132,7 @@ public void updateFeatureTest() throws Exception { .setDisableMonitoring(true) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeaturestoreService.addResponse(expectedResponse); diff --git a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeatureOnlineStoreAdminServiceClientTest.java b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeatureOnlineStoreAdminServiceClientTest.java index 7d9b3002c7f7..6b1cd628df30 100644 --- a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeatureOnlineStoreAdminServiceClientTest.java +++ b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeatureOnlineStoreAdminServiceClientTest.java @@ -597,6 +597,7 @@ public void createFeatureViewTest() throws Exception { .putAllLabels(new HashMap()) .setSyncConfig(FeatureView.SyncConfig.newBuilder().build()) .setVectorSearchConfig(FeatureView.VectorSearchConfig.newBuilder().build()) + .setServiceAccountEmail("serviceAccountEmail1825953988") .build(); Operation resultOperation = Operation.newBuilder() @@ -661,6 +662,7 @@ public void createFeatureViewTest2() throws Exception { .putAllLabels(new HashMap()) .setSyncConfig(FeatureView.SyncConfig.newBuilder().build()) .setVectorSearchConfig(FeatureView.VectorSearchConfig.newBuilder().build()) + .setServiceAccountEmail("serviceAccountEmail1825953988") .build(); Operation resultOperation = Operation.newBuilder() @@ -723,6 +725,7 @@ public void getFeatureViewTest() throws Exception { .putAllLabels(new HashMap()) .setSyncConfig(FeatureView.SyncConfig.newBuilder().build()) .setVectorSearchConfig(FeatureView.VectorSearchConfig.newBuilder().build()) + .setServiceAccountEmail("serviceAccountEmail1825953988") .build(); mockFeatureOnlineStoreAdminService.addResponse(expectedResponse); @@ -772,6 +775,7 @@ public void getFeatureViewTest2() throws Exception { .putAllLabels(new HashMap()) .setSyncConfig(FeatureView.SyncConfig.newBuilder().build()) .setVectorSearchConfig(FeatureView.VectorSearchConfig.newBuilder().build()) + .setServiceAccountEmail("serviceAccountEmail1825953988") .build(); mockFeatureOnlineStoreAdminService.addResponse(expectedResponse); @@ -909,6 +913,7 @@ public void updateFeatureViewTest() throws Exception { .putAllLabels(new HashMap()) .setSyncConfig(FeatureView.SyncConfig.newBuilder().build()) .setVectorSearchConfig(FeatureView.VectorSearchConfig.newBuilder().build()) + .setServiceAccountEmail("serviceAccountEmail1825953988") .build(); Operation resultOperation = Operation.newBuilder() diff --git a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeatureRegistryServiceClientTest.java b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeatureRegistryServiceClientTest.java index 8a3c39315111..272df96fda80 100644 --- a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeatureRegistryServiceClientTest.java +++ b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeatureRegistryServiceClientTest.java @@ -560,6 +560,7 @@ public void createFeatureTest() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -627,6 +628,7 @@ public void createFeatureTest2() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -692,6 +694,7 @@ public void createFeatureTest3() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -757,6 +760,7 @@ public void getFeatureTest() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeatureRegistryService.addResponse(expectedResponse); @@ -812,6 +816,7 @@ public void getFeatureTest2() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeatureRegistryService.addResponse(expectedResponse); @@ -997,6 +1002,7 @@ public void updateFeatureTest() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() diff --git a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeaturestoreServiceClientTest.java b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeaturestoreServiceClientTest.java index 6e78da7de0fb..974f5ee0fc3f 100644 --- a/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeaturestoreServiceClientTest.java +++ b/java-aiplatform/google-cloud-aiplatform/src/test/java/com/google/cloud/aiplatform/v1beta1/FeaturestoreServiceClientTest.java @@ -1419,6 +1419,7 @@ public void createFeatureTest() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1483,6 +1484,7 @@ public void createFeatureTest2() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1545,6 +1547,7 @@ public void createFeatureTest3() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1607,6 +1610,7 @@ public void createFeatureTest4() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1674,6 +1678,7 @@ public void createFeatureTest5() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1739,6 +1744,7 @@ public void createFeatureTest6() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); Operation resultOperation = Operation.newBuilder() @@ -1902,6 +1908,7 @@ public void getFeatureTest() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeaturestoreService.addResponse(expectedResponse); @@ -1957,6 +1964,7 @@ public void getFeatureTest2() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeaturestoreService.addResponse(expectedResponse); @@ -2142,6 +2150,7 @@ public void updateFeatureTest() throws Exception { .addAllMonitoringStats(new ArrayList()) .addAllMonitoringStatsAnomalies(new ArrayList()) .setVersionColumnName("versionColumnName-997658119") + .setPointOfContact("pointOfContact-804861287") .build(); mockFeaturestoreService.addResponse(expectedResponse); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/Feature.java b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/Feature.java index d6498707bf06..4946a7c30b2a 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/Feature.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/Feature.java @@ -46,6 +46,7 @@ private Feature() { etag_ = ""; monitoringStatsAnomalies_ = java.util.Collections.emptyList(); versionColumnName_ = ""; + pointOfContact_ = ""; } @java.lang.Override @@ -2201,6 +2202,59 @@ public com.google.protobuf.ByteString getVersionColumnNameBytes() { } } + public static final int POINT_OF_CONTACT_FIELD_NUMBER = 107; + + @SuppressWarnings("serial") + private volatile java.lang.Object pointOfContact_ = ""; + /** + * + * + *
+   * Entity responsible for maintaining this feature. Can be comma separated
+   * list of email addresses or URIs.
+   * 
+ * + * string point_of_contact = 107; + * + * @return The pointOfContact. + */ + @java.lang.Override + public java.lang.String getPointOfContact() { + java.lang.Object ref = pointOfContact_; + 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(); + pointOfContact_ = s; + return s; + } + } + /** + * + * + *
+   * Entity responsible for maintaining this feature. Can be comma separated
+   * list of email addresses or URIs.
+   * 
+ * + * string point_of_contact = 107; + * + * @return The bytes for pointOfContact. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPointOfContactBytes() { + java.lang.Object ref = pointOfContact_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + pointOfContact_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -2245,6 +2299,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(versionColumnName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 106, versionColumnName_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pointOfContact_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 107, pointOfContact_); + } getUnknownFields().writeTo(output); } @@ -2294,6 +2351,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(versionColumnName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(106, versionColumnName_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pointOfContact_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(107, pointOfContact_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -2326,6 +2386,7 @@ public boolean equals(final java.lang.Object obj) { if (!getMonitoringStatsAnomaliesList().equals(other.getMonitoringStatsAnomaliesList())) return false; if (!getVersionColumnName().equals(other.getVersionColumnName())) return false; + if (!getPointOfContact().equals(other.getPointOfContact())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -2365,6 +2426,8 @@ public int hashCode() { } hash = (37 * hash) + VERSION_COLUMN_NAME_FIELD_NUMBER; hash = (53 * hash) + getVersionColumnName().hashCode(); + hash = (37 * hash) + POINT_OF_CONTACT_FIELD_NUMBER; + hash = (53 * hash) + getPointOfContact().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -2562,6 +2625,7 @@ public Builder clear() { } bitField0_ = (bitField0_ & ~0x00000100); versionColumnName_ = ""; + pointOfContact_ = ""; return this; } @@ -2643,6 +2707,9 @@ private void buildPartial0(com.google.cloud.aiplatform.v1.Feature result) { if (((from_bitField0_ & 0x00000200) != 0)) { result.versionColumnName_ = versionColumnName_; } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.pointOfContact_ = pointOfContact_; + } result.bitField0_ |= to_bitField0_; } @@ -2752,6 +2819,11 @@ public Builder mergeFrom(com.google.cloud.aiplatform.v1.Feature other) { bitField0_ |= 0x00000200; onChanged(); } + if (!other.getPointOfContact().isEmpty()) { + pointOfContact_ = other.pointOfContact_; + bitField0_ |= 0x00000400; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -2852,6 +2924,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000200; break; } // case 850 + case 858: + { + pointOfContact_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000400; + break; + } // case 858 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -4616,6 +4694,117 @@ public Builder setVersionColumnNameBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object pointOfContact_ = ""; + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @return The pointOfContact. + */ + public java.lang.String getPointOfContact() { + java.lang.Object ref = pointOfContact_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + pointOfContact_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @return The bytes for pointOfContact. + */ + public com.google.protobuf.ByteString getPointOfContactBytes() { + java.lang.Object ref = pointOfContact_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + pointOfContact_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @param value The pointOfContact to set. + * @return This builder for chaining. + */ + public Builder setPointOfContact(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + pointOfContact_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @return This builder for chaining. + */ + public Builder clearPointOfContact() { + pointOfContact_ = getDefaultInstance().getPointOfContact(); + bitField0_ = (bitField0_ & ~0x00000400); + onChanged(); + return this; + } + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @param value The bytes for pointOfContact to set. + * @return This builder for chaining. + */ + public Builder setPointOfContactBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + pointOfContact_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureOnlineStoreServiceProto.java b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureOnlineStoreServiceProto.java index ee27cfbe1cb1..f5160f0e3ed4 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureOnlineStoreServiceProto.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureOnlineStoreServiceProto.java @@ -32,6 +32,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_aiplatform_v1_FetchFeatureValuesRequest_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable @@ -96,79 +100,82 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "ield_behavior.proto\032\031google/api/resource" + ".proto\032cloud.google.com/go/aip" - + "latform/apiv1/aiplatformpb;aiplatformpb\252" - + "\002\032Google.Cloud.AIPlatform.V1\312\002\032Google\\Cl" - + "oud\\AIPlatform\\V1\352\002\035Google::Cloud::AIPla" - + "tform::V1b\006proto3" + + "tobuf/struct.proto\"\245\001\n\022FeatureViewDataKe" + + "y\022\r\n\003key\030\001 \001(\tH\000\022T\n\rcomposite_key\030\002 \001(\0132" + + ";.google.cloud.aiplatform.v1.FeatureView" + + "DataKey.CompositeKeyH\000\032\035\n\014CompositeKey\022\r" + + "\n\005parts\030\001 \003(\tB\013\n\tkey_oneof\"\364\001\n\031FetchFeat" + + "ureValuesRequest\022C\n\014feature_view\030\001 \001(\tB-" + + "\340A\002\372A\'\n%aiplatform.googleapis.com/Featur" + + "eView\022E\n\010data_key\030\006 \001(\0132..google.cloud.a" + + "iplatform.v1.FeatureViewDataKeyB\003\340A\001\022K\n\013" + + "data_format\030\007 \001(\01621.google.cloud.aiplatf" + + "orm.v1.FeatureViewDataFormatB\003\340A\001\"\274\003\n\032Fe" + + "tchFeatureValuesResponse\022e\n\nkey_values\030\003" + + " \001(\0132O.google.cloud.aiplatform.v1.FetchF" + + "eatureValuesResponse.FeatureNameValuePai" + + "rListH\000\022/\n\014proto_struct\030\002 \001(\0132\027.google.p" + + "rotobuf.StructH\000\032\373\001\n\030FeatureNameValuePai" + + "rList\022v\n\010features\030\001 \003(\0132d.google.cloud.a" + + "iplatform.v1.FetchFeatureValuesResponse." + + "FeatureNameValuePairList.FeatureNameValu" + + "ePair\032g\n\024FeatureNameValuePair\0229\n\005value\030\002" + + " \001(\0132(.google.cloud.aiplatform.v1.Featur" + + "eValueH\000\022\014\n\004name\030\001 \001(\tB\006\n\004dataB\010\n\006format" + + "\"\363\004\n\024NearestNeighborQuery\022\030\n\tentity_id\030\001" + + " \001(\tB\003\340A\001H\000\022T\n\tembedding\030\002 \001(\0132:.google." + + "cloud.aiplatform.v1.NearestNeighborQuery" + + ".EmbeddingB\003\340A\001H\000\022\033\n\016neighbor_count\030\003 \001(" + + "\005B\003\340A\001\022Z\n\016string_filters\030\004 \003(\0132=.google." + + "cloud.aiplatform.v1.NearestNeighborQuery" + + ".StringFilterB\003\340A\001\0222\n%per_crowding_attri" + + "bute_neighbor_count\030\005 \001(\005B\003\340A\001\022T\n\nparame" + + "ters\030\007 \001(\0132;.google.cloud.aiplatform.v1." + + "NearestNeighborQuery.ParametersB\003\340A\001\032\037\n\t" + + "Embedding\022\022\n\005value\030\001 \003(\002B\003\340A\001\032V\n\014StringF" + + "ilter\022\021\n\004name\030\001 \001(\tB\003\340A\002\022\031\n\014allow_tokens" + + "\030\002 \003(\tB\003\340A\001\022\030\n\013deny_tokens\030\003 \003(\tB\003\340A\001\032c\n" + + "\nParameters\022,\n\037approximate_neighbor_cand" + + "idates\030\001 \001(\005B\003\340A\001\022\'\n\032leaf_nodes_search_f" + + "raction\030\002 \001(\001B\003\340A\001B\n\n\010instance\"\312\001\n\034Searc" + + "hNearestEntitiesRequest\022C\n\014feature_view\030" + + "\001 \001(\tB-\340A\002\372A\'\n%aiplatform.googleapis.com" + + "/FeatureView\022D\n\005query\030\002 \001(\01320.google.clo" + + "ud.aiplatform.v1.NearestNeighborQueryB\003\340" + + "A\002\022\037\n\022return_full_entity\030\003 \001(\010B\003\340A\001\"\341\001\n\020" + + "NearestNeighbors\022H\n\tneighbors\030\001 \003(\01325.go" + + "ogle.cloud.aiplatform.v1.NearestNeighbor" + + "s.Neighbor\032\202\001\n\010Neighbor\022\021\n\tentity_id\030\001 \001" + + "(\t\022\020\n\010distance\030\002 \001(\001\022Q\n\021entity_key_value" + + "s\030\003 \001(\01326.google.cloud.aiplatform.v1.Fet" + + "chFeatureValuesResponse\"h\n\035SearchNearest" + + "EntitiesResponse\022G\n\021nearest_neighbors\030\001 " + + "\001(\0132,.google.cloud.aiplatform.v1.Nearest" + + "Neighbors*b\n\025FeatureViewDataFormat\022(\n$FE" + + "ATURE_VIEW_DATA_FORMAT_UNSPECIFIED\020\000\022\r\n\t" + + "KEY_VALUE\020\001\022\020\n\014PROTO_STRUCT\020\0022\370\004\n\031Featur" + + "eOnlineStoreService\022\213\002\n\022FetchFeatureValu" + + "es\0225.google.cloud.aiplatform.v1.FetchFea" + + "tureValuesRequest\0326.google.cloud.aiplatf" + + "orm.v1.FetchFeatureValuesResponse\"\205\001\332A\026f" + + "eature_view, data_key\202\323\344\223\002f\"a/v1/{featur" + + "e_view=projects/*/locations/*/featureOnl" + + "ineStores/*/featureViews/*}:fetchFeature" + + "Values:\001*\022\375\001\n\025SearchNearestEntities\0228.go" + + "ogle.cloud.aiplatform.v1.SearchNearestEn" + + "titiesRequest\0329.google.cloud.aiplatform." + + "v1.SearchNearestEntitiesResponse\"o\202\323\344\223\002i" + + "\"d/v1/{feature_view=projects/*/locations" + + "/*/featureOnlineStores/*/featureViews/*}" + + ":searchNearestEntities:\001*\032M\312A\031aiplatform" + + ".googleapis.com\322A.https://www.googleapis" + + ".com/auth/cloud-platformB\334\001\n\036com.google." + + "cloud.aiplatform.v1B\036FeatureOnlineStoreS" + + "erviceProtoP\001Z>cloud.google.com/go/aipla" + + "tform/apiv1/aiplatformpb;aiplatformpb\252\002\032" + + "Google.Cloud.AIPlatform.V1\312\002\032Google\\Clou" + + "d\\AIPlatform\\V1\352\002\035Google::Cloud::AIPlatf" + + "orm::V1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -187,7 +194,17 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_descriptor, new java.lang.String[] { - "Key", "KeyOneof", + "Key", "CompositeKey", "KeyOneof", + }); + internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_descriptor = + internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_descriptor + .getNestedTypes() + .get(0); + internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_descriptor, + new java.lang.String[] { + "Parts", }); internal_static_google_cloud_aiplatform_v1_FetchFeatureValuesRequest_descriptor = getDescriptor().getMessageTypes().get(1); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureOrBuilder.java b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureOrBuilder.java index 5ba159344ece..3fee9f4997c1 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureOrBuilder.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureOrBuilder.java @@ -457,4 +457,31 @@ com.google.cloud.aiplatform.v1.Feature.MonitoringStatsAnomaly getMonitoringStats * @return The bytes for versionColumnName. */ com.google.protobuf.ByteString getVersionColumnNameBytes(); + + /** + * + * + *
+   * Entity responsible for maintaining this feature. Can be comma separated
+   * list of email addresses or URIs.
+   * 
+ * + * string point_of_contact = 107; + * + * @return The pointOfContact. + */ + java.lang.String getPointOfContact(); + /** + * + * + *
+   * Entity responsible for maintaining this feature. Can be comma separated
+   * list of email addresses or URIs.
+   * 
+ * + * string point_of_contact = 107; + * + * @return The bytes for pointOfContact. + */ + com.google.protobuf.ByteString getPointOfContactBytes(); } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureProto.java b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureProto.java index 7676fa72c50a..195925cfcc3d 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureProto.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureProto.java @@ -54,7 +54,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "pi/field_behavior.proto\032\031google/api/reso" + "urce.proto\0329google/cloud/aiplatform/v1/f" + "eature_monitoring_stats.proto\032\037google/pr" - + "otobuf/timestamp.proto\"\346\t\n\007Feature\022\021\n\004na" + + "otobuf/timestamp.proto\"\200\n\n\007Feature\022\021\n\004na" + "me\030\001 \001(\tB\003\340A\005\022\023\n\013description\030\002 \001(\t\022F\n\nva" + "lue_type\030\003 \001(\0162-.google.cloud.aiplatform" + ".v1.Feature.ValueTypeB\003\340A\005\0224\n\013create_tim" @@ -66,32 +66,32 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\030\014 \001(\010B\003\340A\001\022c\n\032monitoring_stats_anomalie" + "s\030\013 \003(\0132:.google.cloud.aiplatform.v1.Fea" + "ture.MonitoringStatsAnomalyB\003\340A\003\022\033\n\023vers" - + "ion_column_name\030j \001(\t\032\247\002\n\026MonitoringStat" - + "sAnomaly\022\\\n\tobjective\030\001 \001(\0162D.google.clo" - + "ud.aiplatform.v1.Feature.MonitoringStats" - + "Anomaly.ObjectiveB\003\340A\003\022S\n\025feature_stats_" - + "anomaly\030\002 \001(\0132/.google.cloud.aiplatform." - + "v1.FeatureStatsAnomalyB\003\340A\003\"Z\n\tObjective" - + "\022\031\n\025OBJECTIVE_UNSPECIFIED\020\000\022\033\n\027IMPORT_FE" - + "ATURE_ANALYSIS\020\001\022\025\n\021SNAPSHOT_ANALYSIS\020\002\032" - + "-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001" - + "(\t:\0028\001\"\244\001\n\tValueType\022\032\n\026VALUE_TYPE_UNSPE" - + "CIFIED\020\000\022\010\n\004BOOL\020\001\022\016\n\nBOOL_ARRAY\020\002\022\n\n\006DO" - + "UBLE\020\003\022\020\n\014DOUBLE_ARRAY\020\004\022\t\n\005INT64\020\t\022\017\n\013I" - + "NT64_ARRAY\020\n\022\n\n\006STRING\020\013\022\020\n\014STRING_ARRAY" - + "\020\014\022\t\n\005BYTES\020\r:\207\002\352A\203\002\n!aiplatform.googlea" - + "pis.com/Feature\022qprojects/{project}/loca" - + "tions/{location}/featurestores/{features" - + "tore}/entityTypes/{entity_type}/features" - + "/{feature}\022Xprojects/{project}/locations" - + "/{location}/featureGroups/{feature_group" - + "}/features/{feature}*\010features2\007featureB" - + "\312\001\n\036com.google.cloud.aiplatform.v1B\014Feat" - + "ureProtoP\001Z>cloud.google.com/go/aiplatfo" - + "rm/apiv1/aiplatformpb;aiplatformpb\252\002\032Goo" - + "gle.Cloud.AIPlatform.V1\312\002\032Google\\Cloud\\A" - + "IPlatform\\V1\352\002\035Google::Cloud::AIPlatform" - + "::V1b\006proto3" + + "ion_column_name\030j \001(\t\022\030\n\020point_of_contac" + + "t\030k \001(\t\032\247\002\n\026MonitoringStatsAnomaly\022\\\n\tob" + + "jective\030\001 \001(\0162D.google.cloud.aiplatform." + + "v1.Feature.MonitoringStatsAnomaly.Object" + + "iveB\003\340A\003\022S\n\025feature_stats_anomaly\030\002 \001(\0132" + + "/.google.cloud.aiplatform.v1.FeatureStat" + + "sAnomalyB\003\340A\003\"Z\n\tObjective\022\031\n\025OBJECTIVE_" + + "UNSPECIFIED\020\000\022\033\n\027IMPORT_FEATURE_ANALYSIS" + + "\020\001\022\025\n\021SNAPSHOT_ANALYSIS\020\002\032-\n\013LabelsEntry" + + "\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\244\001\n\tVal" + + "ueType\022\032\n\026VALUE_TYPE_UNSPECIFIED\020\000\022\010\n\004BO" + + "OL\020\001\022\016\n\nBOOL_ARRAY\020\002\022\n\n\006DOUBLE\020\003\022\020\n\014DOUB" + + "LE_ARRAY\020\004\022\t\n\005INT64\020\t\022\017\n\013INT64_ARRAY\020\n\022\n" + + "\n\006STRING\020\013\022\020\n\014STRING_ARRAY\020\014\022\t\n\005BYTES\020\r:" + + "\207\002\352A\203\002\n!aiplatform.googleapis.com/Featur" + + "e\022qprojects/{project}/locations/{locatio" + + "n}/featurestores/{featurestore}/entityTy" + + "pes/{entity_type}/features/{feature}\022Xpr" + + "ojects/{project}/locations/{location}/fe" + + "atureGroups/{feature_group}/features/{fe" + + "ature}*\010features2\007featureB\312\001\n\036com.google" + + ".cloud.aiplatform.v1B\014FeatureProtoP\001Z>cl" + + "oud.google.com/go/aiplatform/apiv1/aipla" + + "tformpb;aiplatformpb\252\002\032Google.Cloud.AIPl" + + "atform.V1\312\002\032Google\\Cloud\\AIPlatform\\V1\352\002" + + "\035Google::Cloud::AIPlatform::V1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -118,6 +118,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "DisableMonitoring", "MonitoringStatsAnomalies", "VersionColumnName", + "PointOfContact", }); internal_static_google_cloud_aiplatform_v1_Feature_MonitoringStatsAnomaly_descriptor = internal_static_google_cloud_aiplatform_v1_Feature_descriptor.getNestedTypes().get(0); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureViewDataKey.java b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureViewDataKey.java index a4fe1614d242..8d770fc61970 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureViewDataKey.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureViewDataKey.java @@ -61,6 +61,793 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { com.google.cloud.aiplatform.v1.FeatureViewDataKey.Builder.class); } + public interface CompositeKeyOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @return A list containing the parts. + */ + java.util.List getPartsList(); + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @return The count of parts. + */ + int getPartsCount(); + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @param index The index of the element to return. + * @return The parts at the given index. + */ + java.lang.String getParts(int index); + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @param index The index of the value to return. + * @return The bytes of the parts at the given index. + */ + com.google.protobuf.ByteString getPartsBytes(int index); + } + /** + * + * + *
+   * ID that is comprised from several parts (columns).
+   * 
+ * + * Protobuf type {@code google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey} + */ + public static final class CompositeKey extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) + CompositeKeyOrBuilder { + private static final long serialVersionUID = 0L; + // Use CompositeKey.newBuilder() to construct. + private CompositeKey(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private CompositeKey() { + parts_ = com.google.protobuf.LazyStringArrayList.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new CompositeKey(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.aiplatform.v1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.aiplatform.v1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.class, + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.Builder.class); + } + + public static final int PARTS_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList parts_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @return A list containing the parts. + */ + public com.google.protobuf.ProtocolStringList getPartsList() { + return parts_; + } + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @return The count of parts. + */ + public int getPartsCount() { + return parts_.size(); + } + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @param index The index of the element to return. + * @return The parts at the given index. + */ + public java.lang.String getParts(int index) { + return parts_.get(index); + } + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @param index The index of the value to return. + * @return The bytes of the parts at the given index. + */ + public com.google.protobuf.ByteString getPartsBytes(int index) { + return parts_.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 { + for (int i = 0; i < parts_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parts_.getRaw(i)); + } + 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 < parts_.size(); i++) { + dataSize += computeStringSizeNoTag(parts_.getRaw(i)); + } + size += dataSize; + size += 1 * getPartsList().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 com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey)) { + return super.equals(obj); + } + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey other = + (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) obj; + + if (!getPartsList().equals(other.getPartsList())) 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 (getPartsCount() > 0) { + hash = (37 * hash) + PARTS_FIELD_NUMBER; + hash = (53 * hash) + getPartsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey 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 com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey 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 com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey 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( + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey 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; + } + /** + * + * + *
+     * ID that is comprised from several parts (columns).
+     * 
+ * + * Protobuf type {@code google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKeyOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.aiplatform.v1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.aiplatform.v1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.class, + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.Builder.class); + } + + // Construct using com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + parts_ = com.google.protobuf.LazyStringArrayList.emptyList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.aiplatform.v1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1_FeatureViewDataKey_CompositeKey_descriptor; + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey + getDefaultInstanceForType() { + return com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey build() { + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey buildPartial() { + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey result = + new com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + parts_.makeImmutable(); + result.parts_ = parts_; + } + } + + @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 com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) { + return mergeFrom((com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey other) { + if (other + == com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.getDefaultInstance()) + return this; + if (!other.parts_.isEmpty()) { + if (parts_.isEmpty()) { + parts_ = other.parts_; + bitField0_ |= 0x00000001; + } else { + ensurePartsIsMutable(); + parts_.addAll(other.parts_); + } + 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: + { + java.lang.String s = input.readStringRequireUtf8(); + ensurePartsIsMutable(); + parts_.add(s); + 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 com.google.protobuf.LazyStringArrayList parts_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensurePartsIsMutable() { + if (!parts_.isModifiable()) { + parts_ = new com.google.protobuf.LazyStringArrayList(parts_); + } + bitField0_ |= 0x00000001; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @return A list containing the parts. + */ + public com.google.protobuf.ProtocolStringList getPartsList() { + parts_.makeImmutable(); + return parts_; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @return The count of parts. + */ + public int getPartsCount() { + return parts_.size(); + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param index The index of the element to return. + * @return The parts at the given index. + */ + public java.lang.String getParts(int index) { + return parts_.get(index); + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param index The index of the value to return. + * @return The bytes of the parts at the given index. + */ + public com.google.protobuf.ByteString getPartsBytes(int index) { + return parts_.getByteString(index); + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param index The index to set the value at. + * @param value The parts to set. + * @return This builder for chaining. + */ + public Builder setParts(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensurePartsIsMutable(); + parts_.set(index, value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param value The parts to add. + * @return This builder for chaining. + */ + public Builder addParts(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensurePartsIsMutable(); + parts_.add(value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param values The parts to add. + * @return This builder for chaining. + */ + public Builder addAllParts(java.lang.Iterable values) { + ensurePartsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, parts_); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @return This builder for chaining. + */ + public Builder clearParts() { + parts_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + ; + onChanged(); + return this; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param value The bytes of the parts to add. + * @return This builder for chaining. + */ + public Builder addPartsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensurePartsIsMutable(); + parts_.add(value); + bitField0_ |= 0x00000001; + 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:google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) + } + + // @@protoc_insertion_point(class_scope:google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) + private static final com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey(); + } + + public static com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CompositeKey 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 com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + private int keyOneofCase_ = 0; @SuppressWarnings("serial") @@ -71,6 +858,7 @@ public enum KeyOneofCase com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { KEY(1), + COMPOSITE_KEY(2), KEYONEOF_NOT_SET(0); private final int value; @@ -91,6 +879,8 @@ public static KeyOneofCase forNumber(int value) { switch (value) { case 1: return KEY; + case 2: + return COMPOSITE_KEY; case 0: return KEYONEOF_NOT_SET; default: @@ -177,6 +967,61 @@ public com.google.protobuf.ByteString getKeyBytes() { } } + public static final int COMPOSITE_KEY_FIELD_NUMBER = 2; + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * @return Whether the compositeKey field is set. + */ + @java.lang.Override + public boolean hasCompositeKey() { + return keyOneofCase_ == 2; + } + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * @return The compositeKey. + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey getCompositeKey() { + if (keyOneofCase_ == 2) { + return (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) keyOneof_; + } + return com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKeyOrBuilder + getCompositeKeyOrBuilder() { + if (keyOneofCase_ == 2) { + return (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) keyOneof_; + } + return com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -194,6 +1039,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (keyOneofCase_ == 1) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, keyOneof_); } + if (keyOneofCase_ == 2) { + output.writeMessage( + 2, (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) keyOneof_); + } getUnknownFields().writeTo(output); } @@ -206,6 +1055,11 @@ public int getSerializedSize() { if (keyOneofCase_ == 1) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, keyOneof_); } + if (keyOneofCase_ == 2) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 2, (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) keyOneof_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -227,6 +1081,9 @@ public boolean equals(final java.lang.Object obj) { case 1: if (!getKey().equals(other.getKey())) return false; break; + case 2: + if (!getCompositeKey().equals(other.getCompositeKey())) return false; + break; case 0: default: } @@ -246,6 +1103,10 @@ public int hashCode() { hash = (37 * hash) + KEY_FIELD_NUMBER; hash = (53 * hash) + getKey().hashCode(); break; + case 2: + hash = (37 * hash) + COMPOSITE_KEY_FIELD_NUMBER; + hash = (53 * hash) + getCompositeKey().hashCode(); + break; case 0: default: } @@ -388,6 +1249,9 @@ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; + if (compositeKeyBuilder_ != null) { + compositeKeyBuilder_.clear(); + } keyOneofCase_ = 0; keyOneof_ = null; return this; @@ -432,6 +1296,9 @@ private void buildPartial0(com.google.cloud.aiplatform.v1.FeatureViewDataKey res private void buildPartialOneofs(com.google.cloud.aiplatform.v1.FeatureViewDataKey result) { result.keyOneofCase_ = keyOneofCase_; result.keyOneof_ = this.keyOneof_; + if (keyOneofCase_ == 2 && compositeKeyBuilder_ != null) { + result.keyOneof_ = compositeKeyBuilder_.build(); + } } @java.lang.Override @@ -488,6 +1355,11 @@ public Builder mergeFrom(com.google.cloud.aiplatform.v1.FeatureViewDataKey other onChanged(); break; } + case COMPOSITE_KEY: + { + mergeCompositeKey(other.getCompositeKey()); + break; + } case KEYONEOF_NOT_SET: { break; @@ -526,6 +1398,12 @@ public Builder mergeFrom( keyOneof_ = s; break; } // case 10 + case 18: + { + input.readMessage(getCompositeKeyFieldBuilder().getBuilder(), extensionRegistry); + keyOneofCase_ = 2; + break; + } // case 18 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -693,6 +1571,231 @@ public Builder setKeyBytes(com.google.protobuf.ByteString value) { return this; } + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey, + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.Builder, + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKeyOrBuilder> + compositeKeyBuilder_; + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * @return Whether the compositeKey field is set. + */ + @java.lang.Override + public boolean hasCompositeKey() { + return keyOneofCase_ == 2; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * @return The compositeKey. + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey getCompositeKey() { + if (compositeKeyBuilder_ == null) { + if (keyOneofCase_ == 2) { + return (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) keyOneof_; + } + return com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } else { + if (keyOneofCase_ == 2) { + return compositeKeyBuilder_.getMessage(); + } + return com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + public Builder setCompositeKey( + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey value) { + if (compositeKeyBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + keyOneof_ = value; + onChanged(); + } else { + compositeKeyBuilder_.setMessage(value); + } + keyOneofCase_ = 2; + return this; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + public Builder setCompositeKey( + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.Builder builderForValue) { + if (compositeKeyBuilder_ == null) { + keyOneof_ = builderForValue.build(); + onChanged(); + } else { + compositeKeyBuilder_.setMessage(builderForValue.build()); + } + keyOneofCase_ = 2; + return this; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + public Builder mergeCompositeKey( + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey value) { + if (compositeKeyBuilder_ == null) { + if (keyOneofCase_ == 2 + && keyOneof_ + != com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey + .getDefaultInstance()) { + keyOneof_ = + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.newBuilder( + (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) keyOneof_) + .mergeFrom(value) + .buildPartial(); + } else { + keyOneof_ = value; + } + onChanged(); + } else { + if (keyOneofCase_ == 2) { + compositeKeyBuilder_.mergeFrom(value); + } else { + compositeKeyBuilder_.setMessage(value); + } + } + keyOneofCase_ = 2; + return this; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + public Builder clearCompositeKey() { + if (compositeKeyBuilder_ == null) { + if (keyOneofCase_ == 2) { + keyOneofCase_ = 0; + keyOneof_ = null; + onChanged(); + } + } else { + if (keyOneofCase_ == 2) { + keyOneofCase_ = 0; + keyOneof_ = null; + } + compositeKeyBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + public com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.Builder + getCompositeKeyBuilder() { + return getCompositeKeyFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKeyOrBuilder + getCompositeKeyOrBuilder() { + if ((keyOneofCase_ == 2) && (compositeKeyBuilder_ != null)) { + return compositeKeyBuilder_.getMessageOrBuilder(); + } else { + if (keyOneofCase_ == 2) { + return (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) keyOneof_; + } + return com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey, + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.Builder, + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKeyOrBuilder> + getCompositeKeyFieldBuilder() { + if (compositeKeyBuilder_ == null) { + if (!(keyOneofCase_ == 2)) { + keyOneof_ = + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } + compositeKeyBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey, + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey.Builder, + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKeyOrBuilder>( + (com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey) keyOneof_, + getParentForChildren(), + isClean()); + keyOneof_ = null; + } + keyOneofCase_ = 2; + onChanged(); + return compositeKeyBuilder_; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureViewDataKeyOrBuilder.java b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureViewDataKeyOrBuilder.java index ad5b868e6693..c001662a113c 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureViewDataKeyOrBuilder.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/java/com/google/cloud/aiplatform/v1/FeatureViewDataKeyOrBuilder.java @@ -61,5 +61,44 @@ public interface FeatureViewDataKeyOrBuilder */ com.google.protobuf.ByteString getKeyBytes(); + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * @return Whether the compositeKey field is set. + */ + boolean hasCompositeKey(); + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * @return The compositeKey. + */ + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey getCompositeKey(); + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKey composite_key = 2; + */ + com.google.cloud.aiplatform.v1.FeatureViewDataKey.CompositeKeyOrBuilder + getCompositeKeyOrBuilder(); + com.google.cloud.aiplatform.v1.FeatureViewDataKey.KeyOneofCase getKeyOneofCase(); } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/proto/google/cloud/aiplatform/v1/feature.proto b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/proto/google/cloud/aiplatform/v1/feature.proto index 464b888905d0..e47a5287d7b3 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/proto/google/cloud/aiplatform/v1/feature.proto +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/proto/google/cloud/aiplatform/v1/feature.proto @@ -170,4 +170,8 @@ message Feature { // The name of the BigQuery Table/View column hosting data for this version. // If no value is provided, will use feature_id. string version_column_name = 106; + + // Entity responsible for maintaining this feature. Can be comma separated + // list of email addresses or URIs. + string point_of_contact = 107; } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/proto/google/cloud/aiplatform/v1/feature_online_store_service.proto b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/proto/google/cloud/aiplatform/v1/feature_online_store_service.proto index c6a44037ea79..bb451126e2de 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/proto/google/cloud/aiplatform/v1/feature_online_store_service.proto +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1/src/main/proto/google/cloud/aiplatform/v1/feature_online_store_service.proto @@ -73,9 +73,20 @@ enum FeatureViewDataFormat { // Lookup key for a feature view. message FeatureViewDataKey { + // ID that is comprised from several parts (columns). + message CompositeKey { + // Parts to construct Entity ID. Should match with the same ID columns as + // defined in FeatureView in the same order. + repeated string parts = 1; + } + oneof key_oneof { // String key to use for lookup. string key = 1; + + // The actual Entity ID will be composed from this struct. This should match + // with the way ID is defined in the FeatureView spec. + CompositeKey composite_key = 2; } } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/Feature.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/Feature.java index 25f73143e417..c1edc231ebd3 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/Feature.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/Feature.java @@ -47,6 +47,7 @@ private Feature() { monitoringStats_ = java.util.Collections.emptyList(); monitoringStatsAnomalies_ = java.util.Collections.emptyList(); versionColumnName_ = ""; + pointOfContact_ = ""; } @java.lang.Override @@ -2424,6 +2425,59 @@ public com.google.protobuf.ByteString getVersionColumnNameBytes() { } } + public static final int POINT_OF_CONTACT_FIELD_NUMBER = 107; + + @SuppressWarnings("serial") + private volatile java.lang.Object pointOfContact_ = ""; + /** + * + * + *
+   * Entity responsible for maintaining this feature. Can be comma separated
+   * list of email addresses or URIs.
+   * 
+ * + * string point_of_contact = 107; + * + * @return The pointOfContact. + */ + @java.lang.Override + public java.lang.String getPointOfContact() { + java.lang.Object ref = pointOfContact_; + 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(); + pointOfContact_ = s; + return s; + } + } + /** + * + * + *
+   * Entity responsible for maintaining this feature. Can be comma separated
+   * list of email addresses or URIs.
+   * 
+ * + * string point_of_contact = 107; + * + * @return The bytes for pointOfContact. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPointOfContactBytes() { + java.lang.Object ref = pointOfContact_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + pointOfContact_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -2475,6 +2529,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(versionColumnName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 106, versionColumnName_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pointOfContact_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 107, pointOfContact_); + } getUnknownFields().writeTo(output); } @@ -2531,6 +2588,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(versionColumnName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(106, versionColumnName_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pointOfContact_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(107, pointOfContact_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -2569,6 +2629,7 @@ public boolean equals(final java.lang.Object obj) { if (!getMonitoringStatsAnomaliesList().equals(other.getMonitoringStatsAnomaliesList())) return false; if (!getVersionColumnName().equals(other.getVersionColumnName())) return false; + if (!getPointOfContact().equals(other.getPointOfContact())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -2616,6 +2677,8 @@ public int hashCode() { } hash = (37 * hash) + VERSION_COLUMN_NAME_FIELD_NUMBER; hash = (53 * hash) + getVersionColumnName().hashCode(); + hash = (37 * hash) + POINT_OF_CONTACT_FIELD_NUMBER; + hash = (53 * hash) + getPointOfContact().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -2827,6 +2890,7 @@ public Builder clear() { } bitField0_ = (bitField0_ & ~0x00000400); versionColumnName_ = ""; + pointOfContact_ = ""; return this; } @@ -2922,6 +2986,9 @@ private void buildPartial0(com.google.cloud.aiplatform.v1beta1.Feature result) { if (((from_bitField0_ & 0x00000800) != 0)) { result.versionColumnName_ = versionColumnName_; } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.pointOfContact_ = pointOfContact_; + } result.bitField0_ |= to_bitField0_; } @@ -3061,6 +3128,11 @@ public Builder mergeFrom(com.google.cloud.aiplatform.v1beta1.Feature other) { bitField0_ |= 0x00000800; onChanged(); } + if (!other.getPointOfContact().isEmpty()) { + pointOfContact_ = other.pointOfContact_; + bitField0_ |= 0x00001000; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -3182,6 +3254,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000800; break; } // case 850 + case 858: + { + pointOfContact_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00001000; + break; + } // case 858 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -5787,6 +5865,117 @@ public Builder setVersionColumnNameBytes(com.google.protobuf.ByteString value) { return this; } + private java.lang.Object pointOfContact_ = ""; + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @return The pointOfContact. + */ + public java.lang.String getPointOfContact() { + java.lang.Object ref = pointOfContact_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + pointOfContact_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @return The bytes for pointOfContact. + */ + public com.google.protobuf.ByteString getPointOfContactBytes() { + java.lang.Object ref = pointOfContact_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + pointOfContact_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @param value The pointOfContact to set. + * @return This builder for chaining. + */ + public Builder setPointOfContact(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + pointOfContact_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @return This builder for chaining. + */ + public Builder clearPointOfContact() { + pointOfContact_ = getDefaultInstance().getPointOfContact(); + bitField0_ = (bitField0_ & ~0x00001000); + onChanged(); + return this; + } + /** + * + * + *
+     * Entity responsible for maintaining this feature. Can be comma separated
+     * list of email addresses or URIs.
+     * 
+ * + * string point_of_contact = 107; + * + * @param value The bytes for pointOfContact to set. + * @return This builder for chaining. + */ + public Builder setPointOfContactBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + pointOfContact_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureOnlineStoreServiceProto.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureOnlineStoreServiceProto.java index fbbde3cd8647..f553081b6622 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureOnlineStoreServiceProto.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureOnlineStoreServiceProto.java @@ -32,6 +32,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_cloud_aiplatform_v1beta1_FetchFeatureValuesRequest_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable @@ -96,87 +100,90 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "ogle/api/field_behavior.proto\032\031google/ap" + "i/resource.proto\032Agoogle/cloud/aiplatfor" + "m/v1beta1/featurestore_online_service.pr" - + "oto\032\034google/protobuf/struct.proto\"0\n\022Fea" - + "tureViewDataKey\022\r\n\003key\030\001 \001(\tH\000B\013\n\tkey_on" - + "eof\"\273\003\n\031FetchFeatureValuesRequest\022\020\n\002id\030" - + "\003 \001(\tB\002\030\001H\000\022C\n\014feature_view\030\001 \001(\tB-\340A\002\372A" - + "\'\n%aiplatform.googleapis.com/FeatureView" - + "\022J\n\010data_key\030\006 \001(\01323.google.cloud.aiplat" - + "form.v1beta1.FeatureViewDataKeyB\003\340A\001\022P\n\013" - + "data_format\030\007 \001(\01626.google.cloud.aiplatf" - + "orm.v1beta1.FeatureViewDataFormatB\003\340A\001\022U" - + "\n\006format\030\005 \001(\0162A.google.cloud.aiplatform" - + ".v1beta1.FetchFeatureValuesRequest.Forma" - + "tB\002\030\001\"E\n\006Format\022\026\n\022FORMAT_UNSPECIFIED\020\000\022" - + "\r\n\tKEY_VALUE\020\001\022\020\n\014PROTO_STRUCT\020\002\032\002\030\001B\013\n\t" - + "entity_id\"\313\003\n\032FetchFeatureValuesResponse" - + "\022j\n\nkey_values\030\003 \001(\0132T.google.cloud.aipl" - + "atform.v1beta1.FetchFeatureValuesRespons" - + "e.FeatureNameValuePairListH\000\022/\n\014proto_st" - + "ruct\030\002 \001(\0132\027.google.protobuf.StructH\000\032\205\002" - + "\n\030FeatureNameValuePairList\022{\n\010features\030\001" - + " \003(\0132i.google.cloud.aiplatform.v1beta1.F" - + "etchFeatureValuesResponse.FeatureNameVal" - + "uePairList.FeatureNameValuePair\032l\n\024Featu" - + "reNameValuePair\022>\n\005value\030\002 \001(\0132-.google." - + "cloud.aiplatform.v1beta1.FeatureValueH\000\022" - + "\014\n\004name\030\001 \001(\tB\006\n\004dataB\010\n\006format\"\202\005\n\024Near" - + "estNeighborQuery\022\030\n\tentity_id\030\001 \001(\tB\003\340A\001" - + "H\000\022Y\n\tembedding\030\002 \001(\0132?.google.cloud.aip" - + "latform.v1beta1.NearestNeighborQuery.Emb" - + "eddingB\003\340A\001H\000\022\033\n\016neighbor_count\030\003 \001(\005B\003\340" - + "A\001\022_\n\016string_filters\030\004 \003(\0132B.google.clou" - + "d.aiplatform.v1beta1.NearestNeighborQuer" - + "y.StringFilterB\003\340A\001\0222\n%per_crowding_attr" - + "ibute_neighbor_count\030\005 \001(\005B\003\340A\001\022Y\n\nparam" - + "eters\030\007 \001(\0132@.google.cloud.aiplatform.v1" - + "beta1.NearestNeighborQuery.ParametersB\003\340" - + "A\001\032\037\n\tEmbedding\022\022\n\005value\030\001 \003(\002B\003\340A\001\032V\n\014S" - + "tringFilter\022\021\n\004name\030\001 \001(\tB\003\340A\002\022\031\n\014allow_" - + "tokens\030\002 \003(\tB\003\340A\001\022\030\n\013deny_tokens\030\003 \003(\tB\003" - + "\340A\001\032c\n\nParameters\022,\n\037approximate_neighbo" - + "r_candidates\030\001 \001(\005B\003\340A\001\022\'\n\032leaf_nodes_se" - + "arch_fraction\030\002 \001(\001B\003\340A\001B\n\n\010instance\"\317\001\n" - + "\034SearchNearestEntitiesRequest\022C\n\014feature" - + "_view\030\001 \001(\tB-\340A\002\372A\'\n%aiplatform.googleap" - + "is.com/FeatureView\022I\n\005query\030\002 \001(\01325.goog" - + "le.cloud.aiplatform.v1beta1.NearestNeigh" - + "borQueryB\003\340A\002\022\037\n\022return_full_entity\030\003 \001(" - + "\010B\003\340A\001\"\353\001\n\020NearestNeighbors\022M\n\tneighbors" - + "\030\001 \003(\0132:.google.cloud.aiplatform.v1beta1" - + ".NearestNeighbors.Neighbor\032\207\001\n\010Neighbor\022" - + "\021\n\tentity_id\030\001 \001(\t\022\020\n\010distance\030\002 \001(\001\022V\n\021" - + "entity_key_values\030\003 \001(\0132;.google.cloud.a" + + "oto\032\034google/protobuf/struct.proto\"\252\001\n\022Fe" + + "atureViewDataKey\022\r\n\003key\030\001 \001(\tH\000\022Y\n\rcompo" + + "site_key\030\002 \001(\0132@.google.cloud.aiplatform" + + ".v1beta1.FeatureViewDataKey.CompositeKey" + + "H\000\032\035\n\014CompositeKey\022\r\n\005parts\030\001 \003(\tB\013\n\tkey" + + "_oneof\"\273\003\n\031FetchFeatureValuesRequest\022\020\n\002" + + "id\030\003 \001(\tB\002\030\001H\000\022C\n\014feature_view\030\001 \001(\tB-\340A" + + "\002\372A\'\n%aiplatform.googleapis.com/FeatureV" + + "iew\022J\n\010data_key\030\006 \001(\01323.google.cloud.aip" + + "latform.v1beta1.FeatureViewDataKeyB\003\340A\001\022" + + "P\n\013data_format\030\007 \001(\01626.google.cloud.aipl" + + "atform.v1beta1.FeatureViewDataFormatB\003\340A" + + "\001\022U\n\006format\030\005 \001(\0162A.google.cloud.aiplatf" + + "orm.v1beta1.FetchFeatureValuesRequest.Fo" + + "rmatB\002\030\001\"E\n\006Format\022\026\n\022FORMAT_UNSPECIFIED" + + "\020\000\022\r\n\tKEY_VALUE\020\001\022\020\n\014PROTO_STRUCT\020\002\032\002\030\001B" + + "\013\n\tentity_id\"\313\003\n\032FetchFeatureValuesRespo" + + "nse\022j\n\nkey_values\030\003 \001(\0132T.google.cloud.a" + "iplatform.v1beta1.FetchFeatureValuesResp" - + "onse\"m\n\035SearchNearestEntitiesResponse\022L\n" - + "\021nearest_neighbors\030\001 \001(\01321.google.cloud." - + "aiplatform.v1beta1.NearestNeighbors*b\n\025F" - + "eatureViewDataFormat\022(\n$FEATURE_VIEW_DAT" - + "A_FORMAT_UNSPECIFIED\020\000\022\r\n\tKEY_VALUE\020\001\022\020\n" - + "\014PROTO_STRUCT\020\0022\226\005\n\031FeatureOnlineStoreSe" - + "rvice\022\232\002\n\022FetchFeatureValues\022:.google.cl" - + "oud.aiplatform.v1beta1.FetchFeatureValue" - + "sRequest\032;.google.cloud.aiplatform.v1bet" - + "a1.FetchFeatureValuesResponse\"\212\001\332A\026featu" - + "re_view, data_key\202\323\344\223\002k\"f/v1beta1/{featu" - + "re_view=projects/*/locations/*/featureOn" - + "lineStores/*/featureViews/*}:fetchFeatur" - + "eValues:\001*\022\214\002\n\025SearchNearestEntities\022=.g" - + "oogle.cloud.aiplatform.v1beta1.SearchNea" - + "restEntitiesRequest\032>.google.cloud.aipla" - + "tform.v1beta1.SearchNearestEntitiesRespo" - + "nse\"t\202\323\344\223\002n\"i/v1beta1/{feature_view=proj" - + "ects/*/locations/*/featureOnlineStores/*" - + "/featureViews/*}:searchNearestEntities:\001" - + "*\032M\312A\031aiplatform.googleapis.com\322A.https:" - + "//www.googleapis.com/auth/cloud-platform" - + "B\365\001\n#com.google.cloud.aiplatform.v1beta1" - + "B\036FeatureOnlineStoreServiceProtoP\001ZCclou" - + "d.google.com/go/aiplatform/apiv1beta1/ai" - + "platformpb;aiplatformpb\252\002\037Google.Cloud.A" - + "IPlatform.V1Beta1\312\002\037Google\\Cloud\\AIPlatf" - + "orm\\V1beta1\352\002\"Google::Cloud::AIPlatform:" - + ":V1beta1b\006proto3" + + "onse.FeatureNameValuePairListH\000\022/\n\014proto" + + "_struct\030\002 \001(\0132\027.google.protobuf.StructH\000" + + "\032\205\002\n\030FeatureNameValuePairList\022{\n\010feature" + + "s\030\001 \003(\0132i.google.cloud.aiplatform.v1beta" + + "1.FetchFeatureValuesResponse.FeatureName" + + "ValuePairList.FeatureNameValuePair\032l\n\024Fe" + + "atureNameValuePair\022>\n\005value\030\002 \001(\0132-.goog" + + "le.cloud.aiplatform.v1beta1.FeatureValue" + + "H\000\022\014\n\004name\030\001 \001(\tB\006\n\004dataB\010\n\006format\"\202\005\n\024N" + + "earestNeighborQuery\022\030\n\tentity_id\030\001 \001(\tB\003" + + "\340A\001H\000\022Y\n\tembedding\030\002 \001(\0132?.google.cloud." + + "aiplatform.v1beta1.NearestNeighborQuery." + + "EmbeddingB\003\340A\001H\000\022\033\n\016neighbor_count\030\003 \001(\005" + + "B\003\340A\001\022_\n\016string_filters\030\004 \003(\0132B.google.c" + + "loud.aiplatform.v1beta1.NearestNeighborQ" + + "uery.StringFilterB\003\340A\001\0222\n%per_crowding_a" + + "ttribute_neighbor_count\030\005 \001(\005B\003\340A\001\022Y\n\npa" + + "rameters\030\007 \001(\0132@.google.cloud.aiplatform" + + ".v1beta1.NearestNeighborQuery.Parameters" + + "B\003\340A\001\032\037\n\tEmbedding\022\022\n\005value\030\001 \003(\002B\003\340A\001\032V" + + "\n\014StringFilter\022\021\n\004name\030\001 \001(\tB\003\340A\002\022\031\n\014all" + + "ow_tokens\030\002 \003(\tB\003\340A\001\022\030\n\013deny_tokens\030\003 \003(" + + "\tB\003\340A\001\032c\n\nParameters\022,\n\037approximate_neig" + + "hbor_candidates\030\001 \001(\005B\003\340A\001\022\'\n\032leaf_nodes" + + "_search_fraction\030\002 \001(\001B\003\340A\001B\n\n\010instance\"" + + "\317\001\n\034SearchNearestEntitiesRequest\022C\n\014feat" + + "ure_view\030\001 \001(\tB-\340A\002\372A\'\n%aiplatform.googl" + + "eapis.com/FeatureView\022I\n\005query\030\002 \001(\01325.g" + + "oogle.cloud.aiplatform.v1beta1.NearestNe" + + "ighborQueryB\003\340A\002\022\037\n\022return_full_entity\030\003" + + " \001(\010B\003\340A\001\"\353\001\n\020NearestNeighbors\022M\n\tneighb" + + "ors\030\001 \003(\0132:.google.cloud.aiplatform.v1be" + + "ta1.NearestNeighbors.Neighbor\032\207\001\n\010Neighb" + + "or\022\021\n\tentity_id\030\001 \001(\t\022\020\n\010distance\030\002 \001(\001\022" + + "V\n\021entity_key_values\030\003 \001(\0132;.google.clou" + + "d.aiplatform.v1beta1.FetchFeatureValuesR" + + "esponse\"m\n\035SearchNearestEntitiesResponse" + + "\022L\n\021nearest_neighbors\030\001 \001(\01321.google.clo" + + "ud.aiplatform.v1beta1.NearestNeighbors*b" + + "\n\025FeatureViewDataFormat\022(\n$FEATURE_VIEW_" + + "DATA_FORMAT_UNSPECIFIED\020\000\022\r\n\tKEY_VALUE\020\001" + + "\022\020\n\014PROTO_STRUCT\020\0022\226\005\n\031FeatureOnlineStor" + + "eService\022\232\002\n\022FetchFeatureValues\022:.google" + + ".cloud.aiplatform.v1beta1.FetchFeatureVa" + + "luesRequest\032;.google.cloud.aiplatform.v1" + + "beta1.FetchFeatureValuesResponse\"\212\001\332A\026fe" + + "ature_view, data_key\202\323\344\223\002k\"f/v1beta1/{fe" + + "ature_view=projects/*/locations/*/featur" + + "eOnlineStores/*/featureViews/*}:fetchFea" + + "tureValues:\001*\022\214\002\n\025SearchNearestEntities\022" + + "=.google.cloud.aiplatform.v1beta1.Search" + + "NearestEntitiesRequest\032>.google.cloud.ai" + + "platform.v1beta1.SearchNearestEntitiesRe" + + "sponse\"t\202\323\344\223\002n\"i/v1beta1/{feature_view=p" + + "rojects/*/locations/*/featureOnlineStore" + + "s/*/featureViews/*}:searchNearestEntitie" + + "s:\001*\032M\312A\031aiplatform.googleapis.com\322A.htt" + + "ps://www.googleapis.com/auth/cloud-platf" + + "ormB\365\001\n#com.google.cloud.aiplatform.v1be" + + "ta1B\036FeatureOnlineStoreServiceProtoP\001ZCc" + + "loud.google.com/go/aiplatform/apiv1beta1" + + "/aiplatformpb;aiplatformpb\252\002\037Google.Clou" + + "d.AIPlatform.V1Beta1\312\002\037Google\\Cloud\\AIPl" + + "atform\\V1beta1\352\002\"Google::Cloud::AIPlatfo" + + "rm::V1beta1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -195,7 +202,17 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_descriptor, new java.lang.String[] { - "Key", "KeyOneof", + "Key", "CompositeKey", "KeyOneof", + }); + internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_descriptor = + internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_descriptor + .getNestedTypes() + .get(0); + internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_descriptor, + new java.lang.String[] { + "Parts", }); internal_static_google_cloud_aiplatform_v1beta1_FetchFeatureValuesRequest_descriptor = getDescriptor().getMessageTypes().get(1); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureOrBuilder.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureOrBuilder.java index 425934529370..3a0c7234d419 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureOrBuilder.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureOrBuilder.java @@ -634,4 +634,31 @@ com.google.cloud.aiplatform.v1beta1.Feature.MonitoringStatsAnomaly getMonitoring * @return The bytes for versionColumnName. */ com.google.protobuf.ByteString getVersionColumnNameBytes(); + + /** + * + * + *
+   * Entity responsible for maintaining this feature. Can be comma separated
+   * list of email addresses or URIs.
+   * 
+ * + * string point_of_contact = 107; + * + * @return The pointOfContact. + */ + java.lang.String getPointOfContact(); + /** + * + * + *
+   * Entity responsible for maintaining this feature. Can be comma separated
+   * list of email addresses or URIs.
+   * 
+ * + * string point_of_contact = 107; + * + * @return The bytes for pointOfContact. + */ + com.google.protobuf.ByteString getPointOfContactBytes(); } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureProto.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureProto.java index 295833b37991..962823b560e1 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureProto.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureProto.java @@ -56,7 +56,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "tform/v1beta1/feature_monitoring_stats.p" + "roto\032=google/cloud/aiplatform/v1beta1/fe" + "aturestore_monitoring.proto\032\037google/prot" - + "obuf/timestamp.proto\"\265\013\n\007Feature\022\021\n\004name" + + "obuf/timestamp.proto\"\317\013\n\007Feature\022\021\n\004name" + "\030\001 \001(\tB\003\340A\005\022\023\n\013description\030\002 \001(\t\022K\n\nvalu" + "e_type\030\003 \001(\01622.google.cloud.aiplatform.v" + "1beta1.Feature.ValueTypeB\003\340A\005\0224\n\013create_" @@ -73,33 +73,33 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\003\022h\n\032monitoring_stats_anomalies\030\013 \003(\0132?." + "google.cloud.aiplatform.v1beta1.Feature." + "MonitoringStatsAnomalyB\003\340A\003\022\033\n\023version_c" - + "olumn_name\030j \001(\t\032\261\002\n\026MonitoringStatsAnom" - + "aly\022a\n\tobjective\030\001 \001(\0162I.google.cloud.ai" - + "platform.v1beta1.Feature.MonitoringStats" - + "Anomaly.ObjectiveB\003\340A\003\022X\n\025feature_stats_" - + "anomaly\030\002 \001(\01324.google.cloud.aiplatform." - + "v1beta1.FeatureStatsAnomalyB\003\340A\003\"Z\n\tObje" - + "ctive\022\031\n\025OBJECTIVE_UNSPECIFIED\020\000\022\033\n\027IMPO" - + "RT_FEATURE_ANALYSIS\020\001\022\025\n\021SNAPSHOT_ANALYS" - + "IS\020\002\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005valu" - + "e\030\002 \001(\t:\0028\001\"\244\001\n\tValueType\022\032\n\026VALUE_TYPE_" - + "UNSPECIFIED\020\000\022\010\n\004BOOL\020\001\022\016\n\nBOOL_ARRAY\020\002\022" - + "\n\n\006DOUBLE\020\003\022\020\n\014DOUBLE_ARRAY\020\004\022\t\n\005INT64\020\t" - + "\022\017\n\013INT64_ARRAY\020\n\022\n\n\006STRING\020\013\022\020\n\014STRING_" - + "ARRAY\020\014\022\t\n\005BYTES\020\r:\207\002\352A\203\002\n!aiplatform.go" - + "ogleapis.com/Feature\022qprojects/{project}" - + "/locations/{location}/featurestores/{fea" - + "turestore}/entityTypes/{entity_type}/fea" - + "tures/{feature}\022Xprojects/{project}/loca" - + "tions/{location}/featureGroups/{feature_" - + "group}/features/{feature}*\010features2\007fea" - + "tureB\343\001\n#com.google.cloud.aiplatform.v1b" - + "eta1B\014FeatureProtoP\001ZCcloud.google.com/g" - + "o/aiplatform/apiv1beta1/aiplatformpb;aip" - + "latformpb\252\002\037Google.Cloud.AIPlatform.V1Be" - + "ta1\312\002\037Google\\Cloud\\AIPlatform\\V1beta1\352\002\"" - + "Google::Cloud::AIPlatform::V1beta1b\006prot" - + "o3" + + "olumn_name\030j \001(\t\022\030\n\020point_of_contact\030k \001" + + "(\t\032\261\002\n\026MonitoringStatsAnomaly\022a\n\tobjecti" + + "ve\030\001 \001(\0162I.google.cloud.aiplatform.v1bet" + + "a1.Feature.MonitoringStatsAnomaly.Object" + + "iveB\003\340A\003\022X\n\025feature_stats_anomaly\030\002 \001(\0132" + + "4.google.cloud.aiplatform.v1beta1.Featur" + + "eStatsAnomalyB\003\340A\003\"Z\n\tObjective\022\031\n\025OBJEC" + + "TIVE_UNSPECIFIED\020\000\022\033\n\027IMPORT_FEATURE_ANA" + + "LYSIS\020\001\022\025\n\021SNAPSHOT_ANALYSIS\020\002\032-\n\013Labels" + + "Entry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\244\001" + + "\n\tValueType\022\032\n\026VALUE_TYPE_UNSPECIFIED\020\000\022" + + "\010\n\004BOOL\020\001\022\016\n\nBOOL_ARRAY\020\002\022\n\n\006DOUBLE\020\003\022\020\n" + + "\014DOUBLE_ARRAY\020\004\022\t\n\005INT64\020\t\022\017\n\013INT64_ARRA" + + "Y\020\n\022\n\n\006STRING\020\013\022\020\n\014STRING_ARRAY\020\014\022\t\n\005BYT" + + "ES\020\r:\207\002\352A\203\002\n!aiplatform.googleapis.com/F" + + "eature\022qprojects/{project}/locations/{lo" + + "cation}/featurestores/{featurestore}/ent" + + "ityTypes/{entity_type}/features/{feature" + + "}\022Xprojects/{project}/locations/{locatio" + + "n}/featureGroups/{feature_group}/feature" + + "s/{feature}*\010features2\007featureB\343\001\n#com.g" + + "oogle.cloud.aiplatform.v1beta1B\014FeatureP" + + "rotoP\001ZCcloud.google.com/go/aiplatform/a" + + "piv1beta1/aiplatformpb;aiplatformpb\252\002\037Go" + + "ogle.Cloud.AIPlatform.V1Beta1\312\002\037Google\\C" + + "loud\\AIPlatform\\V1beta1\352\002\"Google::Cloud:" + + ":AIPlatform::V1beta1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -129,6 +129,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "MonitoringStats", "MonitoringStatsAnomalies", "VersionColumnName", + "PointOfContact", }); internal_static_google_cloud_aiplatform_v1beta1_Feature_MonitoringStatsAnomaly_descriptor = internal_static_google_cloud_aiplatform_v1beta1_Feature_descriptor.getNestedTypes().get(0); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureView.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureView.java index 50a6fa537205..059349c368c7 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureView.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureView.java @@ -42,6 +42,8 @@ private FeatureView(com.google.protobuf.GeneratedMessageV3.Builder builder) { private FeatureView() { name_ = ""; etag_ = ""; + serviceAgentType_ = 0; + serviceAccountEmail_ = ""; } @java.lang.Override @@ -77,6 +79,173 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldRefl com.google.cloud.aiplatform.v1beta1.FeatureView.Builder.class); } + /** + * + * + *
+   * Service agent type used during data sync.
+   * 
+ * + * Protobuf enum {@code google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType} + */ + public enum ServiceAgentType implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+     * By default, the project-level Vertex AI Service Agent is enabled.
+     * 
+ * + * SERVICE_AGENT_TYPE_UNSPECIFIED = 0; + */ + SERVICE_AGENT_TYPE_UNSPECIFIED(0), + /** + * + * + *
+     * Indicates the project-level Vertex AI Service Agent
+     * (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents)
+     * will be used during sync jobs.
+     * 
+ * + * SERVICE_AGENT_TYPE_PROJECT = 1; + */ + SERVICE_AGENT_TYPE_PROJECT(1), + /** + * + * + *
+     * Enable a FeatureView service account to be created by Vertex AI and
+     * output in the field `service_account_email`. This service account will
+     * be used to read from the source BigQuery table during sync.
+     * 
+ * + * SERVICE_AGENT_TYPE_FEATURE_VIEW = 2; + */ + SERVICE_AGENT_TYPE_FEATURE_VIEW(2), + UNRECOGNIZED(-1), + ; + + /** + * + * + *
+     * By default, the project-level Vertex AI Service Agent is enabled.
+     * 
+ * + * SERVICE_AGENT_TYPE_UNSPECIFIED = 0; + */ + public static final int SERVICE_AGENT_TYPE_UNSPECIFIED_VALUE = 0; + /** + * + * + *
+     * Indicates the project-level Vertex AI Service Agent
+     * (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents)
+     * will be used during sync jobs.
+     * 
+ * + * SERVICE_AGENT_TYPE_PROJECT = 1; + */ + public static final int SERVICE_AGENT_TYPE_PROJECT_VALUE = 1; + /** + * + * + *
+     * Enable a FeatureView service account to be created by Vertex AI and
+     * output in the field `service_account_email`. This service account will
+     * be used to read from the source BigQuery table during sync.
+     * 
+ * + * SERVICE_AGENT_TYPE_FEATURE_VIEW = 2; + */ + public static final int SERVICE_AGENT_TYPE_FEATURE_VIEW_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 ServiceAgentType 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 ServiceAgentType forNumber(int value) { + switch (value) { + case 0: + return SERVICE_AGENT_TYPE_UNSPECIFIED; + case 1: + return SERVICE_AGENT_TYPE_PROJECT; + case 2: + return SERVICE_AGENT_TYPE_FEATURE_VIEW; + default: + return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { + return internalValueMap; + } + + private static final com.google.protobuf.Internal.EnumLiteMap + internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public ServiceAgentType findValueByNumber(int number) { + return ServiceAgentType.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 com.google.cloud.aiplatform.v1beta1.FeatureView.getDescriptor().getEnumTypes().get(0); + } + + private static final ServiceAgentType[] VALUES = values(); + + public static ServiceAgentType 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 ServiceAgentType(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType) + } + public interface BigQuerySourceOrBuilder extends // @@protoc_insertion_point(interface_extends:google.cloud.aiplatform.v1beta1.FeatureView.BigQuerySource) @@ -8454,6 +8623,113 @@ public boolean hasVectorSearchConfig() { : vectorSearchConfig_; } + public static final int SERVICE_AGENT_TYPE_FIELD_NUMBER = 14; + private int serviceAgentType_ = 0; + /** + * + * + *
+   * Optional. Service agent type used during data sync. By default, the Vertex
+   * AI Service Agent is used. When using an IAM Policy to isolate this
+   * FeatureView within a project, a separate service account should be
+   * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+   * This will generate a separate service account to access the BigQuery source
+   * table.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for serviceAgentType. + */ + @java.lang.Override + public int getServiceAgentTypeValue() { + return serviceAgentType_; + } + /** + * + * + *
+   * Optional. Service agent type used during data sync. By default, the Vertex
+   * AI Service Agent is used. When using an IAM Policy to isolate this
+   * FeatureView within a project, a separate service account should be
+   * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+   * This will generate a separate service account to access the BigQuery source
+   * table.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The serviceAgentType. + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType getServiceAgentType() { + com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType result = + com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType.forNumber( + serviceAgentType_); + return result == null + ? com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType.UNRECOGNIZED + : result; + } + + public static final int SERVICE_ACCOUNT_EMAIL_FIELD_NUMBER = 13; + + @SuppressWarnings("serial") + private volatile java.lang.Object serviceAccountEmail_ = ""; + /** + * + * + *
+   * Output only. A Service Account unique to this FeatureView. The role
+   * bigquery.dataViewer should be granted to this service account to allow
+   * Vertex AI Feature Store to sync data to the online store.
+   * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The serviceAccountEmail. + */ + @java.lang.Override + public java.lang.String getServiceAccountEmail() { + java.lang.Object ref = serviceAccountEmail_; + 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(); + serviceAccountEmail_ = s; + return s; + } + } + /** + * + * + *
+   * Output only. A Service Account unique to this FeatureView. The role
+   * bigquery.dataViewer should be granted to this service account to allow
+   * Vertex AI Feature Store to sync data to the online store.
+   * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for serviceAccountEmail. + */ + @java.lang.Override + public com.google.protobuf.ByteString getServiceAccountEmailBytes() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccountEmail_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -8496,6 +8772,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io output.writeMessage( 9, (com.google.cloud.aiplatform.v1beta1.FeatureView.FeatureRegistrySource) source_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(serviceAccountEmail_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 13, serviceAccountEmail_); + } + if (serviceAgentType_ + != com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType + .SERVICE_AGENT_TYPE_UNSPECIFIED + .getNumber()) { + output.writeEnum(14, serviceAgentType_); + } getUnknownFields().writeTo(output); } @@ -8543,6 +8828,15 @@ public int getSerializedSize() { com.google.protobuf.CodedOutputStream.computeMessageSize( 9, (com.google.cloud.aiplatform.v1beta1.FeatureView.FeatureRegistrySource) source_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(serviceAccountEmail_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, serviceAccountEmail_); + } + if (serviceAgentType_ + != com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType + .SERVICE_AGENT_TYPE_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(14, serviceAgentType_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -8578,6 +8872,8 @@ public boolean equals(final java.lang.Object obj) { if (hasVectorSearchConfig()) { if (!getVectorSearchConfig().equals(other.getVectorSearchConfig())) return false; } + if (serviceAgentType_ != other.serviceAgentType_) return false; + if (!getServiceAccountEmail().equals(other.getServiceAccountEmail())) return false; if (!getSourceCase().equals(other.getSourceCase())) return false; switch (sourceCase_) { case 6: @@ -8624,6 +8920,10 @@ public int hashCode() { hash = (37 * hash) + VECTOR_SEARCH_CONFIG_FIELD_NUMBER; hash = (53 * hash) + getVectorSearchConfig().hashCode(); } + hash = (37 * hash) + SERVICE_AGENT_TYPE_FIELD_NUMBER; + hash = (53 * hash) + serviceAgentType_; + hash = (37 * hash) + SERVICE_ACCOUNT_EMAIL_FIELD_NUMBER; + hash = (53 * hash) + getServiceAccountEmail().hashCode(); switch (sourceCase_) { case 6: hash = (37 * hash) + BIG_QUERY_SOURCE_FIELD_NUMBER; @@ -8839,6 +9139,8 @@ public Builder clear() { vectorSearchConfigBuilder_.dispose(); vectorSearchConfigBuilder_ = null; } + serviceAgentType_ = 0; + serviceAccountEmail_ = ""; sourceCase_ = 0; source_ = null; return this; @@ -8908,6 +9210,12 @@ private void buildPartial0(com.google.cloud.aiplatform.v1beta1.FeatureView resul : vectorSearchConfigBuilder_.build(); to_bitField0_ |= 0x00000008; } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.serviceAgentType_ = serviceAgentType_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.serviceAccountEmail_ = serviceAccountEmail_; + } result.bitField0_ |= to_bitField0_; } @@ -8992,6 +9300,14 @@ public Builder mergeFrom(com.google.cloud.aiplatform.v1beta1.FeatureView other) if (other.hasVectorSearchConfig()) { mergeVectorSearchConfig(other.getVectorSearchConfig()); } + if (other.serviceAgentType_ != 0) { + setServiceAgentTypeValue(other.getServiceAgentTypeValue()); + } + if (!other.getServiceAccountEmail().isEmpty()) { + serviceAccountEmail_ = other.serviceAccountEmail_; + bitField0_ |= 0x00000400; + onChanged(); + } switch (other.getSourceCase()) { case BIG_QUERY_SOURCE: { @@ -9096,6 +9412,18 @@ public Builder mergeFrom( sourceCase_ = 9; break; } // case 74 + case 106: + { + serviceAccountEmail_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000400; + break; + } // case 106 + case 112: + { + serviceAgentType_ = input.readEnum(); + bitField0_ |= 0x00000200; + break; + } // case 112 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -10933,6 +11261,251 @@ public Builder clearVectorSearchConfig() { return vectorSearchConfigBuilder_; } + private int serviceAgentType_ = 0; + /** + * + * + *
+     * Optional. Service agent type used during data sync. By default, the Vertex
+     * AI Service Agent is used. When using an IAM Policy to isolate this
+     * FeatureView within a project, a separate service account should be
+     * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+     * This will generate a separate service account to access the BigQuery source
+     * table.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for serviceAgentType. + */ + @java.lang.Override + public int getServiceAgentTypeValue() { + return serviceAgentType_; + } + /** + * + * + *
+     * Optional. Service agent type used during data sync. By default, the Vertex
+     * AI Service Agent is used. When using an IAM Policy to isolate this
+     * FeatureView within a project, a separate service account should be
+     * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+     * This will generate a separate service account to access the BigQuery source
+     * table.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for serviceAgentType to set. + * @return This builder for chaining. + */ + public Builder setServiceAgentTypeValue(int value) { + serviceAgentType_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Service agent type used during data sync. By default, the Vertex
+     * AI Service Agent is used. When using an IAM Policy to isolate this
+     * FeatureView within a project, a separate service account should be
+     * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+     * This will generate a separate service account to access the BigQuery source
+     * table.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The serviceAgentType. + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType getServiceAgentType() { + com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType result = + com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType.forNumber( + serviceAgentType_); + return result == null + ? com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType.UNRECOGNIZED + : result; + } + /** + * + * + *
+     * Optional. Service agent type used during data sync. By default, the Vertex
+     * AI Service Agent is used. When using an IAM Policy to isolate this
+     * FeatureView within a project, a separate service account should be
+     * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+     * This will generate a separate service account to access the BigQuery source
+     * table.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The serviceAgentType to set. + * @return This builder for chaining. + */ + public Builder setServiceAgentType( + com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000200; + serviceAgentType_ = value.getNumber(); + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Service agent type used during data sync. By default, the Vertex
+     * AI Service Agent is used. When using an IAM Policy to isolate this
+     * FeatureView within a project, a separate service account should be
+     * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+     * This will generate a separate service account to access the BigQuery source
+     * table.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearServiceAgentType() { + bitField0_ = (bitField0_ & ~0x00000200); + serviceAgentType_ = 0; + onChanged(); + return this; + } + + private java.lang.Object serviceAccountEmail_ = ""; + /** + * + * + *
+     * Output only. A Service Account unique to this FeatureView. The role
+     * bigquery.dataViewer should be granted to this service account to allow
+     * Vertex AI Feature Store to sync data to the online store.
+     * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The serviceAccountEmail. + */ + public java.lang.String getServiceAccountEmail() { + java.lang.Object ref = serviceAccountEmail_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + serviceAccountEmail_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Output only. A Service Account unique to this FeatureView. The role
+     * bigquery.dataViewer should be granted to this service account to allow
+     * Vertex AI Feature Store to sync data to the online store.
+     * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for serviceAccountEmail. + */ + public com.google.protobuf.ByteString getServiceAccountEmailBytes() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccountEmail_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Output only. A Service Account unique to this FeatureView. The role
+     * bigquery.dataViewer should be granted to this service account to allow
+     * Vertex AI Feature Store to sync data to the online store.
+     * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The serviceAccountEmail to set. + * @return This builder for chaining. + */ + public Builder setServiceAccountEmail(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + serviceAccountEmail_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A Service Account unique to this FeatureView. The role
+     * bigquery.dataViewer should be granted to this service account to allow
+     * Vertex AI Feature Store to sync data to the online store.
+     * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearServiceAccountEmail() { + serviceAccountEmail_ = getDefaultInstance().getServiceAccountEmail(); + bitField0_ = (bitField0_ & ~0x00000400); + onChanged(); + return this; + } + /** + * + * + *
+     * Output only. A Service Account unique to this FeatureView. The role
+     * bigquery.dataViewer should be granted to this service account to allow
+     * Vertex AI Feature Store to sync data to the online store.
+     * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for serviceAccountEmail to set. + * @return This builder for chaining. + */ + public Builder setServiceAccountEmailBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + serviceAccountEmail_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewDataKey.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewDataKey.java index 8f9f489d3585..2dc35e298928 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewDataKey.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewDataKey.java @@ -61,6 +61,797 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.Builder.class); } + public interface CompositeKeyOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @return A list containing the parts. + */ + java.util.List getPartsList(); + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @return The count of parts. + */ + int getPartsCount(); + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @param index The index of the element to return. + * @return The parts at the given index. + */ + java.lang.String getParts(int index); + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @param index The index of the value to return. + * @return The bytes of the parts at the given index. + */ + com.google.protobuf.ByteString getPartsBytes(int index); + } + /** + * + * + *
+   * ID that is comprised from several parts (columns).
+   * 
+ * + * Protobuf type {@code google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey} + */ + public static final class CompositeKey extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) + CompositeKeyOrBuilder { + private static final long serialVersionUID = 0L; + // Use CompositeKey.newBuilder() to construct. + private CompositeKey(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private CompositeKey() { + parts_ = com.google.protobuf.LazyStringArrayList.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new CompositeKey(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.aiplatform.v1beta1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.aiplatform.v1beta1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.class, + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.Builder.class); + } + + public static final int PARTS_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList parts_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @return A list containing the parts. + */ + public com.google.protobuf.ProtocolStringList getPartsList() { + return parts_; + } + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @return The count of parts. + */ + public int getPartsCount() { + return parts_.size(); + } + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @param index The index of the element to return. + * @return The parts at the given index. + */ + public java.lang.String getParts(int index) { + return parts_.get(index); + } + /** + * + * + *
+     * Parts to construct Entity ID. Should match with the same ID columns as
+     * defined in FeatureView in the same order.
+     * 
+ * + * repeated string parts = 1; + * + * @param index The index of the value to return. + * @return The bytes of the parts at the given index. + */ + public com.google.protobuf.ByteString getPartsBytes(int index) { + return parts_.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 { + for (int i = 0; i < parts_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parts_.getRaw(i)); + } + 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 < parts_.size(); i++) { + dataSize += computeStringSizeNoTag(parts_.getRaw(i)); + } + size += dataSize; + size += 1 * getPartsList().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 com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey)) { + return super.equals(obj); + } + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey other = + (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) obj; + + if (!getPartsList().equals(other.getPartsList())) 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 (getPartsCount() > 0) { + hash = (37 * hash) + PARTS_FIELD_NUMBER; + hash = (53 * hash) + getPartsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey 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 com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + 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 com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey 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( + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey 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; + } + /** + * + * + *
+     * ID that is comprised from several parts (columns).
+     * 
+ * + * Protobuf type {@code google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKeyOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.aiplatform.v1beta1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.aiplatform.v1beta1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.class, + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.Builder.class); + } + + // Construct using + // com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + parts_ = com.google.protobuf.LazyStringArrayList.emptyList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.aiplatform.v1beta1.FeatureOnlineStoreServiceProto + .internal_static_google_cloud_aiplatform_v1beta1_FeatureViewDataKey_CompositeKey_descriptor; + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + getDefaultInstanceForType() { + return com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey build() { + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey buildPartial() { + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey result = + new com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + parts_.makeImmutable(); + result.parts_ = parts_; + } + } + + @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 com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) { + return mergeFrom( + (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey other) { + if (other + == com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + .getDefaultInstance()) return this; + if (!other.parts_.isEmpty()) { + if (parts_.isEmpty()) { + parts_ = other.parts_; + bitField0_ |= 0x00000001; + } else { + ensurePartsIsMutable(); + parts_.addAll(other.parts_); + } + 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: + { + java.lang.String s = input.readStringRequireUtf8(); + ensurePartsIsMutable(); + parts_.add(s); + 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 com.google.protobuf.LazyStringArrayList parts_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensurePartsIsMutable() { + if (!parts_.isModifiable()) { + parts_ = new com.google.protobuf.LazyStringArrayList(parts_); + } + bitField0_ |= 0x00000001; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @return A list containing the parts. + */ + public com.google.protobuf.ProtocolStringList getPartsList() { + parts_.makeImmutable(); + return parts_; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @return The count of parts. + */ + public int getPartsCount() { + return parts_.size(); + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param index The index of the element to return. + * @return The parts at the given index. + */ + public java.lang.String getParts(int index) { + return parts_.get(index); + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param index The index of the value to return. + * @return The bytes of the parts at the given index. + */ + public com.google.protobuf.ByteString getPartsBytes(int index) { + return parts_.getByteString(index); + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param index The index to set the value at. + * @param value The parts to set. + * @return This builder for chaining. + */ + public Builder setParts(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensurePartsIsMutable(); + parts_.set(index, value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param value The parts to add. + * @return This builder for chaining. + */ + public Builder addParts(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensurePartsIsMutable(); + parts_.add(value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param values The parts to add. + * @return This builder for chaining. + */ + public Builder addAllParts(java.lang.Iterable values) { + ensurePartsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, parts_); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @return This builder for chaining. + */ + public Builder clearParts() { + parts_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + ; + onChanged(); + return this; + } + /** + * + * + *
+       * Parts to construct Entity ID. Should match with the same ID columns as
+       * defined in FeatureView in the same order.
+       * 
+ * + * repeated string parts = 1; + * + * @param value The bytes of the parts to add. + * @return This builder for chaining. + */ + public Builder addPartsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensurePartsIsMutable(); + parts_.add(value); + bitField0_ |= 0x00000001; + 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:google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) + } + + // @@protoc_insertion_point(class_scope:google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) + private static final com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey(); + } + + public static com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CompositeKey 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 com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + private int keyOneofCase_ = 0; @SuppressWarnings("serial") @@ -71,6 +862,7 @@ public enum KeyOneofCase com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { KEY(1), + COMPOSITE_KEY(2), KEYONEOF_NOT_SET(0); private final int value; @@ -91,6 +883,8 @@ public static KeyOneofCase forNumber(int value) { switch (value) { case 1: return KEY; + case 2: + return COMPOSITE_KEY; case 0: return KEYONEOF_NOT_SET; default: @@ -177,6 +971,64 @@ public com.google.protobuf.ByteString getKeyBytes() { } } + public static final int COMPOSITE_KEY_FIELD_NUMBER = 2; + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * + * @return Whether the compositeKey field is set. + */ + @java.lang.Override + public boolean hasCompositeKey() { + return keyOneofCase_ == 2; + } + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * + * @return The compositeKey. + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey getCompositeKey() { + if (keyOneofCase_ == 2) { + return (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) keyOneof_; + } + return com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKeyOrBuilder + getCompositeKeyOrBuilder() { + if (keyOneofCase_ == 2) { + return (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) keyOneof_; + } + return com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -194,6 +1046,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (keyOneofCase_ == 1) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, keyOneof_); } + if (keyOneofCase_ == 2) { + output.writeMessage( + 2, (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) keyOneof_); + } getUnknownFields().writeTo(output); } @@ -206,6 +1062,11 @@ public int getSerializedSize() { if (keyOneofCase_ == 1) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, keyOneof_); } + if (keyOneofCase_ == 2) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 2, (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) keyOneof_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -227,6 +1088,9 @@ public boolean equals(final java.lang.Object obj) { case 1: if (!getKey().equals(other.getKey())) return false; break; + case 2: + if (!getCompositeKey().equals(other.getCompositeKey())) return false; + break; case 0: default: } @@ -246,6 +1110,10 @@ public int hashCode() { hash = (37 * hash) + KEY_FIELD_NUMBER; hash = (53 * hash) + getKey().hashCode(); break; + case 2: + hash = (37 * hash) + COMPOSITE_KEY_FIELD_NUMBER; + hash = (53 * hash) + getCompositeKey().hashCode(); + break; case 0: default: } @@ -389,6 +1257,9 @@ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; + if (compositeKeyBuilder_ != null) { + compositeKeyBuilder_.clear(); + } keyOneofCase_ = 0; keyOneof_ = null; return this; @@ -433,6 +1304,9 @@ private void buildPartial0(com.google.cloud.aiplatform.v1beta1.FeatureViewDataKe private void buildPartialOneofs(com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey result) { result.keyOneofCase_ = keyOneofCase_; result.keyOneof_ = this.keyOneof_; + if (keyOneofCase_ == 2 && compositeKeyBuilder_ != null) { + result.keyOneof_ = compositeKeyBuilder_.build(); + } } @java.lang.Override @@ -489,6 +1363,11 @@ public Builder mergeFrom(com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey onChanged(); break; } + case COMPOSITE_KEY: + { + mergeCompositeKey(other.getCompositeKey()); + break; + } case KEYONEOF_NOT_SET: { break; @@ -527,6 +1406,12 @@ public Builder mergeFrom( keyOneof_ = s; break; } // case 10 + case 18: + { + input.readMessage(getCompositeKeyFieldBuilder().getBuilder(), extensionRegistry); + keyOneofCase_ = 2; + break; + } // case 18 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -694,6 +1579,246 @@ public Builder setKeyBytes(com.google.protobuf.ByteString value) { return this; } + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey, + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.Builder, + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKeyOrBuilder> + compositeKeyBuilder_; + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * + * @return Whether the compositeKey field is set. + */ + @java.lang.Override + public boolean hasCompositeKey() { + return keyOneofCase_ == 2; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * + * @return The compositeKey. + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey getCompositeKey() { + if (compositeKeyBuilder_ == null) { + if (keyOneofCase_ == 2) { + return (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) keyOneof_; + } + return com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + .getDefaultInstance(); + } else { + if (keyOneofCase_ == 2) { + return compositeKeyBuilder_.getMessage(); + } + return com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + .getDefaultInstance(); + } + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + public Builder setCompositeKey( + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey value) { + if (compositeKeyBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + keyOneof_ = value; + onChanged(); + } else { + compositeKeyBuilder_.setMessage(value); + } + keyOneofCase_ = 2; + return this; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + public Builder setCompositeKey( + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.Builder + builderForValue) { + if (compositeKeyBuilder_ == null) { + keyOneof_ = builderForValue.build(); + onChanged(); + } else { + compositeKeyBuilder_.setMessage(builderForValue.build()); + } + keyOneofCase_ = 2; + return this; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + public Builder mergeCompositeKey( + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey value) { + if (compositeKeyBuilder_ == null) { + if (keyOneofCase_ == 2 + && keyOneof_ + != com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + .getDefaultInstance()) { + keyOneof_ = + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.newBuilder( + (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) + keyOneof_) + .mergeFrom(value) + .buildPartial(); + } else { + keyOneof_ = value; + } + onChanged(); + } else { + if (keyOneofCase_ == 2) { + compositeKeyBuilder_.mergeFrom(value); + } else { + compositeKeyBuilder_.setMessage(value); + } + } + keyOneofCase_ = 2; + return this; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + public Builder clearCompositeKey() { + if (compositeKeyBuilder_ == null) { + if (keyOneofCase_ == 2) { + keyOneofCase_ = 0; + keyOneof_ = null; + onChanged(); + } + } else { + if (keyOneofCase_ == 2) { + keyOneofCase_ = 0; + keyOneof_ = null; + } + compositeKeyBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + public com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.Builder + getCompositeKeyBuilder() { + return getCompositeKeyFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKeyOrBuilder + getCompositeKeyOrBuilder() { + if ((keyOneofCase_ == 2) && (compositeKeyBuilder_ != null)) { + return compositeKeyBuilder_.getMessageOrBuilder(); + } else { + if (keyOneofCase_ == 2) { + return (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) keyOneof_; + } + return com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + .getDefaultInstance(); + } + } + /** + * + * + *
+     * The actual Entity ID will be composed from this struct. This should match
+     * with the way ID is defined in the FeatureView spec.
+     * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey, + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.Builder, + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKeyOrBuilder> + getCompositeKeyFieldBuilder() { + if (compositeKeyBuilder_ == null) { + if (!(keyOneofCase_ == 2)) { + keyOneof_ = + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey + .getDefaultInstance(); + } + compositeKeyBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey, + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey.Builder, + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKeyOrBuilder>( + (com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey) keyOneof_, + getParentForChildren(), + isClean()); + keyOneof_ = null; + } + keyOneofCase_ = 2; + onChanged(); + return compositeKeyBuilder_; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewDataKeyOrBuilder.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewDataKeyOrBuilder.java index f3e486a381c1..807753f670c6 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewDataKeyOrBuilder.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewDataKeyOrBuilder.java @@ -61,5 +61,47 @@ public interface FeatureViewDataKeyOrBuilder */ com.google.protobuf.ByteString getKeyBytes(); + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * + * @return Whether the compositeKey field is set. + */ + boolean hasCompositeKey(); + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + * + * @return The compositeKey. + */ + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey getCompositeKey(); + /** + * + * + *
+   * The actual Entity ID will be composed from this struct. This should match
+   * with the way ID is defined in the FeatureView spec.
+   * 
+ * + * .google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKey composite_key = 2; + * + */ + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.CompositeKeyOrBuilder + getCompositeKeyOrBuilder(); + com.google.cloud.aiplatform.v1beta1.FeatureViewDataKey.KeyOneofCase getKeyOneofCase(); } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewOrBuilder.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewOrBuilder.java index 78f7c3e00907..8b0a75c13eb8 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewOrBuilder.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewOrBuilder.java @@ -444,5 +444,73 @@ java.lang.String getLabelsOrDefault( com.google.cloud.aiplatform.v1beta1.FeatureView.VectorSearchConfigOrBuilder getVectorSearchConfigOrBuilder(); + /** + * + * + *
+   * Optional. Service agent type used during data sync. By default, the Vertex
+   * AI Service Agent is used. When using an IAM Policy to isolate this
+   * FeatureView within a project, a separate service account should be
+   * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+   * This will generate a separate service account to access the BigQuery source
+   * table.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for serviceAgentType. + */ + int getServiceAgentTypeValue(); + /** + * + * + *
+   * Optional. Service agent type used during data sync. By default, the Vertex
+   * AI Service Agent is used. When using an IAM Policy to isolate this
+   * FeatureView within a project, a separate service account should be
+   * provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`.
+   * This will generate a separate service account to access the BigQuery source
+   * table.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType service_agent_type = 14 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The serviceAgentType. + */ + com.google.cloud.aiplatform.v1beta1.FeatureView.ServiceAgentType getServiceAgentType(); + + /** + * + * + *
+   * Output only. A Service Account unique to this FeatureView. The role
+   * bigquery.dataViewer should be granted to this service account to allow
+   * Vertex AI Feature Store to sync data to the online store.
+   * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The serviceAccountEmail. + */ + java.lang.String getServiceAccountEmail(); + /** + * + * + *
+   * Output only. A Service Account unique to this FeatureView. The role
+   * bigquery.dataViewer should be granted to this service account to allow
+   * Vertex AI Feature Store to sync data to the online store.
+   * 
+ * + * string service_account_email = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for serviceAccountEmail. + */ + com.google.protobuf.ByteString getServiceAccountEmailBytes(); + com.google.cloud.aiplatform.v1beta1.FeatureView.SourceCase getSourceCase(); } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewProto.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewProto.java index 715c543c018b..5d838b21df84 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewProto.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FeatureViewProto.java @@ -77,7 +77,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "e_view.proto\022\037google.cloud.aiplatform.v1" + "beta1\032\037google/api/field_behavior.proto\032\031" + "google/api/resource.proto\032\037google/protob" - + "uf/timestamp.proto\"\207\017\n\013FeatureView\022\\\n\020bi" + + "uf/timestamp.proto\"\210\021\n\013FeatureView\022\\\n\020bi" + "g_query_source\030\006 \001(\0132;.google.cloud.aipl" + "atform.v1beta1.FeatureView.BigQuerySourc" + "eB\003\340A\001H\000\022j\n\027feature_registry_source\030\t \001(" @@ -92,46 +92,53 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "(\01327.google.cloud.aiplatform.v1beta1.Fea" + "tureView.SyncConfig\022b\n\024vector_search_con" + "fig\030\010 \001(\0132?.google.cloud.aiplatform.v1be" - + "ta1.FeatureView.VectorSearchConfigB\003\340A\001\032" - + "B\n\016BigQuerySource\022\020\n\003uri\030\001 \001(\tB\003\340A\002\022\036\n\021e" - + "ntity_id_columns\030\002 \003(\tB\003\340A\002\032\032\n\nSyncConfi" - + "g\022\014\n\004cron\030\001 \001(\t\032\222\006\n\022VectorSearchConfig\022k" - + "\n\016tree_ah_config\030\010 \001(\0132L.google.cloud.ai" - + "platform.v1beta1.FeatureView.VectorSearc" - + "hConfig.TreeAHConfigB\003\340A\001H\000\022s\n\022brute_for" - + "ce_config\030\t \001(\0132P.google.cloud.aiplatfor" - + "m.v1beta1.FeatureView.VectorSearchConfig" - + ".BruteForceConfigB\003\340A\001H\000\022\035\n\020embedding_co" - + "lumn\030\003 \001(\tB\003\340A\001\022\033\n\016filter_columns\030\004 \003(\tB" - + "\003\340A\001\022\034\n\017crowding_column\030\005 \001(\tB\003\340A\001\022%\n\023em" - + "bedding_dimension\030\006 \001(\005B\003\340A\001H\001\210\001\001\022w\n\025dis" - + "tance_measure_type\030\007 \001(\0162S.google.cloud." - + "aiplatform.v1beta1.FeatureView.VectorSea" - + "rchConfig.DistanceMeasureTypeB\003\340A\001\032\022\n\020Br" - + "uteForceConfig\032Y\n\014TreeAHConfig\022+\n\031leaf_n" - + "ode_embedding_count\030\001 \001(\003B\003\340A\001H\000\210\001\001B\034\n\032_" - + "leaf_node_embedding_count\"\204\001\n\023DistanceMe" - + "asureType\022%\n!DISTANCE_MEASURE_TYPE_UNSPE" - + "CIFIED\020\000\022\027\n\023SQUARED_L2_DISTANCE\020\001\022\023\n\017COS" - + "INE_DISTANCE\020\002\022\030\n\024DOT_PRODUCT_DISTANCE\020\003" - + "B\022\n\020algorithm_configB\026\n\024_embedding_dimen" - + "sion\032\316\001\n\025FeatureRegistrySource\022l\n\016featur" - + "e_groups\030\001 \003(\0132O.google.cloud.aiplatform" - + ".v1beta1.FeatureView.FeatureRegistrySour" - + "ce.FeatureGroupB\003\340A\002\032G\n\014FeatureGroup\022\035\n\020" - + "feature_group_id\030\001 \001(\tB\003\340A\002\022\030\n\013feature_i" - + "ds\030\002 \003(\tB\003\340A\002\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(" - + "\t\022\r\n\005value\030\002 \001(\t:\0028\001:\233\001\352A\227\001\n%aiplatform." - + "googleapis.com/FeatureView\022nprojects/{pr" - + "oject}/locations/{location}/featureOnlin" - + "eStores/{feature_online_store}/featureVi" - + "ews/{feature_view}B\010\n\006sourceB\347\001\n#com.goo" - + "gle.cloud.aiplatform.v1beta1B\020FeatureVie" - + "wProtoP\001ZCcloud.google.com/go/aiplatform" - + "/apiv1beta1/aiplatformpb;aiplatformpb\252\002\037" - + "Google.Cloud.AIPlatform.V1Beta1\312\002\037Google" - + "\\Cloud\\AIPlatform\\V1beta1\352\002\"Google::Clou" - + "d::AIPlatform::V1beta1b\006proto3" + + "ta1.FeatureView.VectorSearchConfigB\003\340A\001\022" + + "^\n\022service_agent_type\030\016 \001(\0162=.google.clo" + + "ud.aiplatform.v1beta1.FeatureView.Servic" + + "eAgentTypeB\003\340A\001\022\"\n\025service_account_email" + + "\030\r \001(\tB\003\340A\003\032B\n\016BigQuerySource\022\020\n\003uri\030\001 \001" + + "(\tB\003\340A\002\022\036\n\021entity_id_columns\030\002 \003(\tB\003\340A\002\032" + + "\032\n\nSyncConfig\022\014\n\004cron\030\001 \001(\t\032\222\006\n\022VectorSe" + + "archConfig\022k\n\016tree_ah_config\030\010 \001(\0132L.goo" + + "gle.cloud.aiplatform.v1beta1.FeatureView" + + ".VectorSearchConfig.TreeAHConfigB\003\340A\001H\000\022" + + "s\n\022brute_force_config\030\t \001(\0132P.google.clo" + + "ud.aiplatform.v1beta1.FeatureView.Vector" + + "SearchConfig.BruteForceConfigB\003\340A\001H\000\022\035\n\020" + + "embedding_column\030\003 \001(\tB\003\340A\001\022\033\n\016filter_co" + + "lumns\030\004 \003(\tB\003\340A\001\022\034\n\017crowding_column\030\005 \001(" + + "\tB\003\340A\001\022%\n\023embedding_dimension\030\006 \001(\005B\003\340A\001" + + "H\001\210\001\001\022w\n\025distance_measure_type\030\007 \001(\0162S.g" + + "oogle.cloud.aiplatform.v1beta1.FeatureVi" + + "ew.VectorSearchConfig.DistanceMeasureTyp" + + "eB\003\340A\001\032\022\n\020BruteForceConfig\032Y\n\014TreeAHConf" + + "ig\022+\n\031leaf_node_embedding_count\030\001 \001(\003B\003\340" + + "A\001H\000\210\001\001B\034\n\032_leaf_node_embedding_count\"\204\001" + + "\n\023DistanceMeasureType\022%\n!DISTANCE_MEASUR" + + "E_TYPE_UNSPECIFIED\020\000\022\027\n\023SQUARED_L2_DISTA" + + "NCE\020\001\022\023\n\017COSINE_DISTANCE\020\002\022\030\n\024DOT_PRODUC" + + "T_DISTANCE\020\003B\022\n\020algorithm_configB\026\n\024_emb" + + "edding_dimension\032\316\001\n\025FeatureRegistrySour" + + "ce\022l\n\016feature_groups\030\001 \003(\0132O.google.clou" + + "d.aiplatform.v1beta1.FeatureView.Feature" + + "RegistrySource.FeatureGroupB\003\340A\002\032G\n\014Feat" + + "ureGroup\022\035\n\020feature_group_id\030\001 \001(\tB\003\340A\002\022" + + "\030\n\013feature_ids\030\002 \003(\tB\003\340A\002\032-\n\013LabelsEntry" + + "\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"{\n\020Serv" + + "iceAgentType\022\"\n\036SERVICE_AGENT_TYPE_UNSPE" + + "CIFIED\020\000\022\036\n\032SERVICE_AGENT_TYPE_PROJECT\020\001" + + "\022#\n\037SERVICE_AGENT_TYPE_FEATURE_VIEW\020\002:\233\001" + + "\352A\227\001\n%aiplatform.googleapis.com/FeatureV" + + "iew\022nprojects/{project}/locations/{locat" + + "ion}/featureOnlineStores/{feature_online" + + "_store}/featureViews/{feature_view}B\010\n\006s" + + "ourceB\347\001\n#com.google.cloud.aiplatform.v1" + + "beta1B\020FeatureViewProtoP\001ZCcloud.google." + + "com/go/aiplatform/apiv1beta1/aiplatformp" + + "b;aiplatformpb\252\002\037Google.Cloud.AIPlatform" + + ".V1Beta1\312\002\037Google\\Cloud\\AIPlatform\\V1bet" + + "a1\352\002\"Google::Cloud::AIPlatform::V1beta1b" + + "\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -156,6 +163,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Labels", "SyncConfig", "VectorSearchConfig", + "ServiceAgentType", + "ServiceAccountEmail", "Source", }); internal_static_google_cloud_aiplatform_v1beta1_FeatureView_BigQuerySource_descriptor = diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FetchFeatureValuesRequest.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FetchFeatureValuesRequest.java index 50bcda1c0e7c..fdcc51b8e379 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FetchFeatureValuesRequest.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FetchFeatureValuesRequest.java @@ -287,7 +287,7 @@ public EntityIdCase getEntityIdCase() { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return Whether the id field is set. */ @java.lang.Deprecated @@ -305,7 +305,7 @@ public boolean hasId() { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return The id. */ @java.lang.Deprecated @@ -336,7 +336,7 @@ public java.lang.String getId() { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return The bytes for id. */ @java.lang.Deprecated @@ -531,7 +531,7 @@ public com.google.cloud.aiplatform.v1beta1.FeatureViewDataFormat getDataFormat() * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @return The enum numeric value on the wire for format. */ @java.lang.Override @@ -553,7 +553,7 @@ public int getFormatValue() { * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @return The format. */ @java.lang.Override @@ -1087,7 +1087,7 @@ public Builder clearEntityId() { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return Whether the id field is set. */ @java.lang.Override @@ -1106,7 +1106,7 @@ public boolean hasId() { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return The id. */ @java.lang.Override @@ -1138,7 +1138,7 @@ public java.lang.String getId() { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return The bytes for id. */ @java.lang.Override @@ -1170,7 +1170,7 @@ public com.google.protobuf.ByteString getIdBytes() { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @param value The id to set. * @return This builder for chaining. */ @@ -1195,7 +1195,7 @@ public Builder setId(java.lang.String value) { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return This builder for chaining. */ @java.lang.Deprecated @@ -1218,7 +1218,7 @@ public Builder clearId() { * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @param value The bytes for id to set. * @return This builder for chaining. */ @@ -1687,7 +1687,7 @@ public Builder clearDataFormat() { * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. - * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @return The enum numeric value on the wire for format. */ @java.lang.Override @@ -1709,7 +1709,7 @@ public int getFormatValue() { * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. - * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @param value The enum numeric value on the wire for format to set. * @return This builder for chaining. */ @@ -1734,7 +1734,7 @@ public Builder setFormatValue(int value) { * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. - * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @return The format. */ @java.lang.Override @@ -1760,7 +1760,7 @@ public com.google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.Format getF * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. - * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @param value The format to set. * @return This builder for chaining. */ @@ -1789,7 +1789,7 @@ public Builder setFormat( * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. - * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * See google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @return This builder for chaining. */ @java.lang.Deprecated diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FetchFeatureValuesRequestOrBuilder.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FetchFeatureValuesRequestOrBuilder.java index a56723bf3756..07d7f1c03a75 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FetchFeatureValuesRequestOrBuilder.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/FetchFeatureValuesRequestOrBuilder.java @@ -35,7 +35,7 @@ public interface FetchFeatureValuesRequestOrBuilder * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return Whether the id field is set. */ @java.lang.Deprecated @@ -51,7 +51,7 @@ public interface FetchFeatureValuesRequestOrBuilder * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return The id. */ @java.lang.Deprecated @@ -67,7 +67,7 @@ public interface FetchFeatureValuesRequestOrBuilder * string id = 3 [deprecated = true]; * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.id is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=105 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=116 * @return The bytes for id. */ @java.lang.Deprecated @@ -192,7 +192,7 @@ public interface FetchFeatureValuesRequestOrBuilder * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @return The enum numeric value on the wire for format. */ @java.lang.Deprecated @@ -211,7 +211,7 @@ public interface FetchFeatureValuesRequestOrBuilder * * * @deprecated google.cloud.aiplatform.v1beta1.FetchFeatureValuesRequest.format is deprecated. See - * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=129 + * google/cloud/aiplatform/v1beta1/feature_online_store_service.proto;l=140 * @return The format. */ @java.lang.Deprecated diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/PersistentResourceProto.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/PersistentResourceProto.java index 41daa017fe01..180b03d12ce8 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/PersistentResourceProto.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/PersistentResourceProto.java @@ -68,6 +68,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_aiplatform_v1beta1_ServiceAccountSpec_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_cloud_aiplatform_v1beta1_ServiceAccountSpec_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { return descriptor; @@ -129,26 +133,29 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "c\022V\n\024service_account_spec\030\002 \001(\01323.google" + ".cloud.aiplatform.v1beta1.ServiceAccount" + "SpecB\003\340A\001\022?\n\010ray_spec\030\001 \001(\0132(.google.clo" - + "ud.aiplatform.v1beta1.RaySpecB\003\340A\001\"\352\001\n\007R" + + "ud.aiplatform.v1beta1.RaySpecB\003\340A\001\"\270\002\n\007R" + "aySpec\022\026\n\timage_uri\030\001 \001(\tB\003\340A\001\022c\n\024resour" + "ce_pool_images\030\006 \003(\0132@.google.cloud.aipl" + "atform.v1beta1.RaySpec.ResourcePoolImage" + "sEntryB\003\340A\001\022\'\n\032head_node_resource_pool_i" - + "d\030\007 \001(\tB\003\340A\001\0329\n\027ResourcePoolImagesEntry\022" - + "\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\240\001\n\017Reso" - + "urceRuntime\022Z\n\013access_uris\030\001 \003(\0132@.googl" - + "e.cloud.aiplatform.v1beta1.ResourceRunti" - + "me.AccessUrisEntryB\003\340A\003\0321\n\017AccessUrisEnt" - + "ry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"^\n\022Se" - + "rviceAccountSpec\022*\n\035enable_custom_servic" - + "e_account\030\001 \001(\010B\003\340A\002\022\034\n\017service_account\030" - + "\002 \001(\tB\003\340A\001B\356\001\n#com.google.cloud.aiplatfo" - + "rm.v1beta1B\027PersistentResourceProtoP\001ZCc" - + "loud.google.com/go/aiplatform/apiv1beta1" - + "/aiplatformpb;aiplatformpb\252\002\037Google.Clou" - + "d.AIPlatform.V1Beta1\312\002\037Google\\Cloud\\AIPl" - + "atform\\V1beta1\352\002\"Google::Cloud::AIPlatfo" - + "rm::V1beta1b\006proto3" + + "d\030\007 \001(\tB\003\340A\001\022L\n\017ray_metric_spec\030\010 \001(\0132.." + + "google.cloud.aiplatform.v1beta1.RayMetri" + + "cSpecB\003\340A\001\0329\n\027ResourcePoolImagesEntry\022\013\n" + + "\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\240\001\n\017Resour" + + "ceRuntime\022Z\n\013access_uris\030\001 \003(\0132@.google." + + "cloud.aiplatform.v1beta1.ResourceRuntime" + + ".AccessUrisEntryB\003\340A\003\0321\n\017AccessUrisEntry" + + "\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"^\n\022Serv" + + "iceAccountSpec\022*\n\035enable_custom_service_" + + "account\030\001 \001(\010B\003\340A\002\022\034\n\017service_account\030\002 " + + "\001(\tB\003\340A\001\"&\n\rRayMetricSpec\022\025\n\010disabled\030\001 " + + "\001(\010B\003\340A\001B\356\001\n#com.google.cloud.aiplatform" + + ".v1beta1B\027PersistentResourceProtoP\001ZCclo" + + "ud.google.com/go/aiplatform/apiv1beta1/a" + + "iplatformpb;aiplatformpb\252\002\037Google.Cloud." + + "AIPlatform.V1Beta1\312\002\037Google\\Cloud\\AIPlat" + + "form\\V1beta1\352\002\"Google::Cloud::AIPlatform" + + "::V1beta1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -229,7 +236,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_cloud_aiplatform_v1beta1_RaySpec_descriptor, new java.lang.String[] { - "ImageUri", "ResourcePoolImages", "HeadNodeResourcePoolId", + "ImageUri", "ResourcePoolImages", "HeadNodeResourcePoolId", "RayMetricSpec", }); internal_static_google_cloud_aiplatform_v1beta1_RaySpec_ResourcePoolImagesEntry_descriptor = internal_static_google_cloud_aiplatform_v1beta1_RaySpec_descriptor.getNestedTypes().get(0); @@ -265,6 +272,14 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "EnableCustomServiceAccount", "ServiceAccount", }); + internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_descriptor = + getDescriptor().getMessageTypes().get(6); + internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_descriptor, + new java.lang.String[] { + "Disabled", + }); com.google.protobuf.ExtensionRegistry registry = com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RayMetricSpec.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RayMetricSpec.java new file mode 100644 index 000000000000..fde59af309e9 --- /dev/null +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RayMetricSpec.java @@ -0,0 +1,535 @@ +/* + * Copyright 2024 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/cloud/aiplatform/v1beta1/persistent_resource.proto + +// Protobuf Java Version: 3.25.2 +package com.google.cloud.aiplatform.v1beta1; + +/** + * + * + *
+ * Configuration for the Ray metrics.
+ * 
+ * + * Protobuf type {@code google.cloud.aiplatform.v1beta1.RayMetricSpec} + */ +public final class RayMetricSpec extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.cloud.aiplatform.v1beta1.RayMetricSpec) + RayMetricSpecOrBuilder { + private static final long serialVersionUID = 0L; + // Use RayMetricSpec.newBuilder() to construct. + private RayMetricSpec(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private RayMetricSpec() {} + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new RayMetricSpec(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.aiplatform.v1beta1.PersistentResourceProto + .internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.aiplatform.v1beta1.PersistentResourceProto + .internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.aiplatform.v1beta1.RayMetricSpec.class, + com.google.cloud.aiplatform.v1beta1.RayMetricSpec.Builder.class); + } + + public static final int DISABLED_FIELD_NUMBER = 1; + private boolean disabled_ = false; + /** + * + * + *
+   * Optional. Flag to disable the Ray metrics collection.
+   * 
+ * + * bool disabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disabled. + */ + @java.lang.Override + public boolean getDisabled() { + return disabled_; + } + + 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 (disabled_ != false) { + output.writeBool(1, disabled_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (disabled_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, disabled_); + } + 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 com.google.cloud.aiplatform.v1beta1.RayMetricSpec)) { + return super.equals(obj); + } + com.google.cloud.aiplatform.v1beta1.RayMetricSpec other = + (com.google.cloud.aiplatform.v1beta1.RayMetricSpec) obj; + + if (getDisabled() != other.getDisabled()) 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) + DISABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisabled()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec 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 com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec 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 com.google.cloud.aiplatform.v1beta1.RayMetricSpec parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec 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(com.google.cloud.aiplatform.v1beta1.RayMetricSpec 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; + } + /** + * + * + *
+   * Configuration for the Ray metrics.
+   * 
+ * + * Protobuf type {@code google.cloud.aiplatform.v1beta1.RayMetricSpec} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.aiplatform.v1beta1.RayMetricSpec) + com.google.cloud.aiplatform.v1beta1.RayMetricSpecOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.aiplatform.v1beta1.PersistentResourceProto + .internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.aiplatform.v1beta1.PersistentResourceProto + .internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.aiplatform.v1beta1.RayMetricSpec.class, + com.google.cloud.aiplatform.v1beta1.RayMetricSpec.Builder.class); + } + + // Construct using com.google.cloud.aiplatform.v1beta1.RayMetricSpec.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + disabled_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.aiplatform.v1beta1.PersistentResourceProto + .internal_static_google_cloud_aiplatform_v1beta1_RayMetricSpec_descriptor; + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.RayMetricSpec getDefaultInstanceForType() { + return com.google.cloud.aiplatform.v1beta1.RayMetricSpec.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.RayMetricSpec build() { + com.google.cloud.aiplatform.v1beta1.RayMetricSpec result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.RayMetricSpec buildPartial() { + com.google.cloud.aiplatform.v1beta1.RayMetricSpec result = + new com.google.cloud.aiplatform.v1beta1.RayMetricSpec(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.cloud.aiplatform.v1beta1.RayMetricSpec result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.disabled_ = disabled_; + } + } + + @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 com.google.cloud.aiplatform.v1beta1.RayMetricSpec) { + return mergeFrom((com.google.cloud.aiplatform.v1beta1.RayMetricSpec) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.aiplatform.v1beta1.RayMetricSpec other) { + if (other == com.google.cloud.aiplatform.v1beta1.RayMetricSpec.getDefaultInstance()) + return this; + if (other.getDisabled() != false) { + setDisabled(other.getDisabled()); + } + 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 8: + { + disabled_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + 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 boolean disabled_; + /** + * + * + *
+     * Optional. Flag to disable the Ray metrics collection.
+     * 
+ * + * bool disabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disabled. + */ + @java.lang.Override + public boolean getDisabled() { + return disabled_; + } + /** + * + * + *
+     * Optional. Flag to disable the Ray metrics collection.
+     * 
+ * + * bool disabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The disabled to set. + * @return This builder for chaining. + */ + public Builder setDisabled(boolean value) { + + disabled_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Flag to disable the Ray metrics collection.
+     * 
+ * + * bool disabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearDisabled() { + bitField0_ = (bitField0_ & ~0x00000001); + disabled_ = false; + 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:google.cloud.aiplatform.v1beta1.RayMetricSpec) + } + + // @@protoc_insertion_point(class_scope:google.cloud.aiplatform.v1beta1.RayMetricSpec) + private static final com.google.cloud.aiplatform.v1beta1.RayMetricSpec DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.aiplatform.v1beta1.RayMetricSpec(); + } + + public static com.google.cloud.aiplatform.v1beta1.RayMetricSpec getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public RayMetricSpec 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 com.google.cloud.aiplatform.v1beta1.RayMetricSpec getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RayMetricSpecOrBuilder.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RayMetricSpecOrBuilder.java new file mode 100644 index 000000000000..56becd5cd30c --- /dev/null +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RayMetricSpecOrBuilder.java @@ -0,0 +1,39 @@ +/* + * Copyright 2024 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/cloud/aiplatform/v1beta1/persistent_resource.proto + +// Protobuf Java Version: 3.25.2 +package com.google.cloud.aiplatform.v1beta1; + +public interface RayMetricSpecOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.aiplatform.v1beta1.RayMetricSpec) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Optional. Flag to disable the Ray metrics collection.
+   * 
+ * + * bool disabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The disabled. + */ + boolean getDisabled(); +} diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RaySpec.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RaySpec.java index 544acc8bcae1..7ea35831d1a2 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RaySpec.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RaySpec.java @@ -79,6 +79,7 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldRefl com.google.cloud.aiplatform.v1beta1.RaySpec.Builder.class); } + private int bitField0_; public static final int IMAGE_URI_FIELD_NUMBER = 1; @SuppressWarnings("serial") @@ -343,6 +344,62 @@ public com.google.protobuf.ByteString getHeadNodeResourcePoolIdBytes() { } } + public static final int RAY_METRIC_SPEC_FIELD_NUMBER = 8; + private com.google.cloud.aiplatform.v1beta1.RayMetricSpec rayMetricSpec_; + /** + * + * + *
+   * Optional. Ray metrics configurations.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the rayMetricSpec field is set. + */ + @java.lang.Override + public boolean hasRayMetricSpec() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * + * + *
+   * Optional. Ray metrics configurations.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The rayMetricSpec. + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.RayMetricSpec getRayMetricSpec() { + return rayMetricSpec_ == null + ? com.google.cloud.aiplatform.v1beta1.RayMetricSpec.getDefaultInstance() + : rayMetricSpec_; + } + /** + * + * + *
+   * Optional. Ray metrics configurations.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.cloud.aiplatform.v1beta1.RayMetricSpecOrBuilder getRayMetricSpecOrBuilder() { + return rayMetricSpec_ == null + ? com.google.cloud.aiplatform.v1beta1.RayMetricSpec.getDefaultInstance() + : rayMetricSpec_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -368,6 +425,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(headNodeResourcePoolId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, headNodeResourcePoolId_); } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(8, getRayMetricSpec()); + } getUnknownFields().writeTo(output); } @@ -393,6 +453,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(headNodeResourcePoolId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, headNodeResourcePoolId_); } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getRayMetricSpec()); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -413,6 +476,10 @@ public boolean equals(final java.lang.Object obj) { if (!internalGetResourcePoolImages().equals(other.internalGetResourcePoolImages())) return false; if (!getHeadNodeResourcePoolId().equals(other.getHeadNodeResourcePoolId())) return false; + if (hasRayMetricSpec() != other.hasRayMetricSpec()) return false; + if (hasRayMetricSpec()) { + if (!getRayMetricSpec().equals(other.getRayMetricSpec())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -432,6 +499,10 @@ public int hashCode() { } hash = (37 * hash) + HEAD_NODE_RESOURCE_POOL_ID_FIELD_NUMBER; hash = (53 * hash) + getHeadNodeResourcePoolId().hashCode(); + if (hasRayMetricSpec()) { + hash = (37 * hash) + RAY_METRIC_SPEC_FIELD_NUMBER; + hash = (53 * hash) + getRayMetricSpec().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -586,10 +657,19 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFi } // Construct using com.google.cloud.aiplatform.v1beta1.RaySpec.newBuilder() - private Builder() {} + private Builder() { + maybeForceBuilderInitialization(); + } private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getRayMetricSpecFieldBuilder(); + } } @java.lang.Override @@ -599,6 +679,11 @@ public Builder clear() { imageUri_ = ""; internalGetMutableResourcePoolImages().clear(); headNodeResourcePoolId_ = ""; + rayMetricSpec_ = null; + if (rayMetricSpecBuilder_ != null) { + rayMetricSpecBuilder_.dispose(); + rayMetricSpecBuilder_ = null; + } return this; } @@ -645,6 +730,13 @@ private void buildPartial0(com.google.cloud.aiplatform.v1beta1.RaySpec result) { if (((from_bitField0_ & 0x00000004) != 0)) { result.headNodeResourcePoolId_ = headNodeResourcePoolId_; } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000008) != 0)) { + result.rayMetricSpec_ = + rayMetricSpecBuilder_ == null ? rayMetricSpec_ : rayMetricSpecBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; } @java.lang.Override @@ -704,6 +796,9 @@ public Builder mergeFrom(com.google.cloud.aiplatform.v1beta1.RaySpec other) { bitField0_ |= 0x00000004; onChanged(); } + if (other.hasRayMetricSpec()) { + mergeRayMetricSpec(other.getRayMetricSpec()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -755,6 +850,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000004; break; } // case 58 + case 66: + { + input.readMessage(getRayMetricSpecFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000008; + break; + } // case 66 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1266,6 +1367,211 @@ public Builder setHeadNodeResourcePoolIdBytes(com.google.protobuf.ByteString val return this; } + private com.google.cloud.aiplatform.v1beta1.RayMetricSpec rayMetricSpec_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1beta1.RayMetricSpec, + com.google.cloud.aiplatform.v1beta1.RayMetricSpec.Builder, + com.google.cloud.aiplatform.v1beta1.RayMetricSpecOrBuilder> + rayMetricSpecBuilder_; + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the rayMetricSpec field is set. + */ + public boolean hasRayMetricSpec() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The rayMetricSpec. + */ + public com.google.cloud.aiplatform.v1beta1.RayMetricSpec getRayMetricSpec() { + if (rayMetricSpecBuilder_ == null) { + return rayMetricSpec_ == null + ? com.google.cloud.aiplatform.v1beta1.RayMetricSpec.getDefaultInstance() + : rayMetricSpec_; + } else { + return rayMetricSpecBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setRayMetricSpec(com.google.cloud.aiplatform.v1beta1.RayMetricSpec value) { + if (rayMetricSpecBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + rayMetricSpec_ = value; + } else { + rayMetricSpecBuilder_.setMessage(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setRayMetricSpec( + com.google.cloud.aiplatform.v1beta1.RayMetricSpec.Builder builderForValue) { + if (rayMetricSpecBuilder_ == null) { + rayMetricSpec_ = builderForValue.build(); + } else { + rayMetricSpecBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeRayMetricSpec(com.google.cloud.aiplatform.v1beta1.RayMetricSpec value) { + if (rayMetricSpecBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0) + && rayMetricSpec_ != null + && rayMetricSpec_ + != com.google.cloud.aiplatform.v1beta1.RayMetricSpec.getDefaultInstance()) { + getRayMetricSpecBuilder().mergeFrom(value); + } else { + rayMetricSpec_ = value; + } + } else { + rayMetricSpecBuilder_.mergeFrom(value); + } + if (rayMetricSpec_ != null) { + bitField0_ |= 0x00000008; + onChanged(); + } + return this; + } + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearRayMetricSpec() { + bitField0_ = (bitField0_ & ~0x00000008); + rayMetricSpec_ = null; + if (rayMetricSpecBuilder_ != null) { + rayMetricSpecBuilder_.dispose(); + rayMetricSpecBuilder_ = null; + } + onChanged(); + return this; + } + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.aiplatform.v1beta1.RayMetricSpec.Builder getRayMetricSpecBuilder() { + bitField0_ |= 0x00000008; + onChanged(); + return getRayMetricSpecFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.cloud.aiplatform.v1beta1.RayMetricSpecOrBuilder getRayMetricSpecOrBuilder() { + if (rayMetricSpecBuilder_ != null) { + return rayMetricSpecBuilder_.getMessageOrBuilder(); + } else { + return rayMetricSpec_ == null + ? com.google.cloud.aiplatform.v1beta1.RayMetricSpec.getDefaultInstance() + : rayMetricSpec_; + } + } + /** + * + * + *
+     * Optional. Ray metrics configurations.
+     * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1beta1.RayMetricSpec, + com.google.cloud.aiplatform.v1beta1.RayMetricSpec.Builder, + com.google.cloud.aiplatform.v1beta1.RayMetricSpecOrBuilder> + getRayMetricSpecFieldBuilder() { + if (rayMetricSpecBuilder_ == null) { + rayMetricSpecBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.aiplatform.v1beta1.RayMetricSpec, + com.google.cloud.aiplatform.v1beta1.RayMetricSpec.Builder, + com.google.cloud.aiplatform.v1beta1.RayMetricSpecOrBuilder>( + getRayMetricSpec(), getParentForChildren(), isClean()); + rayMetricSpec_ = null; + } + return rayMetricSpecBuilder_; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RaySpecOrBuilder.java b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RaySpecOrBuilder.java index 060f274e17b6..2b962bf779e0 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RaySpecOrBuilder.java +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/java/com/google/cloud/aiplatform/v1beta1/RaySpecOrBuilder.java @@ -197,4 +197,45 @@ java.lang.String getResourcePoolImagesOrDefault( * @return The bytes for headNodeResourcePoolId. */ com.google.protobuf.ByteString getHeadNodeResourcePoolIdBytes(); + + /** + * + * + *
+   * Optional. Ray metrics configurations.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the rayMetricSpec field is set. + */ + boolean hasRayMetricSpec(); + /** + * + * + *
+   * Optional. Ray metrics configurations.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The rayMetricSpec. + */ + com.google.cloud.aiplatform.v1beta1.RayMetricSpec getRayMetricSpec(); + /** + * + * + *
+   * Optional. Ray metrics configurations.
+   * 
+ * + * + * .google.cloud.aiplatform.v1beta1.RayMetricSpec ray_metric_spec = 8 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.cloud.aiplatform.v1beta1.RayMetricSpecOrBuilder getRayMetricSpecOrBuilder(); } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature.proto b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature.proto index f5510a91d6c1..f88981051723 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature.proto +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature.proto @@ -197,4 +197,8 @@ message Feature { // The name of the BigQuery Table/View column hosting data for this version. // If no value is provided, will use feature_id. string version_column_name = 106; + + // Entity responsible for maintaining this feature. Can be comma separated + // list of email addresses or URIs. + string point_of_contact = 107; } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature_online_store_service.proto b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature_online_store_service.proto index ba927583778a..d5876ac91e48 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature_online_store_service.proto +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature_online_store_service.proto @@ -73,9 +73,20 @@ enum FeatureViewDataFormat { // Lookup key for a feature view. message FeatureViewDataKey { + // ID that is comprised from several parts (columns). + message CompositeKey { + // Parts to construct Entity ID. Should match with the same ID columns as + // defined in FeatureView in the same order. + repeated string parts = 1; + } + oneof key_oneof { // String key to use for lookup. string key = 1; + + // The actual Entity ID will be composed from this struct. This should match + // with the way ID is defined in the FeatureView spec. + CompositeKey composite_key = 2; } } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature_view.proto b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature_view.proto index 3e4337d4c859..e24188e27ce3 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature_view.proto +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/feature_view.proto @@ -147,6 +147,22 @@ message FeatureView { [(google.api.field_behavior) = REQUIRED]; } + // Service agent type used during data sync. + enum ServiceAgentType { + // By default, the project-level Vertex AI Service Agent is enabled. + SERVICE_AGENT_TYPE_UNSPECIFIED = 0; + + // Indicates the project-level Vertex AI Service Agent + // (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) + // will be used during sync jobs. + SERVICE_AGENT_TYPE_PROJECT = 1; + + // Enable a FeatureView service account to be created by Vertex AI and + // output in the field `service_account_email`. This service account will + // be used to read from the source BigQuery table during sync. + SERVICE_AGENT_TYPE_FEATURE_VIEW = 2; + } + oneof source { // Optional. Configures how data is supposed to be extracted from a BigQuery // source to be loaded onto the FeatureOnlineStore. @@ -199,4 +215,18 @@ message FeatureView { // online serving. VectorSearchConfig vector_search_config = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Service agent type used during data sync. By default, the Vertex + // AI Service Agent is used. When using an IAM Policy to isolate this + // FeatureView within a project, a separate service account should be + // provisioned by setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`. + // This will generate a separate service account to access the BigQuery source + // table. + ServiceAgentType service_agent_type = 14 + [(google.api.field_behavior) = OPTIONAL]; + + // Output only. A Service Account unique to this FeatureView. The role + // bigquery.dataViewer should be granted to this service account to allow + // Vertex AI Feature Store to sync data to the online store. + string service_account_email = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; } diff --git a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/persistent_resource.proto b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/persistent_resource.proto index abf5e2c85b94..8e2aa894b528 100644 --- a/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/persistent_resource.proto +++ b/java-aiplatform/proto-google-cloud-aiplatform-v1beta1/src/main/proto/google/cloud/aiplatform/v1beta1/persistent_resource.proto @@ -237,6 +237,9 @@ message RaySpec { // set. string head_node_resource_pool_id = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Ray metrics configurations. + RayMetricSpec ray_metric_spec = 8 [(google.api.field_behavior) = OPTIONAL]; } // Persistent Cluster runtime information as output @@ -274,3 +277,9 @@ message ServiceAccountSpec { // Required if any containers are specified in `ResourceRuntimeSpec`. string service_account = 2 [(google.api.field_behavior) = OPTIONAL]; } + +// Configuration for the Ray metrics. +message RayMetricSpec { + // Optional. Flag to disable the Ray metrics collection. + bool disabled = 1 [(google.api.field_behavior) = OPTIONAL]; +}