diff --git a/generation_config.yaml b/generation_config.yaml index 6e71f84549aa..686b7b3b7828 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ gapic_generator_version: 2.42.0 -googleapis_commitish: 46eb6505cc4b8340d304510d7226de96bafe9314 +googleapis_commitish: efae79d0ba30034f2dd075d0213d09e93ebeccff libraries_bom_version: 26.42.0 # the libraries are ordered with respect to library name, which is diff --git a/java-chat/google-cloud-chat/src/main/java/com/google/chat/v1/ChatServiceClient.java b/java-chat/google-cloud-chat/src/main/java/com/google/chat/v1/ChatServiceClient.java index 1f282a13f09c..b978972fda6f 100644 --- a/java-chat/google-cloud-chat/src/main/java/com/google/chat/v1/ChatServiceClient.java +++ b/java-chat/google-cloud-chat/src/main/java/com/google/chat/v1/ChatServiceClient.java @@ -307,6 +307,7 @@ *
SetUpSpace
Creates a space and adds specified users to it. The calling user is automatically added to the space, and shouldn't be specified as a membership in the request. For an example, see [Set up a space with initial members](https://developers.google.com/workspace/chat/set-up-spaces). *
To specify the human members to add, add memberships with the appropriate `membership.member.name`. To add a human user, use `users/{user}`, where `{user}` can be the email address for the user. For users in the same Workspace organization `{user}` can also be the `id` for the person from the People API, or the `id` for the user in the Directory API. For example, if the People API Person profile ID for `user{@literal @}example.com` is `123456789`, you can add the user to the space by setting the `membership.member.name` to `users/user{@literal @}example.com` or `users/123456789`. + *
To specify the Google groups to add, add memberships with the appropriate `membership.group_member.name`. To add or invite a Google group, use `groups/{group}`, where `{group}` is the `id` for the group from the Cloud Identity Groups API. For example, you can use [Cloud Identity Groups lookup API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup) to retrieve the ID `123456789` for group email `group{@literal @}example.com`, then you can add the group to the space by setting the `membership.group_member.name` to `groups/123456789`. Group email is not supported, and Google groups can only be added as members in named spaces. *
For a named space or group chat, if the caller blocks, or is blocked by some members, or doesn't have permission to add some members, then those members aren't added to the created space. *
To create a direct message (DM) between the calling user and another human user, specify exactly one membership to represent the human user. If one user blocks the other, the request fails and the DM isn't created. *
To create a DM between the calling user and the calling app, set `Space.singleUserBotDm` to `true` and don't specify any memberships. You can only use this method to set up a DM with the calling app. To add the calling app as a member of a space or an existing DM between two human users, see [Invite or add a user or app to a space](https://developers.google.com/workspace/chat/create-members). @@ -397,9 +398,10 @@ *
CreateMembership
Creates a human membership or app membership for the calling app. Creating memberships for other apps isn't supported. For an example, see [Invite or add a user or a Google Chat app to a space](https://developers.google.com/workspace/chat/create-members). When creating a membership, if the specified member has their auto-accept policy turned off, then they're invited, and must accept the space invitation before joining. Otherwise, creating a membership adds the member directly to the specified space. Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). - *
To specify the member to add, set the `membership.member.name` for the human or app member. + *
To specify the member to add, set the `membership.member.name` for the human or app member, or set the `membership.group_member.name` for the group member. *
- To add the calling app to a space or a direct message between two human users, use `users/app`. Unable to add other apps to the space. - *
- To add a human user, use `users/{user}`, where `{user}` can be the email address for the user. For users in the same Workspace organization `{user}` can also be the `id` for the person from the People API, or the `id` for the user in the Directory API. For example, if the People API Person profile ID for `user{@literal @}example.com` is `123456789`, you can add the user to the space by setting the `membership.member.name` to `users/user{@literal @}example.com` or `users/123456789`.
- To add a human user, use `users/{user}`, where `{user}` can be the email address for the user. For users in the same Workspace organization `{user}` can also be the `id` for the person from the People API, or the `id` for the user in the Directory API. For example, if the People API Person profile ID for `user{@literal @}example.com` is `123456789`, you can add the user to the space by setting the `membership.member.name` to `users/user{@literal @}example.com` or `users/123456789`. + *
- To add or invite a Google group in a named space, use `groups/{group}`, where `{group}` is the `id` for the group from the Cloud Identity Groups API. For example, you can use [Cloud Identity Groups lookup API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup) to retrieve the ID `123456789` for group email `group{@literal @}example.com`, then you can add or invite the group to a named space by setting the `membership.group_member.name` to `groups/123456789`. Group email is not supported, and Google groups can only be added as members in named spaces. *
Request object method variants only take one parameter, a request object, which must be constructed before the call.
*To specify the Google groups to add, add memberships with the appropriate + * `membership.group_member.name`. To add or invite a Google group, use `groups/{group}`, where + * `{group}` is the `id` for the group from the Cloud Identity Groups API. For example, you can + * use [Cloud Identity Groups lookup + * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup) to retrieve the ID + * `123456789` for group email `group{@literal @}example.com`, then you can add the group to the + * space by setting the `membership.group_member.name` to `groups/123456789`. Group email is not + * supported, and Google groups can only be added as members in named spaces. + * *
For a named space or group chat, if the caller blocks, or is blocked by some members, or * doesn't have permission to add some members, then those members aren't added to the created * space. @@ -2610,6 +2621,15 @@ public final Space setUpSpace(SetUpSpaceRequest request) { * you can add the user to the space by setting the `membership.member.name` to * `users/user{@literal @}example.com` or `users/123456789`. * + *
To specify the Google groups to add, add memberships with the appropriate + * `membership.group_member.name`. To add or invite a Google group, use `groups/{group}`, where + * `{group}` is the `id` for the group from the Cloud Identity Groups API. For example, you can + * use [Cloud Identity Groups lookup + * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup) to retrieve the ID + * `123456789` for group email `group{@literal @}example.com`, then you can add the group to the + * space by setting the `membership.group_member.name` to `groups/123456789`. Group email is not + * supported, and Google groups can only be added as members in named spaces. + * *
For a named space or group chat, if the caller blocks, or is blocked by some members, or
* doesn't have permission to add some members, then those members aren't added to the created
* space.
@@ -3072,7 +3092,8 @@ public final UnaryCallable To specify the member to add, set the `membership.member.name` for the human or app member.
+ * To specify the member to add, set the `membership.member.name` for the human or app member,
+ * or set the `membership.group_member.name` for the group member.
*
* - To add the calling app to a space or a direct message between two human users, use
* `users/app`. Unable to add other apps to the space.
@@ -3084,6 +3105,14 @@ public final UnaryCallable - To add or invite a Google group in a named space, use `groups/{group}`, where `{group}` is
+ * the `id` for the group from the Cloud Identity Groups API. For example, you can use [Cloud
+ * Identity Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup) to retrieve the ID
+ * `123456789` for group email `group{@literal @}example.com`, then you can add or invite the
+ * group to a named space by setting the `membership.group_member.name` to `groups/123456789`.
+ * Group email is not supported, and Google groups can only be added as members in named spaces.
+ *
* Sample code:
*
* To specify the member to add, set the `membership.member.name` for the human or app member.
+ * To specify the member to add, set the `membership.member.name` for the human or app member,
+ * or set the `membership.group_member.name` for the group member.
*
* - To add the calling app to a space or a direct message between two human users, use
* `users/app`. Unable to add other apps to the space.
@@ -3148,6 +3178,14 @@ public final Membership createMembership(SpaceName parent, Membership membership
* the space by setting the `membership.member.name` to `users/user{@literal @}example.com` or
* `users/123456789`.
*
+ * - To add or invite a Google group in a named space, use `groups/{group}`, where `{group}` is
+ * the `id` for the group from the Cloud Identity Groups API. For example, you can use [Cloud
+ * Identity Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup) to retrieve the ID
+ * `123456789` for group email `group{@literal @}example.com`, then you can add or invite the
+ * group to a named space by setting the `membership.group_member.name` to `groups/123456789`.
+ * Group email is not supported, and Google groups can only be added as members in named spaces.
+ *
* Sample code:
*
* To specify the member to add, set the `membership.member.name` for the human or app member.
+ * To specify the member to add, set the `membership.member.name` for the human or app member,
+ * or set the `membership.group_member.name` for the group member.
*
* - To add the calling app to a space or a direct message between two human users, use
* `users/app`. Unable to add other apps to the space.
@@ -3209,6 +3248,14 @@ public final Membership createMembership(String parent, Membership membership) {
* the space by setting the `membership.member.name` to `users/user{@literal @}example.com` or
* `users/123456789`.
*
+ * - To add or invite a Google group in a named space, use `groups/{group}`, where `{group}` is
+ * the `id` for the group from the Cloud Identity Groups API. For example, you can use [Cloud
+ * Identity Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup) to retrieve the ID
+ * `123456789` for group email `group{@literal @}example.com`, then you can add or invite the
+ * group to a named space by setting the `membership.group_member.name` to `groups/123456789`.
+ * Group email is not supported, and Google groups can only be added as members in named spaces.
+ *
* Sample code:
*
* To specify the member to add, set the `membership.member.name` for the human or app member.
+ * To specify the member to add, set the `membership.member.name` for the human or app member,
+ * or set the `membership.group_member.name` for the group member.
*
* - To add the calling app to a space or a direct message between two human users, use
* `users/app`. Unable to add other apps to the space.
@@ -3256,6 +3304,14 @@ public final Membership createMembership(CreateMembershipRequest request) {
* the space by setting the `membership.member.name` to `users/user{@literal @}example.com` or
* `users/123456789`.
*
+ * - To add or invite a Google group in a named space, use `groups/{group}`, where `{group}` is
+ * the `id` for the group from the Cloud Identity Groups API. For example, you can use [Cloud
+ * Identity Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup) to retrieve the ID
+ * `123456789` for group email `group{@literal @}example.com`, then you can add or invite the
+ * group to a named space by setting the `membership.group_member.name` to `groups/123456789`.
+ * Group email is not supported, and Google groups can only be added as members in named spaces.
+ *
* Sample code:
*
* Request object method variants only take one parameter, a request object, which must be constructed before the call. batchCreateResourceValueConfigs(OrganizationLocationName parent, List<CreateResourceValueConfigRequest> requests)
* batchCreateResourceValueConfigs(OrganizationName parent, List<CreateResourceValueConfigRequest> requests)
* batchCreateResourceValueConfigs(String parent, List<CreateResourceValueConfigRequest> requests)
* batchCreateResourceValueConfigs(BatchCreateResourceValueConfigsRequest request)
@@ -476,6 +477,7 @@
* "Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. listAttackPaths(OrganizationValuedResourceName parent)
* listAttackPaths(ValuedResourceName parent)
* listAttackPaths(String parent)
* "Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. listResourceValueConfigs(OrganizationLocationName parent)
* listResourceValueConfigs(OrganizationName parent)
* listResourceValueConfigs(String parent)
* Sample code:
+ *
+ * The following fields are supported:
- * The following fields are supported:
- * Sample code:
+ *
+ * Valid formats: "organizations/{organization}",
+ * "organizations/{organization}/simulations/{simulation}"
+ * "organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}"
+ * "organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}"
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListAttackPathsPagedResponse listAttackPaths(OrganizationValuedResourceName parent) {
+ ListAttackPathsRequest request =
+ ListAttackPathsRequest.newBuilder()
+ .setParent(parent == null ? null : parent.toString())
+ .build();
+ return listAttackPaths(request);
+ }
+
// AUTO-GENERATED DOCUMENTATION AND METHOD.
/**
* Lists the attack paths for a set of simulation results or valued resources and filter.
@@ -4151,7 +4230,8 @@ public final UnaryCallable Sample code:
+ *
+ * To update nested fields, include the top level field in the mask For example, to update
+ * gcp_metadata.resource_type, include the "gcp_metadata" field mask
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
public final ResourceValueConfig updateResourceValueConfig(
diff --git a/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/gapic_metadata.json b/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/gapic_metadata.json
index 2447e5139a07..e29d629e08d1 100644
--- a/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/gapic_metadata.json
+++ b/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/gapic_metadata.json
@@ -11,7 +11,7 @@
"libraryClient": "SecurityCenterClient",
"rpcs": {
"BatchCreateResourceValueConfigs": {
- "methods": ["batchCreateResourceValueConfigs", "batchCreateResourceValueConfigs", "batchCreateResourceValueConfigs", "batchCreateResourceValueConfigsCallable"]
+ "methods": ["batchCreateResourceValueConfigs", "batchCreateResourceValueConfigs", "batchCreateResourceValueConfigs", "batchCreateResourceValueConfigs", "batchCreateResourceValueConfigsCallable"]
},
"BulkMuteFindings": {
"methods": ["bulkMuteFindingsAsync", "bulkMuteFindingsAsync", "bulkMuteFindingsAsync", "bulkMuteFindingsOperationCallable", "bulkMuteFindingsCallable"]
@@ -71,7 +71,7 @@
"methods": ["groupFindings", "groupFindings", "groupFindings", "groupFindingsPagedCallable", "groupFindingsCallable"]
},
"ListAttackPaths": {
- "methods": ["listAttackPaths", "listAttackPaths", "listAttackPaths", "listAttackPathsPagedCallable", "listAttackPathsCallable"]
+ "methods": ["listAttackPaths", "listAttackPaths", "listAttackPaths", "listAttackPaths", "listAttackPathsPagedCallable", "listAttackPathsCallable"]
},
"ListBigQueryExports": {
"methods": ["listBigQueryExports", "listBigQueryExports", "listBigQueryExports", "listBigQueryExports", "listBigQueryExports", "listBigQueryExportsPagedCallable", "listBigQueryExportsCallable"]
@@ -86,7 +86,7 @@
"methods": ["listNotificationConfigs", "listNotificationConfigs", "listNotificationConfigs", "listNotificationConfigs", "listNotificationConfigs", "listNotificationConfigsPagedCallable", "listNotificationConfigsCallable"]
},
"ListResourceValueConfigs": {
- "methods": ["listResourceValueConfigs", "listResourceValueConfigs", "listResourceValueConfigs", "listResourceValueConfigsPagedCallable", "listResourceValueConfigsCallable"]
+ "methods": ["listResourceValueConfigs", "listResourceValueConfigs", "listResourceValueConfigs", "listResourceValueConfigs", "listResourceValueConfigsPagedCallable", "listResourceValueConfigsCallable"]
},
"ListSources": {
"methods": ["listSources", "listSources", "listSources", "listSources", "listSources", "listSourcesPagedCallable", "listSourcesCallable"]
diff --git a/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/package-info.java b/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/package-info.java
index b56fad698cec..1b43bd06536e 100644
--- a/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/package-info.java
+++ b/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/package-info.java
@@ -32,7 +32,7 @@
* // - It may require specifying regional endpoints when creating the service client as shown in
* // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
* try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
- * OrganizationName parent = OrganizationName.of("[ORGANIZATION]");
+ * OrganizationLocationName parent = OrganizationLocationName.of("[ORGANIZATION]", "[LOCATION]");
* List{@code
@@ -3136,7 +3165,8 @@ public final Membership createMembership(SpaceName parent, Membership membership
* adds the member directly to the specified space. Requires [user
* authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).
*
- *
{@code
@@ -3197,7 +3235,8 @@ public final Membership createMembership(String parent, Membership membership) {
* adds the member directly to the specified space. Requires [user
* authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).
*
- *
*/
public com.google.chat.v1.Membership createMembership(
@@ -3321,6 +3378,16 @@ public com.google.common.util.concurrent.ListenableFuture{@code
@@ -3244,7 +3291,8 @@ public final Membership createMembership(CreateMembershipRequest request) {
* adds the member directly to the specified space. Requires [user
* authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).
*
- *
*/
public void createMembership(
@@ -2724,6 +2762,16 @@ public com.google.chat.v1.Space createSpace(com.google.chat.v1.CreateSpaceReques
* if the People API Person profile ID for `user@example.com` is `123456789`,
* you can add the user to the space by setting the `membership.member.name`
* to `users/user@example.com` or `users/123456789`.
+ * To specify the Google groups to add, add memberships with the
+ * appropriate `membership.group_member.name`. To add or invite a Google
+ * group, use `groups/{group}`, where `{group}` is the `id` for the group from
+ * the Cloud Identity Groups API. For example, you can use [Cloud Identity
+ * Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup)
+ * to retrieve the ID `123456789` for group email `group@example.com`, then
+ * you can add the group to the space by setting the
+ * `membership.group_member.name` to `groups/123456789`. Group email is not
+ * supported, and Google groups can only be added as members in named spaces.
* For a named space or group chat, if the caller blocks, or is blocked
* by some members, or doesn't have permission to add some members, then
* those members aren't added to the created space.
@@ -2850,7 +2898,8 @@ public com.google.chat.v1.Space findDirectMessage(
* directly to the specified space. Requires [user
* authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).
* To specify the member to add, set the `membership.member.name` for the
- * human or app member.
+ * human or app member, or set the `membership.group_member.name` for the
+ * group member.
* - To add the calling app to a space or a direct message between two human
* users, use `users/app`. Unable to add other
* apps to the space.
@@ -2861,6 +2910,14 @@ public com.google.chat.v1.Space findDirectMessage(
* profile ID for `user@example.com` is `123456789`, you can add the user to
* the space by setting the `membership.member.name` to
* `users/user@example.com` or `users/123456789`.
+ * - To add or invite a Google group in a named space, use
+ * `groups/{group}`, where `{group}` is the `id` for the group from the Cloud
+ * Identity Groups API. For example, you can use [Cloud Identity Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup)
+ * to retrieve the ID `123456789` for group email `group@example.com`, then
+ * you can add or invite the group to a named space by setting the
+ * `membership.group_member.name` to `groups/123456789`. Group email is not
+ * supported, and Google groups can only be added as members in named spaces.
* {@code
diff --git a/java-chat/grpc-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ChatServiceGrpc.java b/java-chat/grpc-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ChatServiceGrpc.java
index 3193bd90514f..f2453408ac92 100644
--- a/java-chat/grpc-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ChatServiceGrpc.java
+++ b/java-chat/grpc-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ChatServiceGrpc.java
@@ -1432,6 +1432,16 @@ default void createSpace(
* if the People API Person profile ID for `user@example.com` is `123456789`,
* you can add the user to the space by setting the `membership.member.name`
* to `users/user@example.com` or `users/123456789`.
+ * To specify the Google groups to add, add memberships with the
+ * appropriate `membership.group_member.name`. To add or invite a Google
+ * group, use `groups/{group}`, where `{group}` is the `id` for the group from
+ * the Cloud Identity Groups API. For example, you can use [Cloud Identity
+ * Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup)
+ * to retrieve the ID `123456789` for group email `group@example.com`, then
+ * you can add the group to the space by setting the
+ * `membership.group_member.name` to `groups/123456789`. Group email is not
+ * supported, and Google groups can only be added as members in named spaces.
* For a named space or group chat, if the caller blocks, or is blocked
* by some members, or doesn't have permission to add some members, then
* those members aren't added to the created space.
@@ -1566,7 +1576,8 @@ default void findDirectMessage(
* directly to the specified space. Requires [user
* authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).
* To specify the member to add, set the `membership.member.name` for the
- * human or app member.
+ * human or app member, or set the `membership.group_member.name` for the
+ * group member.
* - To add the calling app to a space or a direct message between two human
* users, use `users/app`. Unable to add other
* apps to the space.
@@ -1577,6 +1588,14 @@ default void findDirectMessage(
* profile ID for `user@example.com` is `123456789`, you can add the user to
* the space by setting the `membership.member.name` to
* `users/user@example.com` or `users/123456789`.
+ * - To add or invite a Google group in a named space, use
+ * `groups/{group}`, where `{group}` is the `id` for the group from the Cloud
+ * Identity Groups API. For example, you can use [Cloud Identity Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup)
+ * to retrieve the ID `123456789` for group email `group@example.com`, then
+ * you can add or invite the group to a named space by setting the
+ * `membership.group_member.name` to `groups/123456789`. Group email is not
+ * supported, and Google groups can only be added as members in named spaces.
*
*/
default void createMembership(
@@ -2089,6 +2108,16 @@ public void createSpace(
* if the People API Person profile ID for `user@example.com` is `123456789`,
* you can add the user to the space by setting the `membership.member.name`
* to `users/user@example.com` or `users/123456789`.
+ * To specify the Google groups to add, add memberships with the
+ * appropriate `membership.group_member.name`. To add or invite a Google
+ * group, use `groups/{group}`, where `{group}` is the `id` for the group from
+ * the Cloud Identity Groups API. For example, you can use [Cloud Identity
+ * Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup)
+ * to retrieve the ID `123456789` for group email `group@example.com`, then
+ * you can add the group to the space by setting the
+ * `membership.group_member.name` to `groups/123456789`. Group email is not
+ * supported, and Google groups can only be added as members in named spaces.
* For a named space or group chat, if the caller blocks, or is blocked
* by some members, or doesn't have permission to add some members, then
* those members aren't added to the created space.
@@ -2232,7 +2261,8 @@ public void findDirectMessage(
* directly to the specified space. Requires [user
* authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).
* To specify the member to add, set the `membership.member.name` for the
- * human or app member.
+ * human or app member, or set the `membership.group_member.name` for the
+ * group member.
* - To add the calling app to a space or a direct message between two human
* users, use `users/app`. Unable to add other
* apps to the space.
@@ -2243,6 +2273,14 @@ public void findDirectMessage(
* profile ID for `user@example.com` is `123456789`, you can add the user to
* the space by setting the `membership.member.name` to
* `users/user@example.com` or `users/123456789`.
+ * - To add or invite a Google group in a named space, use
+ * `groups/{group}`, where `{group}` is the `id` for the group from the Cloud
+ * Identity Groups API. For example, you can use [Cloud Identity Groups lookup
+ * API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup)
+ * to retrieve the ID `123456789` for group email `group@example.com`, then
+ * you can add or invite the group to a named space by setting the
+ * `membership.group_member.name` to `groups/123456789`. Group email is not
+ * supported, and Google groups can only be added as members in named spaces.
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -700,8 +698,6 @@ public boolean hasGroupMember() {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -720,8 +716,6 @@ public com.google.chat.v1.Group getGroupMember() {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2003,8 +1997,6 @@ public com.google.chat.v1.UserOrBuilder getMemberOrBuilder() {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2020,8 +2012,6 @@ public boolean hasGroupMember() {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2047,8 +2037,6 @@ public com.google.chat.v1.Group getGroupMember() {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2071,8 +2059,6 @@ public Builder setGroupMember(com.google.chat.v1.Group value) {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2092,8 +2078,6 @@ public Builder setGroupMember(com.google.chat.v1.Group.Builder builderForValue)
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2124,8 +2108,6 @@ public Builder mergeGroupMember(com.google.chat.v1.Group value) {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2151,8 +2133,6 @@ public Builder clearGroupMember() {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2165,8 +2145,6 @@ public com.google.chat.v1.Group.Builder getGroupMemberBuilder() {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -2187,8 +2165,6 @@ public com.google.chat.v1.GroupOrBuilder getGroupMemberOrBuilder() {
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MembershipOrBuilder.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MembershipOrBuilder.java
index fca5afed335f..024e6e8dbb62 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MembershipOrBuilder.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MembershipOrBuilder.java
@@ -172,8 +172,6 @@ public interface MembershipOrBuilder
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -186,8 +184,6 @@ public interface MembershipOrBuilder
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
@@ -200,8 +196,6 @@ public interface MembershipOrBuilder
*
*
* The Google Group the membership corresponds to.
- * Only supports read operations. Other operations, like
- * creating or updating a membership, aren't currently supported.
*
*
* .google.chat.v1.Group group_member = 5;
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequest.java
index 50e586da9c42..60cb2b234ddc 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequest.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequest.java
@@ -246,8 +246,8 @@ public com.google.protobuf.ByteString getRequestIdBytes() {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -260,6 +260,10 @@ public com.google.protobuf.ByteString getRequestIdBytes() {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -285,8 +289,8 @@ public java.util.List
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -299,6 +303,10 @@ public java.util.List
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -339,6 +347,10 @@ public java.util.List
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -378,6 +390,10 @@ public int getMembershipsCount() {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -403,8 +419,8 @@ public com.google.chat.v1.Membership getMemberships(int index) {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -417,6 +433,10 @@ public com.google.chat.v1.Membership getMemberships(int index) {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1420,8 +1440,8 @@ private void ensureMembershipsIsMutable() {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1434,6 +1454,10 @@ private void ensureMembershipsIsMutable() {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1462,8 +1486,8 @@ public java.util.List
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1476,6 +1500,10 @@ public java.util.List
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1518,6 +1546,10 @@ public int getMembershipsCount() {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1546,8 +1578,8 @@ public com.google.chat.v1.Membership getMemberships(int index) {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1560,6 +1592,10 @@ public com.google.chat.v1.Membership getMemberships(int index) {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1594,8 +1630,8 @@ public Builder setMemberships(int index, com.google.chat.v1.Membership value) {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1608,6 +1644,10 @@ public Builder setMemberships(int index, com.google.chat.v1.Membership value) {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1640,8 +1680,8 @@ public Builder setMemberships(
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1654,6 +1694,10 @@ public Builder setMemberships(
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1688,8 +1732,8 @@ public Builder addMemberships(com.google.chat.v1.Membership value) {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1702,6 +1746,10 @@ public Builder addMemberships(com.google.chat.v1.Membership value) {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1736,8 +1784,8 @@ public Builder addMemberships(int index, com.google.chat.v1.Membership value) {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1750,6 +1798,10 @@ public Builder addMemberships(int index, com.google.chat.v1.Membership value) {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1781,8 +1833,8 @@ public Builder addMemberships(com.google.chat.v1.Membership.Builder builderForVa
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1795,6 +1847,10 @@ public Builder addMemberships(com.google.chat.v1.Membership.Builder builderForVa
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1827,8 +1883,8 @@ public Builder addMemberships(
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1841,6 +1897,10 @@ public Builder addMemberships(
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1873,8 +1933,8 @@ public Builder addAllMemberships(
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1887,6 +1947,10 @@ public Builder addAllMemberships(
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1918,8 +1982,8 @@ public Builder clearMemberships() {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1932,6 +1996,10 @@ public Builder clearMemberships() {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -1963,8 +2031,8 @@ public Builder removeMemberships(int index) {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -1977,6 +2045,10 @@ public Builder removeMemberships(int index) {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -2001,8 +2073,8 @@ public com.google.chat.v1.Membership.Builder getMembershipsBuilder(int index) {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -2015,6 +2087,10 @@ public com.google.chat.v1.Membership.Builder getMembershipsBuilder(int index) {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -2043,8 +2119,8 @@ public com.google.chat.v1.MembershipOrBuilder getMembershipsOrBuilder(int index)
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -2057,6 +2133,10 @@ public com.google.chat.v1.MembershipOrBuilder getMembershipsOrBuilder(int index)
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -2086,8 +2166,8 @@ public com.google.chat.v1.MembershipOrBuilder getMembershipsOrBuilder(int index)
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -2100,6 +2180,10 @@ public com.google.chat.v1.MembershipOrBuilder getMembershipsOrBuilder(int index)
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -2125,8 +2209,8 @@ public com.google.chat.v1.Membership.Builder addMembershipsBuilder() {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -2139,6 +2223,10 @@ public com.google.chat.v1.Membership.Builder addMembershipsBuilder() {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -2164,8 +2252,8 @@ public com.google.chat.v1.Membership.Builder addMembershipsBuilder(int index) {
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -2178,6 +2266,10 @@ public com.google.chat.v1.Membership.Builder addMembershipsBuilder(int index) {
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequestOrBuilder.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequestOrBuilder.java
index ecb1967f7642..8b7159d16292 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequestOrBuilder.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequestOrBuilder.java
@@ -164,8 +164,8 @@ public interface SetUpSpaceRequestOrBuilder
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -178,6 +178,10 @@ public interface SetUpSpaceRequestOrBuilder
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -200,8 +204,8 @@ public interface SetUpSpaceRequestOrBuilder
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -214,6 +218,10 @@ public interface SetUpSpaceRequestOrBuilder
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -236,8 +244,8 @@ public interface SetUpSpaceRequestOrBuilder
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -250,6 +258,10 @@ public interface SetUpSpaceRequestOrBuilder
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -272,8 +284,8 @@ public interface SetUpSpaceRequestOrBuilder
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -286,6 +298,10 @@ public interface SetUpSpaceRequestOrBuilder
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
@@ -308,8 +324,8 @@ public interface SetUpSpaceRequestOrBuilder
*
*
*
- * Optional. The Google Chat users to invite to join the space. Omit the
- * calling user, as they are added automatically.
+ * Optional. The Google Chat users or groups to invite to join the space. Omit
+ * the calling user, as they are added automatically.
*
* The set currently allows up to 20 memberships (in addition to the caller).
*
@@ -322,6 +338,10 @@ public interface SetUpSpaceRequestOrBuilder
* To invite Gmail users or users from external Google Workspace domains,
* user's email must be used for `{user}`.
*
+ * For Google group membership, the `Membership.group_member` field must
+ * contain a `group` with `name` populated (format `groups/{group}`). You
+ * can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ *
* Optional when setting `Space.spaceType` to `SPACE`.
*
* Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/chat_service.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/chat_service.proto
index 44aed729f931..9de4895a392c 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/chat_service.proto
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/chat_service.proto
@@ -311,6 +311,17 @@ service ChatService {
// you can add the user to the space by setting the `membership.member.name`
// to `users/user@example.com` or `users/123456789`.
//
+ // To specify the Google groups to add, add memberships with the
+ // appropriate `membership.group_member.name`. To add or invite a Google
+ // group, use `groups/{group}`, where `{group}` is the `id` for the group from
+ // the Cloud Identity Groups API. For example, you can use [Cloud Identity
+ // Groups lookup
+ // API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup)
+ // to retrieve the ID `123456789` for group email `group@example.com`, then
+ // you can add the group to the space by setting the
+ // `membership.group_member.name` to `groups/123456789`. Group email is not
+ // supported, and Google groups can only be added as members in named spaces.
+ //
// For a named space or group chat, if the caller blocks, or is blocked
// by some members, or doesn't have permission to add some members, then
// those members aren't added to the created space.
@@ -427,7 +438,8 @@ service ChatService {
// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).
//
// To specify the member to add, set the `membership.member.name` for the
- // human or app member.
+ // human or app member, or set the `membership.group_member.name` for the
+ // group member.
//
// - To add the calling app to a space or a direct message between two human
// users, use `users/app`. Unable to add other
@@ -440,6 +452,15 @@ service ChatService {
// profile ID for `user@example.com` is `123456789`, you can add the user to
// the space by setting the `membership.member.name` to
// `users/user@example.com` or `users/123456789`.
+ //
+ // - To add or invite a Google group in a named space, use
+ // `groups/{group}`, where `{group}` is the `id` for the group from the Cloud
+ // Identity Groups API. For example, you can use [Cloud Identity Groups lookup
+ // API](https://cloud.google.com/identity/docs/reference/rest/v1/groups/lookup)
+ // to retrieve the ID `123456789` for group email `group@example.com`, then
+ // you can add or invite the group to a named space by setting the
+ // `membership.group_member.name` to `groups/123456789`. Group email is not
+ // supported, and Google groups can only be added as members in named spaces.
rpc CreateMembership(CreateMembershipRequest) returns (Membership) {
option (google.api.http) = {
post: "/v1/{parent=spaces/*}/members"
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/membership.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/membership.proto
index 8751f7d6c924..6706f45520ee 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/membership.proto
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/membership.proto
@@ -106,8 +106,6 @@ message Membership {
User member = 3;
// The Google Group the membership corresponds to.
- // Only supports read operations. Other operations, like
- // creating or updating a membership, aren't currently supported.
Group group_member = 5;
}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space_setup.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space_setup.proto
index 17e42269e12b..2377d28293ac 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space_setup.proto
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space_setup.proto
@@ -64,8 +64,8 @@ message SetUpSpaceRequest {
// authenticated user returns an error.
string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. The Google Chat users to invite to join the space. Omit the
- // calling user, as they are added automatically.
+ // Optional. The Google Chat users or groups to invite to join the space. Omit
+ // the calling user, as they are added automatically.
//
// The set currently allows up to 20 memberships (in addition to the caller).
//
@@ -78,6 +78,10 @@ message SetUpSpaceRequest {
// To invite Gmail users or users from external Google Workspace domains,
// user's email must be used for `{user}`.
//
+ // For Google group membership, the `Membership.group_member` field must
+ // contain a `group` with `name` populated (format `groups/{group}`). You
+ // can only add Google groups when setting `Space.spaceType` to `SPACE`.
+ //
// Optional when setting `Space.spaceType` to `SPACE`.
//
// Required when setting `Space.spaceType` to `GROUP_CHAT`, along with at
diff --git a/java-edgenetwork/google-cloud-edgenetwork/src/main/resources/META-INF/native-image/com.google.cloud.edgenetwork.v1/reflect-config.json b/java-edgenetwork/google-cloud-edgenetwork/src/main/resources/META-INF/native-image/com.google.cloud.edgenetwork.v1/reflect-config.json
index e4d671394b79..0bb50549ca89 100644
--- a/java-edgenetwork/google-cloud-edgenetwork/src/main/resources/META-INF/native-image/com.google.cloud.edgenetwork.v1/reflect-config.json
+++ b/java-edgenetwork/google-cloud-edgenetwork/src/main/resources/META-INF/native-image/com.google.cloud.edgenetwork.v1/reflect-config.json
@@ -1367,6 +1367,15 @@
"allDeclaredClasses": true,
"allPublicClasses": true
},
+ {
+ "name": "com.google.cloud.edgenetwork.v1.Subnet$BondingType",
+ "queryAllDeclaredConstructors": true,
+ "queryAllPublicConstructors": true,
+ "queryAllDeclaredMethods": true,
+ "allPublicMethods": true,
+ "allDeclaredClasses": true,
+ "allPublicClasses": true
+ },
{
"name": "com.google.cloud.edgenetwork.v1.Subnet$Builder",
"queryAllDeclaredConstructors": true,
diff --git a/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/ResourcesProto.java b/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/ResourcesProto.java
index 2e69a8f51947..70d33764441f 100644
--- a/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/ResourcesProto.java
+++ b/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/ResourcesProto.java
@@ -160,7 +160,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001:p\352Am\n\"edgenetw"
+ "ork.googleapis.com/Network\022Gprojects/{pr"
+ "oject}/locations/{location}/zones/{zone}"
- + "/networks/{network}\"\271\004\n\006Subnet\022\021\n\004name\030\001"
+ + "/networks/{network}\"\316\005\n\006Subnet\022\021\n\004name\030\001"
+ " \001(\tB\003\340A\002\0224\n\013create_time\030\002 \001(\0132\032.google."
+ "protobuf.TimestampB\003\340A\003\0224\n\013update_time\030\003"
+ " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022?\n"
@@ -169,133 +169,136 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\001(\tB\003\340A\001\022;\n\007network\030\006 \001(\tB*\340A\002\372A$\n\"edgen"
+ "etwork.googleapis.com/Network\022\021\n\tipv4_ci"
+ "dr\030\007 \003(\t\022\021\n\tipv6_cidr\030\010 \003(\t\022\024\n\007vlan_id\030\t"
- + " \001(\005B\003\340A\001\022>\n\005state\030\n \001(\0162*.google.cloud."
- + "edgenetwork.v1.ResourceStateB\003\340A\003\032-\n\013Lab"
- + "elsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001"
- + ":m\352Aj\n!edgenetwork.googleapis.com/Subnet"
- + "\022Eprojects/{project}/locations/{location"
- + "}/zones/{zone}/subnets/{subnet}\"\231\005\n\014Inte"
- + "rconnect\022\021\n\004name\030\001 \001(\tB\003\340A\002\0224\n\013create_ti"
- + "me\030\002 \001(\0132\032.google.protobuf.TimestampB\003\340A"
- + "\003\0224\n\013update_time\030\003 \001(\0132\032.google.protobuf"
- + ".TimestampB\003\340A\003\022E\n\006labels\030\004 \003(\01325.google"
- + ".cloud.edgenetwork.v1.Interconnect.Label"
- + "sEntry\022\030\n\013description\030\005 \001(\tB\003\340A\001\022Z\n\021inte"
- + "rconnect_type\030\006 \001(\0162:.google.cloud.edgen"
- + "etwork.v1.Interconnect.InterconnectTypeB"
- + "\003\340A\001\022\021\n\004uuid\030\007 \001(\tB\003\340A\003\022\'\n\032device_cloud_"
- + "resource_name\030\010 \001(\tB\003\340A\003\022\033\n\016physical_por"
- + "ts\030\t \003(\tB\003\340A\003\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001("
- + "\t\022\r\n\005value\030\002 \001(\t:\0028\001\"D\n\020InterconnectType"
- + "\022!\n\035INTERCONNECT_TYPE_UNSPECIFIED\020\000\022\r\n\tD"
- + "EDICATED\020\001:\177\352A|\n\'edgenetwork.googleapis."
- + "com/Interconnect\022Qprojects/{project}/loc"
- + "ations/{location}/zones/{zone}/interconn"
- + "ects/{interconnect}\"\272\005\n\026InterconnectAtta"
- + "chment\022\021\n\004name\030\001 \001(\tB\003\340A\002\0224\n\013create_time"
- + "\030\002 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022"
- + "4\n\013update_time\030\003 \001(\0132\032.google.protobuf.T"
- + "imestampB\003\340A\003\022O\n\006labels\030\004 \003(\0132?.google.c"
- + "loud.edgenetwork.v1.InterconnectAttachme"
- + "nt.LabelsEntry\022\030\n\013description\030\005 \001(\tB\003\340A\001"
- + "\022E\n\014interconnect\030\006 \001(\tB/\340A\002\372A)\n\'edgenetw"
- + "ork.googleapis.com/Interconnect\022;\n\007netwo"
- + "rk\030\013 \001(\tB*\340A\001\372A$\n\"edgenetwork.googleapis"
- + ".com/Network\022\024\n\007vlan_id\030\010 \001(\005B\003\340A\002\022\013\n\003mt"
- + "u\030\t \001(\005\022>\n\005state\030\n \001(\0162*.google.cloud.ed"
- + "genetwork.v1.ResourceStateB\003\340A\003\032-\n\013Label"
- + "sEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001:\237"
- + "\001\352A\233\001\n1edgenetwork.googleapis.com/Interc"
- + "onnectAttachment\022fprojects/{project}/loc"
- + "ations/{location}/zones/{zone}/interconn"
- + "ectAttachments/{interconnect_attachment}"
- + "\"\360\010\n\006Router\022\021\n\004name\030\001 \001(\tB\003\340A\002\0224\n\013create"
- + "_time\030\002 \001(\0132\032.google.protobuf.TimestampB"
- + "\003\340A\003\0224\n\013update_time\030\003 \001(\0132\032.google.proto"
- + "buf.TimestampB\003\340A\003\022?\n\006labels\030\004 \003(\0132/.goo"
- + "gle.cloud.edgenetwork.v1.Router.LabelsEn"
- + "try\022\030\n\013description\030\005 \001(\tB\003\340A\001\022;\n\007network"
- + "\030\006 \001(\tB*\340A\002\372A$\n\"edgenetwork.googleapis.c"
- + "om/Network\022@\n\tinterface\030\007 \003(\0132-.google.c"
- + "loud.edgenetwork.v1.Router.Interface\022=\n\010"
- + "bgp_peer\030\010 \003(\0132+.google.cloud.edgenetwor"
- + "k.v1.Router.BgpPeer\0224\n\003bgp\030\t \001(\0132\'.googl"
- + "e.cloud.edgenetwork.v1.Router.Bgp\022>\n\005sta"
- + "te\030\n \001(\0162*.google.cloud.edgenetwork.v1.R"
- + "esourceStateB\003\340A\003\022!\n\024route_advertisement"
- + "s\030\013 \003(\tB\003\340A\001\032\232\001\n\tInterface\022\014\n\004name\030\001 \001(\t"
- + "\022\021\n\tipv4_cidr\030\003 \001(\t\022\021\n\tipv6_cidr\030\006 \001(\t\022&"
- + "\n\036linked_interconnect_attachment\030\002 \001(\t\022\022"
- + "\n\nsubnetwork\030\004 \001(\t\022\035\n\025loopback_ip_addres"
- + "ses\030\005 \003(\t\032\276\001\n\007BgpPeer\022\014\n\004name\030\001 \001(\t\022\021\n\ti"
- + "nterface\030\002 \001(\t\022\033\n\023interface_ipv4_cidr\030\003 "
- + "\001(\t\022\033\n\023interface_ipv6_cidr\030\007 \001(\t\022\026\n\016peer"
- + "_ipv4_cidr\030\004 \001(\t\022\026\n\016peer_ipv6_cidr\030\006 \001(\t"
- + "\022\020\n\010peer_asn\030\005 \001(\r\022\026\n\tlocal_asn\030\010 \001(\rB\003\340"
- + "A\003\0329\n\003Bgp\022\013\n\003asn\030\001 \001(\r\022%\n\035keepalive_inte"
- + "rval_in_seconds\030\002 \001(\r\032-\n\013LabelsEntry\022\013\n\003"
- + "key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001:m\352Aj\n!edgen"
- + "etwork.googleapis.com/Router\022Eprojects/{"
- + "project}/locations/{location}/zones/{zon"
- + "e}/routers/{router}\";\n\020LinkLayerAddress\022"
- + "\023\n\013mac_address\030\001 \001(\t\022\022\n\nip_address\030\002 \001(\t"
- + "\"~\n\014SubnetStatus\022\014\n\004name\030\001 \001(\t\022\023\n\013mac_ad"
- + "dress\030\002 \001(\t\022K\n\024link_layer_addresses\030\003 \003("
- + "\0132-.google.cloud.edgenetwork.v1.LinkLaye"
- + "rAddress\"\361\010\n\027InterconnectDiagnostics\022\023\n\013"
- + "mac_address\030\001 \001(\t\022K\n\024link_layer_addresse"
- + "s\030\002 \003(\0132-.google.cloud.edgenetwork.v1.Li"
- + "nkLayerAddress\022N\n\005links\030\003 \003(\0132?.google.c"
- + "loud.edgenetwork.v1.InterconnectDiagnost"
- + "ics.LinkStatus\032\260\002\n\nLinkStatus\022\022\n\ncircuit"
- + "_id\030\001 \001(\t\022X\n\013lacp_status\030\002 \001(\0132C.google."
- + "cloud.edgenetwork.v1.InterconnectDiagnos"
- + "tics.LinkLACPStatus\022Z\n\rlldp_statuses\030\003 \003"
- + "(\0132C.google.cloud.edgenetwork.v1.Interco"
- + "nnectDiagnostics.LinkLLDPStatus\022X\n\rpacke"
- + "t_counts\030\004 \001(\0132A.google.cloud.edgenetwor"
- + "k.v1.InterconnectDiagnostics.PacketCount"
- + "s\032\247\001\n\014PacketCounts\022\027\n\017inbound_unicast\030\001 "
- + "\001(\003\022\026\n\016inbound_errors\030\002 \001(\003\022\030\n\020inbound_d"
- + "iscards\030\003 \001(\003\022\030\n\020outbound_unicast\030\004 \001(\003\022"
- + "\027\n\017outbound_errors\030\005 \001(\003\022\031\n\021outbound_dis"
- + "cards\030\006 \001(\003\032\220\002\n\016LinkLACPStatus\022X\n\005state\030"
- + "\001 \001(\0162I.google.cloud.edgenetwork.v1.Inte"
- + "rconnectDiagnostics.LinkLACPStatus.State"
- + "\022\030\n\020google_system_id\030\002 \001(\t\022\032\n\022neighbor_s"
- + "ystem_id\030\003 \001(\t\022\024\n\014aggregatable\030\004 \001(\010\022\022\n\n"
- + "collecting\030\005 \001(\010\022\024\n\014distributing\030\006 \001(\010\"."
- + "\n\005State\022\013\n\007UNKNOWN\020\000\022\n\n\006ACTIVE\020\001\022\014\n\010DETA"
- + "CHED\020\002\032\263\001\n\016LinkLLDPStatus\022\030\n\020peer_system"
- + "_name\030\001 \001(\t\022\037\n\027peer_system_description\030\002"
- + " \001(\t\022\027\n\017peer_chassis_id\030\003 \001(\t\022\034\n\024peer_ch"
- + "assis_id_type\030\004 \001(\t\022\024\n\014peer_port_id\030\005 \001("
- + "\t\022\031\n\021peer_port_id_type\030\006 \001(\t\"\352\004\n\014RouterS"
- + "tatus\0228\n\007network\030\001 \001(\tB\'\372A$\n\"edgenetwork"
- + ".googleapis.com/Network\022P\n\017bgp_peer_stat"
- + "us\030\002 \003(\01327.google.cloud.edgenetwork.v1.R"
- + "outerStatus.BgpPeerStatus\032\321\002\n\rBgpPeerSta"
- + "tus\022\014\n\004name\030\001 \001(\t\022\022\n\nip_address\030\002 \001(\t\022\027\n"
- + "\017peer_ip_address\030\003 \001(\t\022Q\n\006status\030\004 \001(\0162A"
- + ".google.cloud.edgenetwork.v1.RouterStatu"
- + "s.BgpPeerStatus.BgpStatus\022\r\n\005state\030\005 \001(\t"
- + "\022\016\n\006uptime\030\006 \001(\t\022\026\n\016uptime_seconds\030\007 \001(\003"
- + "\022O\n\016prefix_counter\030\010 \001(\01327.google.cloud."
- + "edgenetwork.v1.RouterStatus.PrefixCounte"
- + "r\"*\n\tBgpStatus\022\013\n\007UNKNOWN\020\000\022\006\n\002UP\020\001\022\010\n\004D"
- + "OWN\020\002\032z\n\rPrefixCounter\022\022\n\nadvertised\030\001 \001"
- + "(\003\022\016\n\006denied\030\002 \001(\003\022\020\n\010received\030\003 \001(\003\022\014\n\004"
- + "sent\030\004 \001(\003\022\022\n\nsuppressed\030\005 \001(\003\022\021\n\twithdr"
- + "awn\030\006 \001(\003*\211\001\n\rResourceState\022\021\n\rSTATE_UNK"
- + "NOWN\020\000\022\021\n\rSTATE_PENDING\020\001\022\026\n\022STATE_PROVI"
- + "SIONING\020\002\022\021\n\rSTATE_RUNNING\020\003\022\023\n\017STATE_SU"
- + "SPENDED\020\004\022\022\n\016STATE_DELETING\020\005B\323\001\n\037com.go"
- + "ogle.cloud.edgenetwork.v1B\016ResourcesProt"
- + "oP\001ZAcloud.google.com/go/edgenetwork/api"
- + "v1/edgenetworkpb;edgenetworkpb\252\002\033Google."
- + "Cloud.EdgeNetwork.V1\312\002\033Google\\Cloud\\Edge"
- + "Network\\V1\352\002\036Google::Cloud::EdgeNetwork:"
- + ":V1b\006proto3"
+ + " \001(\005B\003\340A\001\022J\n\014bonding_type\030\013 \001(\0162/.google"
+ + ".cloud.edgenetwork.v1.Subnet.BondingType"
+ + "B\003\340A\001\022>\n\005state\030\n \001(\0162*.google.cloud.edge"
+ + "network.v1.ResourceStateB\003\340A\003\032-\n\013LabelsE"
+ + "ntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"G\n\013"
+ + "BondingType\022\034\n\030BONDING_TYPE_UNSPECIFIED\020"
+ + "\000\022\n\n\006BONDED\020\001\022\016\n\nNON_BONDED\020\002:m\352Aj\n!edge"
+ + "network.googleapis.com/Subnet\022Eprojects/"
+ + "{project}/locations/{location}/zones/{zo"
+ + "ne}/subnets/{subnet}\"\231\005\n\014Interconnect\022\021\n"
+ + "\004name\030\001 \001(\tB\003\340A\002\0224\n\013create_time\030\002 \001(\0132\032."
+ + "google.protobuf.TimestampB\003\340A\003\0224\n\013update"
+ + "_time\030\003 \001(\0132\032.google.protobuf.TimestampB"
+ + "\003\340A\003\022E\n\006labels\030\004 \003(\01325.google.cloud.edge"
+ + "network.v1.Interconnect.LabelsEntry\022\030\n\013d"
+ + "escription\030\005 \001(\tB\003\340A\001\022Z\n\021interconnect_ty"
+ + "pe\030\006 \001(\0162:.google.cloud.edgenetwork.v1.I"
+ + "nterconnect.InterconnectTypeB\003\340A\001\022\021\n\004uui"
+ + "d\030\007 \001(\tB\003\340A\003\022\'\n\032device_cloud_resource_na"
+ + "me\030\010 \001(\tB\003\340A\003\022\033\n\016physical_ports\030\t \003(\tB\003\340"
+ + "A\003\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030"
+ + "\002 \001(\t:\0028\001\"D\n\020InterconnectType\022!\n\035INTERCO"
+ + "NNECT_TYPE_UNSPECIFIED\020\000\022\r\n\tDEDICATED\020\001:"
+ + "\177\352A|\n\'edgenetwork.googleapis.com/Interco"
+ + "nnect\022Qprojects/{project}/locations/{loc"
+ + "ation}/zones/{zone}/interconnects/{inter"
+ + "connect}\"\272\005\n\026InterconnectAttachment\022\021\n\004n"
+ + "ame\030\001 \001(\tB\003\340A\002\0224\n\013create_time\030\002 \001(\0132\032.go"
+ + "ogle.protobuf.TimestampB\003\340A\003\0224\n\013update_t"
+ + "ime\030\003 \001(\0132\032.google.protobuf.TimestampB\003\340"
+ + "A\003\022O\n\006labels\030\004 \003(\0132?.google.cloud.edgene"
+ + "twork.v1.InterconnectAttachment.LabelsEn"
+ + "try\022\030\n\013description\030\005 \001(\tB\003\340A\001\022E\n\014interco"
+ + "nnect\030\006 \001(\tB/\340A\002\372A)\n\'edgenetwork.googlea"
+ + "pis.com/Interconnect\022;\n\007network\030\013 \001(\tB*\340"
+ + "A\001\372A$\n\"edgenetwork.googleapis.com/Networ"
+ + "k\022\024\n\007vlan_id\030\010 \001(\005B\003\340A\002\022\013\n\003mtu\030\t \001(\005\022>\n\005"
+ + "state\030\n \001(\0162*.google.cloud.edgenetwork.v"
+ + "1.ResourceStateB\003\340A\003\032-\n\013LabelsEntry\022\013\n\003k"
+ + "ey\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001:\237\001\352A\233\001\n1edge"
+ + "network.googleapis.com/InterconnectAttac"
+ + "hment\022fprojects/{project}/locations/{loc"
+ + "ation}/zones/{zone}/interconnectAttachme"
+ + "nts/{interconnect_attachment}\"\360\010\n\006Router"
+ + "\022\021\n\004name\030\001 \001(\tB\003\340A\002\0224\n\013create_time\030\002 \001(\013"
+ + "2\032.google.protobuf.TimestampB\003\340A\003\0224\n\013upd"
+ + "ate_time\030\003 \001(\0132\032.google.protobuf.Timesta"
+ + "mpB\003\340A\003\022?\n\006labels\030\004 \003(\0132/.google.cloud.e"
+ + "dgenetwork.v1.Router.LabelsEntry\022\030\n\013desc"
+ + "ription\030\005 \001(\tB\003\340A\001\022;\n\007network\030\006 \001(\tB*\340A\002"
+ + "\372A$\n\"edgenetwork.googleapis.com/Network\022"
+ + "@\n\tinterface\030\007 \003(\0132-.google.cloud.edgene"
+ + "twork.v1.Router.Interface\022=\n\010bgp_peer\030\010 "
+ + "\003(\0132+.google.cloud.edgenetwork.v1.Router"
+ + ".BgpPeer\0224\n\003bgp\030\t \001(\0132\'.google.cloud.edg"
+ + "enetwork.v1.Router.Bgp\022>\n\005state\030\n \001(\0162*."
+ + "google.cloud.edgenetwork.v1.ResourceStat"
+ + "eB\003\340A\003\022!\n\024route_advertisements\030\013 \003(\tB\003\340A"
+ + "\001\032\232\001\n\tInterface\022\014\n\004name\030\001 \001(\t\022\021\n\tipv4_ci"
+ + "dr\030\003 \001(\t\022\021\n\tipv6_cidr\030\006 \001(\t\022&\n\036linked_in"
+ + "terconnect_attachment\030\002 \001(\t\022\022\n\nsubnetwor"
+ + "k\030\004 \001(\t\022\035\n\025loopback_ip_addresses\030\005 \003(\t\032\276"
+ + "\001\n\007BgpPeer\022\014\n\004name\030\001 \001(\t\022\021\n\tinterface\030\002 "
+ + "\001(\t\022\033\n\023interface_ipv4_cidr\030\003 \001(\t\022\033\n\023inte"
+ + "rface_ipv6_cidr\030\007 \001(\t\022\026\n\016peer_ipv4_cidr\030"
+ + "\004 \001(\t\022\026\n\016peer_ipv6_cidr\030\006 \001(\t\022\020\n\010peer_as"
+ + "n\030\005 \001(\r\022\026\n\tlocal_asn\030\010 \001(\rB\003\340A\003\0329\n\003Bgp\022\013"
+ + "\n\003asn\030\001 \001(\r\022%\n\035keepalive_interval_in_sec"
+ + "onds\030\002 \001(\r\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r"
+ + "\n\005value\030\002 \001(\t:\0028\001:m\352Aj\n!edgenetwork.goog"
+ + "leapis.com/Router\022Eprojects/{project}/lo"
+ + "cations/{location}/zones/{zone}/routers/"
+ + "{router}\";\n\020LinkLayerAddress\022\023\n\013mac_addr"
+ + "ess\030\001 \001(\t\022\022\n\nip_address\030\002 \001(\t\"~\n\014SubnetS"
+ + "tatus\022\014\n\004name\030\001 \001(\t\022\023\n\013mac_address\030\002 \001(\t"
+ + "\022K\n\024link_layer_addresses\030\003 \003(\0132-.google."
+ + "cloud.edgenetwork.v1.LinkLayerAddress\"\361\010"
+ + "\n\027InterconnectDiagnostics\022\023\n\013mac_address"
+ + "\030\001 \001(\t\022K\n\024link_layer_addresses\030\002 \003(\0132-.g"
+ + "oogle.cloud.edgenetwork.v1.LinkLayerAddr"
+ + "ess\022N\n\005links\030\003 \003(\0132?.google.cloud.edgene"
+ + "twork.v1.InterconnectDiagnostics.LinkSta"
+ + "tus\032\260\002\n\nLinkStatus\022\022\n\ncircuit_id\030\001 \001(\t\022X"
+ + "\n\013lacp_status\030\002 \001(\0132C.google.cloud.edgen"
+ + "etwork.v1.InterconnectDiagnostics.LinkLA"
+ + "CPStatus\022Z\n\rlldp_statuses\030\003 \003(\0132C.google"
+ + ".cloud.edgenetwork.v1.InterconnectDiagno"
+ + "stics.LinkLLDPStatus\022X\n\rpacket_counts\030\004 "
+ + "\001(\0132A.google.cloud.edgenetwork.v1.Interc"
+ + "onnectDiagnostics.PacketCounts\032\247\001\n\014Packe"
+ + "tCounts\022\027\n\017inbound_unicast\030\001 \001(\003\022\026\n\016inbo"
+ + "und_errors\030\002 \001(\003\022\030\n\020inbound_discards\030\003 \001"
+ + "(\003\022\030\n\020outbound_unicast\030\004 \001(\003\022\027\n\017outbound"
+ + "_errors\030\005 \001(\003\022\031\n\021outbound_discards\030\006 \001(\003"
+ + "\032\220\002\n\016LinkLACPStatus\022X\n\005state\030\001 \001(\0162I.goo"
+ + "gle.cloud.edgenetwork.v1.InterconnectDia"
+ + "gnostics.LinkLACPStatus.State\022\030\n\020google_"
+ + "system_id\030\002 \001(\t\022\032\n\022neighbor_system_id\030\003 "
+ + "\001(\t\022\024\n\014aggregatable\030\004 \001(\010\022\022\n\ncollecting\030"
+ + "\005 \001(\010\022\024\n\014distributing\030\006 \001(\010\".\n\005State\022\013\n\007"
+ + "UNKNOWN\020\000\022\n\n\006ACTIVE\020\001\022\014\n\010DETACHED\020\002\032\263\001\n\016"
+ + "LinkLLDPStatus\022\030\n\020peer_system_name\030\001 \001(\t"
+ + "\022\037\n\027peer_system_description\030\002 \001(\t\022\027\n\017pee"
+ + "r_chassis_id\030\003 \001(\t\022\034\n\024peer_chassis_id_ty"
+ + "pe\030\004 \001(\t\022\024\n\014peer_port_id\030\005 \001(\t\022\031\n\021peer_p"
+ + "ort_id_type\030\006 \001(\t\"\352\004\n\014RouterStatus\0228\n\007ne"
+ + "twork\030\001 \001(\tB\'\372A$\n\"edgenetwork.googleapis"
+ + ".com/Network\022P\n\017bgp_peer_status\030\002 \003(\01327."
+ + "google.cloud.edgenetwork.v1.RouterStatus"
+ + ".BgpPeerStatus\032\321\002\n\rBgpPeerStatus\022\014\n\004name"
+ + "\030\001 \001(\t\022\022\n\nip_address\030\002 \001(\t\022\027\n\017peer_ip_ad"
+ + "dress\030\003 \001(\t\022Q\n\006status\030\004 \001(\0162A.google.clo"
+ + "ud.edgenetwork.v1.RouterStatus.BgpPeerSt"
+ + "atus.BgpStatus\022\r\n\005state\030\005 \001(\t\022\016\n\006uptime\030"
+ + "\006 \001(\t\022\026\n\016uptime_seconds\030\007 \001(\003\022O\n\016prefix_"
+ + "counter\030\010 \001(\01327.google.cloud.edgenetwork"
+ + ".v1.RouterStatus.PrefixCounter\"*\n\tBgpSta"
+ + "tus\022\013\n\007UNKNOWN\020\000\022\006\n\002UP\020\001\022\010\n\004DOWN\020\002\032z\n\rPr"
+ + "efixCounter\022\022\n\nadvertised\030\001 \001(\003\022\016\n\006denie"
+ + "d\030\002 \001(\003\022\020\n\010received\030\003 \001(\003\022\014\n\004sent\030\004 \001(\003\022"
+ + "\022\n\nsuppressed\030\005 \001(\003\022\021\n\twithdrawn\030\006 \001(\003*\211"
+ + "\001\n\rResourceState\022\021\n\rSTATE_UNKNOWN\020\000\022\021\n\rS"
+ + "TATE_PENDING\020\001\022\026\n\022STATE_PROVISIONING\020\002\022\021"
+ + "\n\rSTATE_RUNNING\020\003\022\023\n\017STATE_SUSPENDED\020\004\022\022"
+ + "\n\016STATE_DELETING\020\005B\323\001\n\037com.google.cloud."
+ + "edgenetwork.v1B\016ResourcesProtoP\001ZAcloud."
+ + "google.com/go/edgenetwork/apiv1/edgenetw"
+ + "orkpb;edgenetworkpb\252\002\033Google.Cloud.EdgeN"
+ + "etwork.V1\312\002\033Google\\Cloud\\EdgeNetwork\\V1\352"
+ + "\002\036Google::Cloud::EdgeNetwork::V1b\006proto3"
};
descriptor =
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
@@ -352,6 +355,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Ipv4Cidr",
"Ipv6Cidr",
"VlanId",
+ "BondingType",
"State",
});
internal_static_google_cloud_edgenetwork_v1_Subnet_LabelsEntry_descriptor =
diff --git a/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/Subnet.java b/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/Subnet.java
index 3cc816cd5eb7..5dc86316f9b4 100644
--- a/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/Subnet.java
+++ b/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/Subnet.java
@@ -44,6 +44,7 @@ private Subnet() {
network_ = "";
ipv4Cidr_ = com.google.protobuf.LazyStringArrayList.emptyList();
ipv6Cidr_ = com.google.protobuf.LazyStringArrayList.emptyList();
+ bondingType_ = 0;
state_ = 0;
}
@@ -80,6 +81,171 @@ protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldRefl
com.google.cloud.edgenetwork.v1.Subnet.Builder.class);
}
+ /**
+ *
+ *
+ *
+ * Bonding type in the subnet.
+ *
+ *
+ * Protobuf enum {@code google.cloud.edgenetwork.v1.Subnet.BondingType}
+ */
+ public enum BondingType implements com.google.protobuf.ProtocolMessageEnum {
+ /**
+ *
+ *
+ *
+ * Unspecified
+ * Bonding type will be unspecified by default and if the user chooses to
+ * not specify a bonding type at time of creating the VLAN. This will be
+ * treated as mixed bonding where the VLAN will have both bonded and
+ * non-bonded connectivity to machines.
+ *
+ *
+ * BONDING_TYPE_UNSPECIFIED = 0;
+ */
+ BONDING_TYPE_UNSPECIFIED(0),
+ /**
+ *
+ *
+ *
+ * Single homed.
+ *
+ *
+ * BONDED = 1;
+ */
+ BONDED(1),
+ /**
+ *
+ *
+ *
+ * Multi homed.
+ *
+ *
+ * NON_BONDED = 2;
+ */
+ NON_BONDED(2),
+ UNRECOGNIZED(-1),
+ ;
+
+ /**
+ *
+ *
+ *
+ * Unspecified
+ * Bonding type will be unspecified by default and if the user chooses to
+ * not specify a bonding type at time of creating the VLAN. This will be
+ * treated as mixed bonding where the VLAN will have both bonded and
+ * non-bonded connectivity to machines.
+ *
+ *
+ * BONDING_TYPE_UNSPECIFIED = 0;
+ */
+ public static final int BONDING_TYPE_UNSPECIFIED_VALUE = 0;
+ /**
+ *
+ *
+ *
+ * Single homed.
+ *
+ *
+ * BONDED = 1;
+ */
+ public static final int BONDED_VALUE = 1;
+ /**
+ *
+ *
+ *
+ * Multi homed.
+ *
+ *
+ * NON_BONDED = 2;
+ */
+ public static final int NON_BONDED_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 BondingType 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 BondingType forNumber(int value) {
+ switch (value) {
+ case 0:
+ return BONDING_TYPE_UNSPECIFIED;
+ case 1:
+ return BONDED;
+ case 2:
+ return NON_BONDED;
+ default:
+ return null;
+ }
+ }
+
+ public static com.google.protobuf.Internal.EnumLiteMap
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return The enum numeric value on the wire for bondingType.
+ */
+ @java.lang.Override
+ public int getBondingTypeValue() {
+ return bondingType_;
+ }
+ /**
+ *
+ *
+ *
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return The bondingType.
+ */
+ @java.lang.Override
+ public com.google.cloud.edgenetwork.v1.Subnet.BondingType getBondingType() {
+ com.google.cloud.edgenetwork.v1.Subnet.BondingType result =
+ com.google.cloud.edgenetwork.v1.Subnet.BondingType.forNumber(bondingType_);
+ return result == null
+ ? com.google.cloud.edgenetwork.v1.Subnet.BondingType.UNRECOGNIZED
+ : result;
+ }
+
public static final int STATE_FIELD_NUMBER = 10;
private int state_ = 0;
/**
@@ -669,6 +884,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
if (state_ != com.google.cloud.edgenetwork.v1.ResourceState.STATE_UNKNOWN.getNumber()) {
output.writeEnum(10, state_);
}
+ if (bondingType_
+ != com.google.cloud.edgenetwork.v1.Subnet.BondingType.BONDING_TYPE_UNSPECIFIED
+ .getNumber()) {
+ output.writeEnum(11, bondingType_);
+ }
getUnknownFields().writeTo(output);
}
@@ -725,6 +945,11 @@ public int getSerializedSize() {
if (state_ != com.google.cloud.edgenetwork.v1.ResourceState.STATE_UNKNOWN.getNumber()) {
size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, state_);
}
+ if (bondingType_
+ != com.google.cloud.edgenetwork.v1.Subnet.BondingType.BONDING_TYPE_UNSPECIFIED
+ .getNumber()) {
+ size += com.google.protobuf.CodedOutputStream.computeEnumSize(11, bondingType_);
+ }
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
@@ -755,6 +980,7 @@ public boolean equals(final java.lang.Object obj) {
if (!getIpv4CidrList().equals(other.getIpv4CidrList())) return false;
if (!getIpv6CidrList().equals(other.getIpv6CidrList())) return false;
if (getVlanId() != other.getVlanId()) return false;
+ if (bondingType_ != other.bondingType_) return false;
if (state_ != other.state_) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
@@ -795,6 +1021,8 @@ public int hashCode() {
}
hash = (37 * hash) + VLAN_ID_FIELD_NUMBER;
hash = (53 * hash) + getVlanId();
+ hash = (37 * hash) + BONDING_TYPE_FIELD_NUMBER;
+ hash = (53 * hash) + bondingType_;
hash = (37 * hash) + STATE_FIELD_NUMBER;
hash = (53 * hash) + state_;
hash = (29 * hash) + getUnknownFields().hashCode();
@@ -985,6 +1213,7 @@ public Builder clear() {
ipv4Cidr_ = com.google.protobuf.LazyStringArrayList.emptyList();
ipv6Cidr_ = com.google.protobuf.LazyStringArrayList.emptyList();
vlanId_ = 0;
+ bondingType_ = 0;
state_ = 0;
return this;
}
@@ -1056,6 +1285,9 @@ private void buildPartial0(com.google.cloud.edgenetwork.v1.Subnet result) {
result.vlanId_ = vlanId_;
}
if (((from_bitField0_ & 0x00000200) != 0)) {
+ result.bondingType_ = bondingType_;
+ }
+ if (((from_bitField0_ & 0x00000400) != 0)) {
result.state_ = state_;
}
result.bitField0_ |= to_bitField0_;
@@ -1152,6 +1384,9 @@ public Builder mergeFrom(com.google.cloud.edgenetwork.v1.Subnet other) {
if (other.getVlanId() != 0) {
setVlanId(other.getVlanId());
}
+ if (other.bondingType_ != 0) {
+ setBondingTypeValue(other.getBondingTypeValue());
+ }
if (other.state_ != 0) {
setStateValue(other.getStateValue());
}
@@ -1246,9 +1481,15 @@ public Builder mergeFrom(
case 80:
{
state_ = input.readEnum();
- bitField0_ |= 0x00000200;
+ bitField0_ |= 0x00000400;
break;
} // case 80
+ case 88:
+ {
+ bondingType_ = input.readEnum();
+ bitField0_ |= 0x00000200;
+ break;
+ } // case 88
default:
{
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
@@ -2574,6 +2815,128 @@ public Builder clearVlanId() {
return this;
}
+ private int bondingType_ = 0;
+ /**
+ *
+ *
+ *
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return The enum numeric value on the wire for bondingType.
+ */
+ @java.lang.Override
+ public int getBondingTypeValue() {
+ return bondingType_;
+ }
+ /**
+ *
+ *
+ *
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param value The enum numeric value on the wire for bondingType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBondingTypeValue(int value) {
+ bondingType_ = value;
+ bitField0_ |= 0x00000200;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return The bondingType.
+ */
+ @java.lang.Override
+ public com.google.cloud.edgenetwork.v1.Subnet.BondingType getBondingType() {
+ com.google.cloud.edgenetwork.v1.Subnet.BondingType result =
+ com.google.cloud.edgenetwork.v1.Subnet.BondingType.forNumber(bondingType_);
+ return result == null
+ ? com.google.cloud.edgenetwork.v1.Subnet.BondingType.UNRECOGNIZED
+ : result;
+ }
+ /**
+ *
+ *
+ *
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param value The bondingType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBondingType(com.google.cloud.edgenetwork.v1.Subnet.BondingType value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000200;
+ bondingType_ = value.getNumber();
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearBondingType() {
+ bitField0_ = (bitField0_ & ~0x00000200);
+ bondingType_ = 0;
+ onChanged();
+ return this;
+ }
+
private int state_ = 0;
/**
*
@@ -2608,7 +2971,7 @@ public int getStateValue() {
*/
public Builder setStateValue(int value) {
state_ = value;
- bitField0_ |= 0x00000200;
+ bitField0_ |= 0x00000400;
onChanged();
return this;
}
@@ -2649,7 +3012,7 @@ public Builder setState(com.google.cloud.edgenetwork.v1.ResourceState value) {
if (value == null) {
throw new NullPointerException();
}
- bitField0_ |= 0x00000200;
+ bitField0_ |= 0x00000400;
state_ = value.getNumber();
onChanged();
return this;
@@ -2668,7 +3031,7 @@ public Builder setState(com.google.cloud.edgenetwork.v1.ResourceState value) {
* @return This builder for chaining.
*/
public Builder clearState() {
- bitField0_ = (bitField0_ & ~0x00000200);
+ bitField0_ = (bitField0_ & ~0x00000400);
state_ = 0;
onChanged();
return this;
diff --git a/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/SubnetOrBuilder.java b/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/SubnetOrBuilder.java
index 5f43c0b5cb1c..fc7a81e558d6 100644
--- a/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/SubnetOrBuilder.java
+++ b/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/java/com/google/cloud/edgenetwork/v1/SubnetOrBuilder.java
@@ -355,6 +355,43 @@ java.lang.String getLabelsOrDefault(
*/
int getVlanId();
+ /**
+ *
+ *
+ *
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return The enum numeric value on the wire for bondingType.
+ */
+ int getBondingTypeValue();
+ /**
+ *
+ *
+ *
+ * Optional. A bonding type in the subnet creation specifies whether a VLAN
+ * being created will be present on Bonded or Non-Bonded or Both port types.
+ * In addition, this flag is to be used to set the specific network
+ * configuration which clusters can then use for their workloads based on the
+ * bonding choice.
+ *
+ *
+ *
+ * .google.cloud.edgenetwork.v1.Subnet.BondingType bonding_type = 11 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return The bondingType.
+ */
+ com.google.cloud.edgenetwork.v1.Subnet.BondingType getBondingType();
+
/**
*
*
diff --git a/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/proto/google/cloud/edgenetwork/v1/resources.proto b/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/proto/google/cloud/edgenetwork/v1/resources.proto
index a910c92bddf6..254dfade62bd 100644
--- a/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/proto/google/cloud/edgenetwork/v1/resources.proto
+++ b/java-edgenetwork/proto-google-cloud-edgenetwork-v1/src/main/proto/google/cloud/edgenetwork/v1/resources.proto
@@ -118,6 +118,22 @@ message Subnet {
pattern: "projects/{project}/locations/{location}/zones/{zone}/subnets/{subnet}"
};
+ // Bonding type in the subnet.
+ enum BondingType {
+ // Unspecified
+ // Bonding type will be unspecified by default and if the user chooses to
+ // not specify a bonding type at time of creating the VLAN. This will be
+ // treated as mixed bonding where the VLAN will have both bonded and
+ // non-bonded connectivity to machines.
+ BONDING_TYPE_UNSPECIFIED = 0;
+
+ // Single homed.
+ BONDED = 1;
+
+ // Multi homed.
+ NON_BONDED = 2;
+ }
+
// Required. The canonical resource name of the subnet.
string name = 1 [(google.api.field_behavior) = REQUIRED];
@@ -154,6 +170,13 @@ message Subnet {
// automatically.
int32 vlan_id = 9 [(google.api.field_behavior) = OPTIONAL];
+ // Optional. A bonding type in the subnet creation specifies whether a VLAN
+ // being created will be present on Bonded or Non-Bonded or Both port types.
+ // In addition, this flag is to be used to set the specific network
+ // configuration which clusters can then use for their workloads based on the
+ // bonding choice.
+ BondingType bonding_type = 11 [(google.api.field_behavior) = OPTIONAL];
+
// Output only. Current stage of the resource to the device by config push.
ResourceState state = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
}
diff --git a/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/java/com/google/cloud/lifesciences/v2beta/Accelerator.java b/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/java/com/google/cloud/lifesciences/v2beta/Accelerator.java
index 19c01377c3a1..45e79b6e07d9 100644
--- a/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/java/com/google/cloud/lifesciences/v2beta/Accelerator.java
+++ b/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/java/com/google/cloud/lifesciences/v2beta/Accelerator.java
@@ -71,7 +71,7 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
@@ -101,7 +101,7 @@ public java.lang.String getType() {
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
@@ -515,7 +515,7 @@ public Builder mergeFrom(
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
@@ -544,7 +544,7 @@ public java.lang.String getType() {
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
@@ -573,7 +573,7 @@ public com.google.protobuf.ByteString getTypeBytes() {
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
@@ -601,7 +601,7 @@ public Builder setType(java.lang.String value) {
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
@@ -625,7 +625,7 @@ public Builder clearType() {
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
diff --git a/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/java/com/google/cloud/lifesciences/v2beta/AcceleratorOrBuilder.java b/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/java/com/google/cloud/lifesciences/v2beta/AcceleratorOrBuilder.java
index 3cf42bde13ef..cb65070db862 100644
--- a/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/java/com/google/cloud/lifesciences/v2beta/AcceleratorOrBuilder.java
+++ b/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/java/com/google/cloud/lifesciences/v2beta/AcceleratorOrBuilder.java
@@ -28,7 +28,7 @@ public interface AcceleratorOrBuilder
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
@@ -47,7 +47,7 @@ public interface AcceleratorOrBuilder
*
*
*
- * The accelerator type string (for example, "nvidia-tesla-k80").
+ * The accelerator type string (for example, "nvidia-tesla-t4").
*
* Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
* attached, the required runtime libraries will be made available to all
diff --git a/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/proto/google/cloud/lifesciences/v2beta/workflows.proto b/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/proto/google/cloud/lifesciences/v2beta/workflows.proto
index 69e11a8d2fd6..a947a71226cb 100644
--- a/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/proto/google/cloud/lifesciences/v2beta/workflows.proto
+++ b/java-life-sciences/proto-google-cloud-life-sciences-v2beta/src/main/proto/google/cloud/lifesciences/v2beta/workflows.proto
@@ -448,7 +448,7 @@ message ServiceAccount {
// Carries information about an accelerator that can be attached to a VM.
message Accelerator {
- // The accelerator type string (for example, "nvidia-tesla-k80").
+ // The accelerator type string (for example, "nvidia-tesla-t4").
//
// Only NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is
// attached, the required runtime libraries will be made available to all
diff --git a/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/SecurityCenterClient.java b/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/SecurityCenterClient.java
index 11be8e92335c..fc86ea9ef42f 100644
--- a/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/SecurityCenterClient.java
+++ b/java-securitycenter/google-cloud-securitycenter/src/main/java/com/google/cloud/securitycenter/v2/SecurityCenterClient.java
@@ -59,7 +59,7 @@
* // - It may require specifying regional endpoints when creating the service client as shown in
* // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
* try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
- * OrganizationName parent = OrganizationName.of("[ORGANIZATION]");
+ * OrganizationLocationName parent = OrganizationLocationName.of("[ORGANIZATION]", "[LOCATION]");
* List
*
+ *
*
+ *
@@ -587,6 +589,7 @@
*
*
+ *
@@ -989,6 +992,42 @@ public final OperationsClient getHttpJsonOperationsClient() {
return httpJsonOperationsClient;
}
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Creates a ResourceValueConfig for an organization. Maps user's tags to difference resource
+ * values for use by the attack path simulation.
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
+ * OrganizationLocationName parent = OrganizationLocationName.of("[ORGANIZATION]", "[LOCATION]");
+ * List
+ *
+ * @param parent Required. Resource name of the new ResourceValueConfig's parent. The parent field
+ * in the CreateResourceValueConfigRequest messages must either be empty or match this field.
+ * @param requests Required. The resource value configs to be created.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final BatchCreateResourceValueConfigsResponse batchCreateResourceValueConfigs(
+ OrganizationLocationName parent, List
- *
- *
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
public final GroupFindingsPagedResponse groupFindings(SourceName parent, String groupBy) {
@@ -3975,15 +4026,6 @@ public final GroupFindingsPagedResponse groupFindings(SourceName parent, String
* @param groupBy Required. Expression that defines what assets fields to use for grouping. The
* string value should follow SQL syntax: comma separated list of fields. For example:
* "parent,resource_name".
- *
- *
- *
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
public final GroupFindingsPagedResponse groupFindings(String parent, String groupBy) {
@@ -4137,6 +4179,43 @@ public final UnaryCallable{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
+ * OrganizationValuedResourceName parent =
+ * OrganizationValuedResourceName.of(
+ * "[ORGANIZATION]", "[LOCATION]", "[SIMULATION]", "[VALUED_RESOURCE]");
+ * for (AttackPath element : securityCenterClient.listAttackPaths(parent).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param parent Required. Name of parent to list attack paths.
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
+ * OrganizationLocationName parent = OrganizationLocationName.of("[ORGANIZATION]", "[LOCATION]");
+ * for (ResourceValueConfig element :
+ * securityCenterClient.listResourceValueConfigs(parent).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param parent Required. The parent, which owns the collection of resource value configs. Its
+ * format is "organizations/[organization_id]"
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListResourceValueConfigsPagedResponse listResourceValueConfigs(
+ OrganizationLocationName parent) {
+ ListResourceValueConfigsRequest request =
+ ListResourceValueConfigsRequest.newBuilder()
+ .setParent(parent == null ? null : parent.toString())
+ .build();
+ return listResourceValueConfigs(request);
+ }
+
// AUTO-GENERATED DOCUMENTATION AND METHOD.
/**
* Lists all ResourceValueConfigs.
@@ -5831,7 +5950,8 @@ public final UnaryCallable
+ * Information about [Google Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AdaptiveProtection}
+ */
+public final class AdaptiveProtection extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AdaptiveProtection)
+ AdaptiveProtectionOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AdaptiveProtection.newBuilder() to construct.
+ private AdaptiveProtection(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AdaptiveProtection() {}
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AdaptiveProtection();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.CloudArmorProto
+ .internal_static_google_cloud_securitycenter_v2_AdaptiveProtection_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.CloudArmorProto
+ .internal_static_google_cloud_securitycenter_v2_AdaptiveProtection_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AdaptiveProtection.class,
+ com.google.cloud.securitycenter.v2.AdaptiveProtection.Builder.class);
+ }
+
+ public static final int CONFIDENCE_FIELD_NUMBER = 1;
+ private double confidence_ = 0D;
+ /**
+ *
+ *
+ *
+ * A score of 0 means that there is low confidence that the detected event is
+ * an actual attack. A score of 1 means that there is high confidence that the
+ * detected event is an attack. See the [Adaptive Protection
+ * documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning)
+ * for further explanation.
+ *
+ *
+ * double confidence = 1;
+ *
+ * @return The confidence.
+ */
+ @java.lang.Override
+ public double getConfidence() {
+ return confidence_;
+ }
+
+ 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 (java.lang.Double.doubleToRawLongBits(confidence_) != 0) {
+ output.writeDouble(1, confidence_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (java.lang.Double.doubleToRawLongBits(confidence_) != 0) {
+ size += com.google.protobuf.CodedOutputStream.computeDoubleSize(1, confidence_);
+ }
+ 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.securitycenter.v2.AdaptiveProtection)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AdaptiveProtection other =
+ (com.google.cloud.securitycenter.v2.AdaptiveProtection) obj;
+
+ if (java.lang.Double.doubleToLongBits(getConfidence())
+ != java.lang.Double.doubleToLongBits(other.getConfidence())) 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) + CONFIDENCE_FIELD_NUMBER;
+ hash =
+ (53 * hash)
+ + com.google.protobuf.Internal.hashLong(
+ java.lang.Double.doubleToLongBits(getConfidence()));
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection 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.securitycenter.v2.AdaptiveProtection parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection 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.securitycenter.v2.AdaptiveProtection parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection 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.securitycenter.v2.AdaptiveProtection parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection 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.securitycenter.v2.AdaptiveProtection parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection 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.securitycenter.v2.AdaptiveProtection 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;
+ }
+ /**
+ *
+ *
+ *
+ * Information about [Google Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AdaptiveProtection}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder
+ * A score of 0 means that there is low confidence that the detected event is
+ * an actual attack. A score of 1 means that there is high confidence that the
+ * detected event is an attack. See the [Adaptive Protection
+ * documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning)
+ * for further explanation.
+ *
+ *
+ * double confidence = 1;
+ *
+ * @return The confidence.
+ */
+ @java.lang.Override
+ public double getConfidence() {
+ return confidence_;
+ }
+ /**
+ *
+ *
+ *
+ * A score of 0 means that there is low confidence that the detected event is
+ * an actual attack. A score of 1 means that there is high confidence that the
+ * detected event is an attack. See the [Adaptive Protection
+ * documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning)
+ * for further explanation.
+ *
+ *
+ * double confidence = 1;
+ *
+ * @param value The confidence to set.
+ * @return This builder for chaining.
+ */
+ public Builder setConfidence(double value) {
+
+ confidence_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A score of 0 means that there is low confidence that the detected event is
+ * an actual attack. A score of 1 means that there is high confidence that the
+ * detected event is an attack. See the [Adaptive Protection
+ * documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning)
+ * for further explanation.
+ *
+ *
+ * double confidence = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearConfidence() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ confidence_ = 0D;
+ 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.securitycenter.v2.AdaptiveProtection)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AdaptiveProtection)
+ private static final com.google.cloud.securitycenter.v2.AdaptiveProtection DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.AdaptiveProtection();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AdaptiveProtection getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * A score of 0 means that there is low confidence that the detected event is
+ * an actual attack. A score of 1 means that there is high confidence that the
+ * detected event is an attack. See the [Adaptive Protection
+ * documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning)
+ * for further explanation.
+ *
+ *
+ * double confidence = 1;
+ *
+ * @return The confidence.
+ */
+ double getConfidence();
+}
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/Attack.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/Attack.java
new file mode 100644
index 000000000000..1ee47d089276
--- /dev/null
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/Attack.java
@@ -0,0 +1,810 @@
+/*
+ * 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/securitycenter/v2/cloud_armor.proto
+
+// Protobuf Java Version: 3.25.3
+package com.google.cloud.securitycenter.v2;
+
+/**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.Attack}
+ */
+public final class Attack extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.Attack)
+ AttackOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Attack.newBuilder() to construct.
+ private Attack(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private Attack() {
+ classification_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new Attack();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.CloudArmorProto
+ .internal_static_google_cloud_securitycenter_v2_Attack_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.CloudArmorProto
+ .internal_static_google_cloud_securitycenter_v2_Attack_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.Attack.class,
+ com.google.cloud.securitycenter.v2.Attack.Builder.class);
+ }
+
+ public static final int VOLUME_PPS_FIELD_NUMBER = 1;
+ private int volumePps_ = 0;
+ /**
+ *
+ *
+ *
+ * Total PPS (packets per second) volume of attack.
+ *
+ *
+ * int32 volume_pps = 1;
+ *
+ * @return The volumePps.
+ */
+ @java.lang.Override
+ public int getVolumePps() {
+ return volumePps_;
+ }
+
+ public static final int VOLUME_BPS_FIELD_NUMBER = 2;
+ private int volumeBps_ = 0;
+ /**
+ *
+ *
+ *
+ * Total BPS (bytes per second) volume of attack.
+ *
+ *
+ * int32 volume_bps = 2;
+ *
+ * @return The volumeBps.
+ */
+ @java.lang.Override
+ public int getVolumeBps() {
+ return volumeBps_;
+ }
+
+ public static final int CLASSIFICATION_FIELD_NUMBER = 3;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object classification_ = "";
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @return The classification.
+ */
+ @java.lang.Override
+ public java.lang.String getClassification() {
+ java.lang.Object ref = classification_;
+ 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();
+ classification_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @return The bytes for classification.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getClassificationBytes() {
+ java.lang.Object ref = classification_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ classification_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (volumePps_ != 0) {
+ output.writeInt32(1, volumePps_);
+ }
+ if (volumeBps_ != 0) {
+ output.writeInt32(2, volumeBps_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(classification_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, classification_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (volumePps_ != 0) {
+ size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, volumePps_);
+ }
+ if (volumeBps_ != 0) {
+ size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, volumeBps_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(classification_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, classification_);
+ }
+ 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.securitycenter.v2.Attack)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.Attack other =
+ (com.google.cloud.securitycenter.v2.Attack) obj;
+
+ if (getVolumePps() != other.getVolumePps()) return false;
+ if (getVolumeBps() != other.getVolumeBps()) return false;
+ if (!getClassification().equals(other.getClassification())) 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) + VOLUME_PPS_FIELD_NUMBER;
+ hash = (53 * hash) + getVolumePps();
+ hash = (37 * hash) + VOLUME_BPS_FIELD_NUMBER;
+ hash = (53 * hash) + getVolumeBps();
+ hash = (37 * hash) + CLASSIFICATION_FIELD_NUMBER;
+ hash = (53 * hash) + getClassification().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack 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.securitycenter.v2.Attack parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack 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.securitycenter.v2.Attack parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack 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.securitycenter.v2.Attack parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack 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.securitycenter.v2.Attack parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack 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.securitycenter.v2.Attack 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;
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.Attack}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder
+ * Total PPS (packets per second) volume of attack.
+ *
+ *
+ * int32 volume_pps = 1;
+ *
+ * @return The volumePps.
+ */
+ @java.lang.Override
+ public int getVolumePps() {
+ return volumePps_;
+ }
+ /**
+ *
+ *
+ *
+ * Total PPS (packets per second) volume of attack.
+ *
+ *
+ * int32 volume_pps = 1;
+ *
+ * @param value The volumePps to set.
+ * @return This builder for chaining.
+ */
+ public Builder setVolumePps(int value) {
+
+ volumePps_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Total PPS (packets per second) volume of attack.
+ *
+ *
+ * int32 volume_pps = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearVolumePps() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ volumePps_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private int volumeBps_;
+ /**
+ *
+ *
+ *
+ * Total BPS (bytes per second) volume of attack.
+ *
+ *
+ * int32 volume_bps = 2;
+ *
+ * @return The volumeBps.
+ */
+ @java.lang.Override
+ public int getVolumeBps() {
+ return volumeBps_;
+ }
+ /**
+ *
+ *
+ *
+ * Total BPS (bytes per second) volume of attack.
+ *
+ *
+ * int32 volume_bps = 2;
+ *
+ * @param value The volumeBps to set.
+ * @return This builder for chaining.
+ */
+ public Builder setVolumeBps(int value) {
+
+ volumeBps_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Total BPS (bytes per second) volume of attack.
+ *
+ *
+ * int32 volume_bps = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearVolumeBps() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ volumeBps_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object classification_ = "";
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @return The classification.
+ */
+ public java.lang.String getClassification() {
+ java.lang.Object ref = classification_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ classification_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @return The bytes for classification.
+ */
+ public com.google.protobuf.ByteString getClassificationBytes() {
+ java.lang.Object ref = classification_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ classification_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @param value The classification to set.
+ * @return This builder for chaining.
+ */
+ public Builder setClassification(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ classification_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearClassification() {
+ classification_ = getDefaultInstance().getClassification();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @param value The bytes for classification to set.
+ * @return This builder for chaining.
+ */
+ public Builder setClassificationBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ classification_ = value;
+ bitField0_ |= 0x00000004;
+ 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.securitycenter.v2.Attack)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.Attack)
+ private static final com.google.cloud.securitycenter.v2.Attack DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.Attack();
+ }
+
+ public static com.google.cloud.securitycenter.v2.Attack getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Total PPS (packets per second) volume of attack.
+ *
+ *
+ * int32 volume_pps = 1;
+ *
+ * @return The volumePps.
+ */
+ int getVolumePps();
+
+ /**
+ *
+ *
+ *
+ * Total BPS (bytes per second) volume of attack.
+ *
+ *
+ * int32 volume_bps = 2;
+ *
+ * @return The volumeBps.
+ */
+ int getVolumeBps();
+
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @return The classification.
+ */
+ java.lang.String getClassification();
+ /**
+ *
+ *
+ *
+ * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.
+ *
+ *
+ * string classification = 3;
+ *
+ * @return The bytes for classification.
+ */
+ com.google.protobuf.ByteString getClassificationBytes();
+}
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/AttackPathName.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/AttackPathName.java
index 342d1ad5c70f..79f178399ad3 100644
--- a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/AttackPathName.java
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/AttackPathName.java
@@ -17,6 +17,7 @@
package com.google.cloud.securitycenter.v2;
import com.google.api.pathtemplate.PathTemplate;
+import com.google.api.pathtemplate.ValidationException;
import com.google.api.resourcenames.ResourceName;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableMap;
@@ -32,11 +33,17 @@ public class AttackPathName implements ResourceName {
private static final PathTemplate ORGANIZATION_SIMULATION_VALUED_RESOURCE_ATTACK_PATH =
PathTemplate.createWithoutUrlEncoding(
"organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}/attackPaths/{attack_path}");
+ private static final PathTemplate ORGANIZATION_LOCATION_SIMULATION_VALUED_RESOURCE_ATTACK_PATH =
+ PathTemplate.createWithoutUrlEncoding(
+ "organizations/{organization}/locations/{location}/simulations/{simulation}/valuedResources/{valued_resource}/attackPaths/{attack_path}");
private volatile Map
+ * AWS metadata associated with the resource, only applicable if the finding's
+ * cloud provider is Amazon Web Services.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AwsMetadata}
+ */
+public final class AwsMetadata extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AwsMetadata)
+ AwsMetadataOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AwsMetadata.newBuilder() to construct.
+ private AwsMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AwsMetadata() {
+ organizationalUnits_ = java.util.Collections.emptyList();
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AwsMetadata();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AwsMetadata_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AwsMetadata_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AwsMetadata.class,
+ com.google.cloud.securitycenter.v2.AwsMetadata.Builder.class);
+ }
+
+ public interface AwsOrganizationOrBuilder
+ extends
+ // @@protoc_insertion_point(interface_extends:google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization)
+ com.google.protobuf.MessageOrBuilder {
+
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ java.lang.String getId();
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ com.google.protobuf.ByteString getIdBytes();
+ }
+ /**
+ *
+ *
+ *
+ * An organization is a collection of accounts that are centrally managed
+ * together using consolidated billing, organized hierarchically with
+ * organizational units (OUs), and controlled with policies.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization}
+ */
+ public static final class AwsOrganization extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization)
+ AwsOrganizationOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AwsOrganization.newBuilder() to construct.
+ private AwsOrganization(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AwsOrganization() {
+ id_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AwsOrganization();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AwsMetadata_AwsOrganization_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AwsMetadata_AwsOrganization_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.class,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.Builder.class);
+ }
+
+ public static final int ID_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object id_ = "";
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ @java.lang.Override
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
+ }
+ 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.securitycenter.v2.AwsMetadata.AwsOrganization)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization other =
+ (com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization) obj;
+
+ if (!getId().equals(other.getId())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + ID_FIELD_NUMBER;
+ hash = (53 * hash) + getId().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization 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.securitycenter.v2.AwsMetadata.AwsOrganization parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization 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.securitycenter.v2.AwsMetadata.AwsOrganization parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization 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.securitycenter.v2.AwsMetadata.AwsOrganization parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization 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.securitycenter.v2.AwsMetadata.AwsOrganization parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization 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.securitycenter.v2.AwsMetadata.AwsOrganization 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;
+ }
+ /**
+ *
+ *
+ *
+ * An organization is a collection of accounts that are centrally managed
+ * together using consolidated billing, organized hierarchically with
+ * organizational units (OUs), and controlled with policies.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setId(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearId() {
+ id_ = getDefaultInstance().getId();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) for the organization. The regex pattern for an
+ * organization ID string requires "o-" followed by from 10 to 32 lowercase
+ * letters or digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The bytes for id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setIdBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ @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.securitycenter.v2.AwsMetadata.AwsOrganization)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization)
+ private static final com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ java.lang.String getId();
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ com.google.protobuf.ByteString getIdBytes();
+
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The name.
+ */
+ java.lang.String getName();
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The bytes for name.
+ */
+ com.google.protobuf.ByteString getNameBytes();
+ }
+ /**
+ *
+ *
+ *
+ * An Organizational Unit (OU) is a container of AWS accounts within a root of
+ * an organization. Policies that are attached to an OU apply to all accounts
+ * contained in that OU and in any child OUs.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit}
+ */
+ public static final class AwsOrganizationalUnit extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit)
+ AwsOrganizationalUnitOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AwsOrganizationalUnit.newBuilder() to construct.
+ private AwsOrganizationalUnit(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AwsOrganizationalUnit() {
+ id_ = "";
+ name_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AwsOrganizationalUnit();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AwsMetadata_AwsOrganizationalUnit_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AwsMetadata_AwsOrganizationalUnit_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.class,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder.class);
+ }
+
+ public static final int ID_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object id_ = "";
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ @java.lang.Override
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int NAME_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object name_ = "";
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The name.
+ */
+ @java.lang.Override
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The bytes for name.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
+ }
+ 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.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit other =
+ (com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit) obj;
+
+ if (!getId().equals(other.getId())) return false;
+ if (!getName().equals(other.getName())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + ID_FIELD_NUMBER;
+ hash = (53 * hash) + getId().hashCode();
+ hash = (37 * hash) + NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getName().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit 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.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit 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.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit 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.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit
+ 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.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit 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.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit 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;
+ }
+ /**
+ *
+ *
+ *
+ * An Organizational Unit (OU) is a container of AWS accounts within a root of
+ * an organization. Policies that are attached to an OU apply to all accounts
+ * contained in that OU and in any child OUs.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setId(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearId() {
+ id_ = getDefaultInstance().getId();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) associated with this OU. The regex pattern for
+ * an organizational unit ID string requires "ou-" followed by from 4 to 32
+ * lowercase letters or digits (the ID of the root that contains the OU).
+ * This string is followed by a second "-" dash and from 8 to 32 additional
+ * lowercase letters or digits. For example, "ou-ab12-cd34ef56".
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The bytes for id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setIdBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object name_ = "";
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The name.
+ */
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The bytes for name.
+ */
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @param value The name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ name_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearName() {
+ name_ = getDefaultInstance().getName();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of the OU.
+ *
+ *
+ * string name = 2;
+ *
+ * @param value The bytes for name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ name_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit)
+ private static final com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ java.lang.String getId();
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ com.google.protobuf.ByteString getIdBytes();
+
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The name.
+ */
+ java.lang.String getName();
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The bytes for name.
+ */
+ com.google.protobuf.ByteString getNameBytes();
+ }
+ /**
+ *
+ *
+ *
+ * An AWS account that is a member of an organization.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AwsMetadata.AwsAccount}
+ */
+ public static final class AwsAccount extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AwsMetadata.AwsAccount)
+ AwsAccountOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AwsAccount.newBuilder() to construct.
+ private AwsAccount(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AwsAccount() {
+ id_ = "";
+ name_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AwsAccount();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AwsMetadata_AwsAccount_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AwsMetadata_AwsAccount_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.class,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.Builder.class);
+ }
+
+ public static final int ID_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object id_ = "";
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ @java.lang.Override
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int NAME_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object name_ = "";
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The name.
+ */
+ @java.lang.Override
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The bytes for name.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
+ }
+ 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.securitycenter.v2.AwsMetadata.AwsAccount)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount other =
+ (com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount) obj;
+
+ if (!getId().equals(other.getId())) return false;
+ if (!getName().equals(other.getName())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + ID_FIELD_NUMBER;
+ hash = (53 * hash) + getId().hashCode();
+ hash = (37 * hash) + NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getName().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount 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.securitycenter.v2.AwsMetadata.AwsAccount parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount 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.securitycenter.v2.AwsMetadata.AwsAccount parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount 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.securitycenter.v2.AwsMetadata.AwsAccount parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount 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.securitycenter.v2.AwsMetadata.AwsAccount parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount 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.securitycenter.v2.AwsMetadata.AwsAccount 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;
+ }
+ /**
+ *
+ *
+ *
+ * An AWS account that is a member of an organization.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AwsMetadata.AwsAccount}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setId(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearId() {
+ id_ = getDefaultInstance().getId();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The unique identifier (ID) of the account, containing exactly 12 digits.
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The bytes for id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setIdBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object name_ = "";
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The name.
+ */
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @return The bytes for name.
+ */
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @param value The name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ name_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearName() {
+ name_ = getDefaultInstance().getName();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The friendly name of this account.
+ *
+ *
+ * string name = 2;
+ *
+ * @param value The bytes for name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ name_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.cloud.securitycenter.v2.AwsMetadata.AwsAccount)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AwsMetadata.AwsAccount)
+ private static final com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ *
+ * @return Whether the organization field is set.
+ */
+ @java.lang.Override
+ public boolean hasOrganization() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ *
+ * @return The organization.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization getOrganization() {
+ return organization_ == null
+ ? com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.getDefaultInstance()
+ : organization_;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationOrBuilder
+ getOrganizationOrBuilder() {
+ return organization_ == null
+ ? com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.getDefaultInstance()
+ : organization_;
+ }
+
+ public static final int ORGANIZATIONAL_UNITS_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private java.util.List
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ @java.lang.Override
+ public java.util.List
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ @java.lang.Override
+ public java.util.List<
+ ? extends com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnitOrBuilder>
+ getOrganizationalUnitsOrBuilderList() {
+ return organizationalUnits_;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ @java.lang.Override
+ public int getOrganizationalUnitsCount() {
+ return organizationalUnits_.size();
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit
+ getOrganizationalUnits(int index) {
+ return organizationalUnits_.get(index);
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnitOrBuilder
+ getOrganizationalUnitsOrBuilder(int index) {
+ return organizationalUnits_.get(index);
+ }
+
+ public static final int ACCOUNT_FIELD_NUMBER = 3;
+ private com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account_;
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ *
+ * @return Whether the account field is set.
+ */
+ @java.lang.Override
+ public boolean hasAccount() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ *
+ * @return The account.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount getAccount() {
+ return account_ == null
+ ? com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.getDefaultInstance()
+ : account_;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccountOrBuilder getAccountOrBuilder() {
+ return account_ == null
+ ? com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.getDefaultInstance()
+ : account_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeMessage(1, getOrganization());
+ }
+ for (int i = 0; i < organizationalUnits_.size(); i++) {
+ output.writeMessage(2, organizationalUnits_.get(i));
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeMessage(3, getAccount());
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getOrganization());
+ }
+ for (int i = 0; i < organizationalUnits_.size(); i++) {
+ size +=
+ com.google.protobuf.CodedOutputStream.computeMessageSize(2, organizationalUnits_.get(i));
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getAccount());
+ }
+ 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.securitycenter.v2.AwsMetadata)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AwsMetadata other =
+ (com.google.cloud.securitycenter.v2.AwsMetadata) obj;
+
+ if (hasOrganization() != other.hasOrganization()) return false;
+ if (hasOrganization()) {
+ if (!getOrganization().equals(other.getOrganization())) return false;
+ }
+ if (!getOrganizationalUnitsList().equals(other.getOrganizationalUnitsList())) return false;
+ if (hasAccount() != other.hasAccount()) return false;
+ if (hasAccount()) {
+ if (!getAccount().equals(other.getAccount())) 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 (hasOrganization()) {
+ hash = (37 * hash) + ORGANIZATION_FIELD_NUMBER;
+ hash = (53 * hash) + getOrganization().hashCode();
+ }
+ if (getOrganizationalUnitsCount() > 0) {
+ hash = (37 * hash) + ORGANIZATIONAL_UNITS_FIELD_NUMBER;
+ hash = (53 * hash) + getOrganizationalUnitsList().hashCode();
+ }
+ if (hasAccount()) {
+ hash = (37 * hash) + ACCOUNT_FIELD_NUMBER;
+ hash = (53 * hash) + getAccount().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata 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.securitycenter.v2.AwsMetadata parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata 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.securitycenter.v2.AwsMetadata parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata 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.securitycenter.v2.AwsMetadata parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata 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.securitycenter.v2.AwsMetadata parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata 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.securitycenter.v2.AwsMetadata 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;
+ }
+ /**
+ *
+ *
+ *
+ * AWS metadata associated with the resource, only applicable if the finding's
+ * cloud provider is Amazon Web Services.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AwsMetadata}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ *
+ * @return Whether the organization field is set.
+ */
+ public boolean hasOrganization() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ *
+ * @return The organization.
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization getOrganization() {
+ if (organizationBuilder_ == null) {
+ return organization_ == null
+ ? com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.getDefaultInstance()
+ : organization_;
+ } else {
+ return organizationBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ public Builder setOrganization(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization value) {
+ if (organizationBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ organization_ = value;
+ } else {
+ organizationBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ public Builder setOrganization(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.Builder builderForValue) {
+ if (organizationBuilder_ == null) {
+ organization_ = builderForValue.build();
+ } else {
+ organizationBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ public Builder mergeOrganization(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization value) {
+ if (organizationBuilder_ == null) {
+ if (((bitField0_ & 0x00000001) != 0)
+ && organization_ != null
+ && organization_
+ != com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization
+ .getDefaultInstance()) {
+ getOrganizationBuilder().mergeFrom(value);
+ } else {
+ organization_ = value;
+ }
+ } else {
+ organizationBuilder_.mergeFrom(value);
+ }
+ if (organization_ != null) {
+ bitField0_ |= 0x00000001;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ public Builder clearOrganization() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ organization_ = null;
+ if (organizationBuilder_ != null) {
+ organizationBuilder_.dispose();
+ organizationBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.Builder
+ getOrganizationBuilder() {
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return getOrganizationFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationOrBuilder
+ getOrganizationOrBuilder() {
+ if (organizationBuilder_ != null) {
+ return organizationBuilder_.getMessageOrBuilder();
+ } else {
+ return organization_ == null
+ ? com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.getDefaultInstance()
+ : organization_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.Builder,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationOrBuilder>
+ getOrganizationFieldBuilder() {
+ if (organizationBuilder_ == null) {
+ organizationBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization.Builder,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationOrBuilder>(
+ getOrganization(), getParentForChildren(), isClean());
+ organization_ = null;
+ }
+ return organizationBuilder_;
+ }
+
+ private java.util.List
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public java.util.List
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public int getOrganizationalUnitsCount() {
+ if (organizationalUnitsBuilder_ == null) {
+ return organizationalUnits_.size();
+ } else {
+ return organizationalUnitsBuilder_.getCount();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit
+ getOrganizationalUnits(int index) {
+ if (organizationalUnitsBuilder_ == null) {
+ return organizationalUnits_.get(index);
+ } else {
+ return organizationalUnitsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder setOrganizationalUnits(
+ int index, com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit value) {
+ if (organizationalUnitsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureOrganizationalUnitsIsMutable();
+ organizationalUnits_.set(index, value);
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder setOrganizationalUnits(
+ int index,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder
+ builderForValue) {
+ if (organizationalUnitsBuilder_ == null) {
+ ensureOrganizationalUnitsIsMutable();
+ organizationalUnits_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder addOrganizationalUnits(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit value) {
+ if (organizationalUnitsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureOrganizationalUnitsIsMutable();
+ organizationalUnits_.add(value);
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder addOrganizationalUnits(
+ int index, com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit value) {
+ if (organizationalUnitsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureOrganizationalUnitsIsMutable();
+ organizationalUnits_.add(index, value);
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder addOrganizationalUnits(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder
+ builderForValue) {
+ if (organizationalUnitsBuilder_ == null) {
+ ensureOrganizationalUnitsIsMutable();
+ organizationalUnits_.add(builderForValue.build());
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder addOrganizationalUnits(
+ int index,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder
+ builderForValue) {
+ if (organizationalUnitsBuilder_ == null) {
+ ensureOrganizationalUnitsIsMutable();
+ organizationalUnits_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder addAllOrganizationalUnits(
+ java.lang.Iterable<
+ ? extends com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit>
+ values) {
+ if (organizationalUnitsBuilder_ == null) {
+ ensureOrganizationalUnitsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, organizationalUnits_);
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder clearOrganizationalUnits() {
+ if (organizationalUnitsBuilder_ == null) {
+ organizationalUnits_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public Builder removeOrganizationalUnits(int index) {
+ if (organizationalUnitsBuilder_ == null) {
+ ensureOrganizationalUnitsIsMutable();
+ organizationalUnits_.remove(index);
+ onChanged();
+ } else {
+ organizationalUnitsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder
+ getOrganizationalUnitsBuilder(int index) {
+ return getOrganizationalUnitsFieldBuilder().getBuilder(index);
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnitOrBuilder
+ getOrganizationalUnitsOrBuilder(int index) {
+ if (organizationalUnitsBuilder_ == null) {
+ return organizationalUnits_.get(index);
+ } else {
+ return organizationalUnitsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public java.util.List<
+ ? extends com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnitOrBuilder>
+ getOrganizationalUnitsOrBuilderList() {
+ if (organizationalUnitsBuilder_ != null) {
+ return organizationalUnitsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(organizationalUnits_);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder
+ addOrganizationalUnitsBuilder() {
+ return getOrganizationalUnitsFieldBuilder()
+ .addBuilder(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit
+ .getDefaultInstance());
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder
+ addOrganizationalUnitsBuilder(int index) {
+ return getOrganizationalUnitsFieldBuilder()
+ .addBuilder(
+ index,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit
+ .getDefaultInstance());
+ }
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ public java.util.List<
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder>
+ getOrganizationalUnitsBuilderList() {
+ return getOrganizationalUnitsFieldBuilder().getBuilderList();
+ }
+
+ private com.google.protobuf.RepeatedFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnitOrBuilder>
+ getOrganizationalUnitsFieldBuilder() {
+ if (organizationalUnitsBuilder_ == null) {
+ organizationalUnitsBuilder_ =
+ new com.google.protobuf.RepeatedFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit.Builder,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnitOrBuilder>(
+ organizationalUnits_,
+ ((bitField0_ & 0x00000002) != 0),
+ getParentForChildren(),
+ isClean());
+ organizationalUnits_ = null;
+ }
+ return organizationalUnitsBuilder_;
+ }
+
+ private com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.Builder,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccountOrBuilder>
+ accountBuilder_;
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ *
+ * @return Whether the account field is set.
+ */
+ public boolean hasAccount() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ *
+ * @return The account.
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount getAccount() {
+ if (accountBuilder_ == null) {
+ return account_ == null
+ ? com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.getDefaultInstance()
+ : account_;
+ } else {
+ return accountBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ public Builder setAccount(com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount value) {
+ if (accountBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ account_ = value;
+ } else {
+ accountBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ public Builder setAccount(
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.Builder builderForValue) {
+ if (accountBuilder_ == null) {
+ account_ = builderForValue.build();
+ } else {
+ accountBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ public Builder mergeAccount(com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount value) {
+ if (accountBuilder_ == null) {
+ if (((bitField0_ & 0x00000004) != 0)
+ && account_ != null
+ && account_
+ != com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.getDefaultInstance()) {
+ getAccountBuilder().mergeFrom(value);
+ } else {
+ account_ = value;
+ }
+ } else {
+ accountBuilder_.mergeFrom(value);
+ }
+ if (account_ != null) {
+ bitField0_ |= 0x00000004;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ public Builder clearAccount() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ account_ = null;
+ if (accountBuilder_ != null) {
+ accountBuilder_.dispose();
+ accountBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.Builder getAccountBuilder() {
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return getAccountFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ public com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccountOrBuilder
+ getAccountOrBuilder() {
+ if (accountBuilder_ != null) {
+ return accountBuilder_.getMessageOrBuilder();
+ } else {
+ return account_ == null
+ ? com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.getDefaultInstance()
+ : account_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.Builder,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccountOrBuilder>
+ getAccountFieldBuilder() {
+ if (accountBuilder_ == null) {
+ accountBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount.Builder,
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccountOrBuilder>(
+ getAccount(), getParentForChildren(), isClean());
+ account_ = null;
+ }
+ return accountBuilder_;
+ }
+
+ @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.securitycenter.v2.AwsMetadata)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AwsMetadata)
+ private static final com.google.cloud.securitycenter.v2.AwsMetadata DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.AwsMetadata();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AwsMetadata getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ *
+ * @return Whether the organization field is set.
+ */
+ boolean hasOrganization();
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ *
+ * @return The organization.
+ */
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization getOrganization();
+ /**
+ *
+ *
+ *
+ * The AWS organization associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganization organization = 1;
+ */
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationOrBuilder
+ getOrganizationOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ java.util.List
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit getOrganizationalUnits(
+ int index);
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ int getOrganizationalUnitsCount();
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ java.util.List<
+ ? extends com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnitOrBuilder>
+ getOrganizationalUnitsOrBuilderList();
+ /**
+ *
+ *
+ *
+ * A list of AWS organizational units associated with the resource, ordered
+ * from lowest level (closest to the account) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnit organizational_units = 2;
+ *
+ */
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsOrganizationalUnitOrBuilder
+ getOrganizationalUnitsOrBuilder(int index);
+
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ *
+ * @return Whether the account field is set.
+ */
+ boolean hasAccount();
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ *
+ * @return The account.
+ */
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccount getAccount();
+ /**
+ *
+ *
+ *
+ * The AWS account associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AwsMetadata.AwsAccount account = 3;
+ */
+ com.google.cloud.securitycenter.v2.AwsMetadata.AwsAccountOrBuilder getAccountOrBuilder();
+}
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/AzureMetadata.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/AzureMetadata.java
new file mode 100644
index 000000000000..bbc9d41a9d19
--- /dev/null
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/AzureMetadata.java
@@ -0,0 +1,4033 @@
+/*
+ * 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/securitycenter/v2/resource.proto
+
+// Protobuf Java Version: 3.25.3
+package com.google.cloud.securitycenter.v2;
+
+/**
+ *
+ *
+ *
+ * Azure metadata associated with the resource, only applicable if the finding's
+ * cloud provider is Microsoft Azure.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AzureMetadata}
+ */
+public final class AzureMetadata extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AzureMetadata)
+ AzureMetadataOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AzureMetadata.newBuilder() to construct.
+ private AzureMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AzureMetadata() {
+ managementGroups_ = java.util.Collections.emptyList();
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AzureMetadata();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AzureMetadata_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AzureMetadata_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AzureMetadata.class,
+ com.google.cloud.securitycenter.v2.AzureMetadata.Builder.class);
+ }
+
+ public interface AzureManagementGroupOrBuilder
+ extends
+ // @@protoc_insertion_point(interface_extends:google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup)
+ com.google.protobuf.MessageOrBuilder {
+
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ java.lang.String getId();
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ com.google.protobuf.ByteString getIdBytes();
+
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The displayName.
+ */
+ java.lang.String getDisplayName();
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The bytes for displayName.
+ */
+ com.google.protobuf.ByteString getDisplayNameBytes();
+ }
+ /**
+ *
+ *
+ *
+ * Represents an Azure management group.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup}
+ */
+ public static final class AzureManagementGroup extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup)
+ AzureManagementGroupOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AzureManagementGroup.newBuilder() to construct.
+ private AzureManagementGroup(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AzureManagementGroup() {
+ id_ = "";
+ displayName_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AzureManagementGroup();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AzureMetadata_AzureManagementGroup_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AzureMetadata_AzureManagementGroup_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.class,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder.class);
+ }
+
+ public static final int ID_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object id_ = "";
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ @java.lang.Override
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DISPLAY_NAME_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object displayName_ = "";
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The displayName.
+ */
+ @java.lang.Override
+ public java.lang.String getDisplayName() {
+ java.lang.Object ref = displayName_;
+ 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();
+ displayName_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The bytes for displayName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getDisplayNameBytes() {
+ java.lang.Object ref = displayName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ displayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, displayName_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, displayName_);
+ }
+ 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.securitycenter.v2.AzureMetadata.AzureManagementGroup)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup other =
+ (com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup) obj;
+
+ if (!getId().equals(other.getId())) return false;
+ if (!getDisplayName().equals(other.getDisplayName())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + ID_FIELD_NUMBER;
+ hash = (53 * hash) + getId().hashCode();
+ hash = (37 * hash) + DISPLAY_NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getDisplayName().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup 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.securitycenter.v2.AzureMetadata.AzureManagementGroup parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup 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.securitycenter.v2.AzureMetadata.AzureManagementGroup parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup 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.securitycenter.v2.AzureMetadata.AzureManagementGroup
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup
+ 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.securitycenter.v2.AzureMetadata.AzureManagementGroup parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup 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.securitycenter.v2.AzureMetadata.AzureManagementGroup 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;
+ }
+ /**
+ *
+ *
+ *
+ * Represents an Azure management group.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setId(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearId() {
+ id_ = getDefaultInstance().getId();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure management group, for example,
+ * "20000000-0001-0000-0000-000000000000".
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The bytes for id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setIdBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object displayName_ = "";
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The displayName.
+ */
+ public java.lang.String getDisplayName() {
+ java.lang.Object ref = displayName_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ displayName_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The bytes for displayName.
+ */
+ public com.google.protobuf.ByteString getDisplayNameBytes() {
+ java.lang.Object ref = displayName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ displayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @param value The displayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDisplayName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ displayName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDisplayName() {
+ displayName_ = getDefaultInstance().getDisplayName();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure management group.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @param value The bytes for displayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ displayName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup)
+ private static final com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE =
+ new com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ java.lang.String getId();
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ com.google.protobuf.ByteString getIdBytes();
+
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The displayName.
+ */
+ java.lang.String getDisplayName();
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The bytes for displayName.
+ */
+ com.google.protobuf.ByteString getDisplayNameBytes();
+ }
+ /**
+ *
+ *
+ *
+ * Represents an Azure subscription.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription}
+ */
+ public static final class AzureSubscription extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription)
+ AzureSubscriptionOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AzureSubscription.newBuilder() to construct.
+ private AzureSubscription(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AzureSubscription() {
+ id_ = "";
+ displayName_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AzureSubscription();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AzureMetadata_AzureSubscription_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AzureMetadata_AzureSubscription_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.class,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.Builder.class);
+ }
+
+ public static final int ID_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object id_ = "";
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ @java.lang.Override
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DISPLAY_NAME_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object displayName_ = "";
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The displayName.
+ */
+ @java.lang.Override
+ public java.lang.String getDisplayName() {
+ java.lang.Object ref = displayName_;
+ 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();
+ displayName_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The bytes for displayName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getDisplayNameBytes() {
+ java.lang.Object ref = displayName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ displayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, displayName_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, displayName_);
+ }
+ 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.securitycenter.v2.AzureMetadata.AzureSubscription)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription other =
+ (com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription) obj;
+
+ if (!getId().equals(other.getId())) return false;
+ if (!getDisplayName().equals(other.getDisplayName())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + ID_FIELD_NUMBER;
+ hash = (53 * hash) + getId().hashCode();
+ hash = (37 * hash) + DISPLAY_NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getDisplayName().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription 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.securitycenter.v2.AzureMetadata.AzureSubscription parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription 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.securitycenter.v2.AzureMetadata.AzureSubscription parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription 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.securitycenter.v2.AzureMetadata.AzureSubscription
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription
+ 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.securitycenter.v2.AzureMetadata.AzureSubscription parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription 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.securitycenter.v2.AzureMetadata.AzureSubscription 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;
+ }
+ /**
+ *
+ *
+ *
+ * Represents an Azure subscription.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The id.
+ */
+ public java.lang.String getId() {
+ java.lang.Object ref = id_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ id_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @return The bytes for id.
+ */
+ public com.google.protobuf.ByteString getIdBytes() {
+ java.lang.Object ref = id_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ id_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setId(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearId() {
+ id_ = getDefaultInstance().getId();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The UUID of the Azure subscription, for example,
+ * "291bba3f-e0a5-47bc-a099-3bdcb2a50a05".
+ *
+ *
+ * string id = 1;
+ *
+ * @param value The bytes for id to set.
+ * @return This builder for chaining.
+ */
+ public Builder setIdBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ id_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object displayName_ = "";
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The displayName.
+ */
+ public java.lang.String getDisplayName() {
+ java.lang.Object ref = displayName_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ displayName_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return The bytes for displayName.
+ */
+ public com.google.protobuf.ByteString getDisplayNameBytes() {
+ java.lang.Object ref = displayName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ displayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @param value The displayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDisplayName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ displayName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDisplayName() {
+ displayName_ = getDefaultInstance().getDisplayName();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The display name of the Azure subscription.
+ *
+ *
+ * string display_name = 2;
+ *
+ * @param value The bytes for displayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ displayName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription)
+ private static final com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @return The name.
+ */
+ java.lang.String getName();
+ /**
+ *
+ *
+ *
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @return The bytes for name.
+ */
+ com.google.protobuf.ByteString getNameBytes();
+ }
+ /**
+ *
+ *
+ *
+ * Represents an Azure resource group.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup}
+ */
+ public static final class AzureResourceGroup extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup)
+ AzureResourceGroupOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use AzureResourceGroup.newBuilder() to construct.
+ private AzureResourceGroup(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private AzureResourceGroup() {
+ name_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new AzureResourceGroup();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AzureMetadata_AzureResourceGroup_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_AzureMetadata_AzureResourceGroup_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.class,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.Builder.class);
+ }
+
+ public static final int NAME_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object name_ = "";
+ /**
+ *
+ *
+ *
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @return The name.
+ */
+ @java.lang.Override
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @return The bytes for name.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
+ }
+ 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.securitycenter.v2.AzureMetadata.AzureResourceGroup)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup other =
+ (com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup) obj;
+
+ if (!getName().equals(other.getName())) 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) + NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getName().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup 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.securitycenter.v2.AzureMetadata.AzureResourceGroup parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup 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.securitycenter.v2.AzureMetadata.AzureResourceGroup parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup 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.securitycenter.v2.AzureMetadata.AzureResourceGroup
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup
+ 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.securitycenter.v2.AzureMetadata.AzureResourceGroup parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup 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.securitycenter.v2.AzureMetadata.AzureResourceGroup 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;
+ }
+ /**
+ *
+ *
+ *
+ * Represents an Azure resource group.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @return The name.
+ */
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @return The bytes for name.
+ */
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @param value The name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ name_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearName() {
+ name_ = getDefaultInstance().getName();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The name of the Azure resource group. This is not a UUID.
+ *
+ *
+ * string name = 1;
+ *
+ * @param value The bytes for name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ name_ = value;
+ bitField0_ |= 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.securitycenter.v2.AzureMetadata.AzureResourceGroup)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup)
+ private static final com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ @java.lang.Override
+ public java.util.List
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ @java.lang.Override
+ public java.util.List<
+ ? extends com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroupOrBuilder>
+ getManagementGroupsOrBuilderList() {
+ return managementGroups_;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ @java.lang.Override
+ public int getManagementGroupsCount() {
+ return managementGroups_.size();
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup getManagementGroups(
+ int index) {
+ return managementGroups_.get(index);
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroupOrBuilder
+ getManagementGroupsOrBuilder(int index) {
+ return managementGroups_.get(index);
+ }
+
+ public static final int SUBSCRIPTION_FIELD_NUMBER = 2;
+ private com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription_;
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ * @return Whether the subscription field is set.
+ */
+ @java.lang.Override
+ public boolean hasSubscription() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ * @return The subscription.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription getSubscription() {
+ return subscription_ == null
+ ? com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.getDefaultInstance()
+ : subscription_;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscriptionOrBuilder
+ getSubscriptionOrBuilder() {
+ return subscription_ == null
+ ? com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.getDefaultInstance()
+ : subscription_;
+ }
+
+ public static final int RESOURCE_GROUP_FIELD_NUMBER = 3;
+ private com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resourceGroup_;
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ *
+ * @return Whether the resourceGroup field is set.
+ */
+ @java.lang.Override
+ public boolean hasResourceGroup() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ *
+ * @return The resourceGroup.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup getResourceGroup() {
+ return resourceGroup_ == null
+ ? com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.getDefaultInstance()
+ : resourceGroup_;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroupOrBuilder
+ getResourceGroupOrBuilder() {
+ return resourceGroup_ == null
+ ? com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.getDefaultInstance()
+ : resourceGroup_;
+ }
+
+ 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 < managementGroups_.size(); i++) {
+ output.writeMessage(1, managementGroups_.get(i));
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeMessage(2, getSubscription());
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeMessage(3, getResourceGroup());
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ for (int i = 0; i < managementGroups_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, managementGroups_.get(i));
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getSubscription());
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getResourceGroup());
+ }
+ 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.securitycenter.v2.AzureMetadata)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.AzureMetadata other =
+ (com.google.cloud.securitycenter.v2.AzureMetadata) obj;
+
+ if (!getManagementGroupsList().equals(other.getManagementGroupsList())) return false;
+ if (hasSubscription() != other.hasSubscription()) return false;
+ if (hasSubscription()) {
+ if (!getSubscription().equals(other.getSubscription())) return false;
+ }
+ if (hasResourceGroup() != other.hasResourceGroup()) return false;
+ if (hasResourceGroup()) {
+ if (!getResourceGroup().equals(other.getResourceGroup())) 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 (getManagementGroupsCount() > 0) {
+ hash = (37 * hash) + MANAGEMENT_GROUPS_FIELD_NUMBER;
+ hash = (53 * hash) + getManagementGroupsList().hashCode();
+ }
+ if (hasSubscription()) {
+ hash = (37 * hash) + SUBSCRIPTION_FIELD_NUMBER;
+ hash = (53 * hash) + getSubscription().hashCode();
+ }
+ if (hasResourceGroup()) {
+ hash = (37 * hash) + RESOURCE_GROUP_FIELD_NUMBER;
+ hash = (53 * hash) + getResourceGroup().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata 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.securitycenter.v2.AzureMetadata parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata 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.securitycenter.v2.AzureMetadata parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata 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.securitycenter.v2.AzureMetadata parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata 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.securitycenter.v2.AzureMetadata parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata 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.securitycenter.v2.AzureMetadata 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;
+ }
+ /**
+ *
+ *
+ *
+ * Azure metadata associated with the resource, only applicable if the finding's
+ * cloud provider is Microsoft Azure.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.AzureMetadata}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public java.util.List
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public int getManagementGroupsCount() {
+ if (managementGroupsBuilder_ == null) {
+ return managementGroups_.size();
+ } else {
+ return managementGroupsBuilder_.getCount();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup
+ getManagementGroups(int index) {
+ if (managementGroupsBuilder_ == null) {
+ return managementGroups_.get(index);
+ } else {
+ return managementGroupsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder setManagementGroups(
+ int index, com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup value) {
+ if (managementGroupsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureManagementGroupsIsMutable();
+ managementGroups_.set(index, value);
+ onChanged();
+ } else {
+ managementGroupsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder setManagementGroups(
+ int index,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder
+ builderForValue) {
+ if (managementGroupsBuilder_ == null) {
+ ensureManagementGroupsIsMutable();
+ managementGroups_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ managementGroupsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder addManagementGroups(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup value) {
+ if (managementGroupsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureManagementGroupsIsMutable();
+ managementGroups_.add(value);
+ onChanged();
+ } else {
+ managementGroupsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder addManagementGroups(
+ int index, com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup value) {
+ if (managementGroupsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureManagementGroupsIsMutable();
+ managementGroups_.add(index, value);
+ onChanged();
+ } else {
+ managementGroupsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder addManagementGroups(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder
+ builderForValue) {
+ if (managementGroupsBuilder_ == null) {
+ ensureManagementGroupsIsMutable();
+ managementGroups_.add(builderForValue.build());
+ onChanged();
+ } else {
+ managementGroupsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder addManagementGroups(
+ int index,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder
+ builderForValue) {
+ if (managementGroupsBuilder_ == null) {
+ ensureManagementGroupsIsMutable();
+ managementGroups_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ managementGroupsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder addAllManagementGroups(
+ java.lang.Iterable<
+ ? extends com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup>
+ values) {
+ if (managementGroupsBuilder_ == null) {
+ ensureManagementGroupsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, managementGroups_);
+ onChanged();
+ } else {
+ managementGroupsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder clearManagementGroups() {
+ if (managementGroupsBuilder_ == null) {
+ managementGroups_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ } else {
+ managementGroupsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public Builder removeManagementGroups(int index) {
+ if (managementGroupsBuilder_ == null) {
+ ensureManagementGroupsIsMutable();
+ managementGroups_.remove(index);
+ onChanged();
+ } else {
+ managementGroupsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder
+ getManagementGroupsBuilder(int index) {
+ return getManagementGroupsFieldBuilder().getBuilder(index);
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroupOrBuilder
+ getManagementGroupsOrBuilder(int index) {
+ if (managementGroupsBuilder_ == null) {
+ return managementGroups_.get(index);
+ } else {
+ return managementGroupsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public java.util.List<
+ ? extends
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroupOrBuilder>
+ getManagementGroupsOrBuilderList() {
+ if (managementGroupsBuilder_ != null) {
+ return managementGroupsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(managementGroups_);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder
+ addManagementGroupsBuilder() {
+ return getManagementGroupsFieldBuilder()
+ .addBuilder(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup
+ .getDefaultInstance());
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder
+ addManagementGroupsBuilder(int index) {
+ return getManagementGroupsFieldBuilder()
+ .addBuilder(
+ index,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup
+ .getDefaultInstance());
+ }
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ public java.util.List<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder>
+ getManagementGroupsBuilderList() {
+ return getManagementGroupsFieldBuilder().getBuilderList();
+ }
+
+ private com.google.protobuf.RepeatedFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroupOrBuilder>
+ getManagementGroupsFieldBuilder() {
+ if (managementGroupsBuilder_ == null) {
+ managementGroupsBuilder_ =
+ new com.google.protobuf.RepeatedFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup.Builder,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroupOrBuilder>(
+ managementGroups_,
+ ((bitField0_ & 0x00000001) != 0),
+ getParentForChildren(),
+ isClean());
+ managementGroups_ = null;
+ }
+ return managementGroupsBuilder_;
+ }
+
+ private com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.Builder,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscriptionOrBuilder>
+ subscriptionBuilder_;
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ *
+ * @return Whether the subscription field is set.
+ */
+ public boolean hasSubscription() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ *
+ * @return The subscription.
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription getSubscription() {
+ if (subscriptionBuilder_ == null) {
+ return subscription_ == null
+ ? com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription
+ .getDefaultInstance()
+ : subscription_;
+ } else {
+ return subscriptionBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ */
+ public Builder setSubscription(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription value) {
+ if (subscriptionBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ subscription_ = value;
+ } else {
+ subscriptionBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ */
+ public Builder setSubscription(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.Builder
+ builderForValue) {
+ if (subscriptionBuilder_ == null) {
+ subscription_ = builderForValue.build();
+ } else {
+ subscriptionBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ */
+ public Builder mergeSubscription(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription value) {
+ if (subscriptionBuilder_ == null) {
+ if (((bitField0_ & 0x00000002) != 0)
+ && subscription_ != null
+ && subscription_
+ != com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription
+ .getDefaultInstance()) {
+ getSubscriptionBuilder().mergeFrom(value);
+ } else {
+ subscription_ = value;
+ }
+ } else {
+ subscriptionBuilder_.mergeFrom(value);
+ }
+ if (subscription_ != null) {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ */
+ public Builder clearSubscription() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ subscription_ = null;
+ if (subscriptionBuilder_ != null) {
+ subscriptionBuilder_.dispose();
+ subscriptionBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.Builder
+ getSubscriptionBuilder() {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return getSubscriptionFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscriptionOrBuilder
+ getSubscriptionOrBuilder() {
+ if (subscriptionBuilder_ != null) {
+ return subscriptionBuilder_.getMessageOrBuilder();
+ } else {
+ return subscription_ == null
+ ? com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription
+ .getDefaultInstance()
+ : subscription_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.Builder,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscriptionOrBuilder>
+ getSubscriptionFieldBuilder() {
+ if (subscriptionBuilder_ == null) {
+ subscriptionBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription.Builder,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscriptionOrBuilder>(
+ getSubscription(), getParentForChildren(), isClean());
+ subscription_ = null;
+ }
+ return subscriptionBuilder_;
+ }
+
+ private com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resourceGroup_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.Builder,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroupOrBuilder>
+ resourceGroupBuilder_;
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ *
+ * @return Whether the resourceGroup field is set.
+ */
+ public boolean hasResourceGroup() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ *
+ * @return The resourceGroup.
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup getResourceGroup() {
+ if (resourceGroupBuilder_ == null) {
+ return resourceGroup_ == null
+ ? com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup
+ .getDefaultInstance()
+ : resourceGroup_;
+ } else {
+ return resourceGroupBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ public Builder setResourceGroup(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup value) {
+ if (resourceGroupBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ resourceGroup_ = value;
+ } else {
+ resourceGroupBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ public Builder setResourceGroup(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.Builder
+ builderForValue) {
+ if (resourceGroupBuilder_ == null) {
+ resourceGroup_ = builderForValue.build();
+ } else {
+ resourceGroupBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ public Builder mergeResourceGroup(
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup value) {
+ if (resourceGroupBuilder_ == null) {
+ if (((bitField0_ & 0x00000004) != 0)
+ && resourceGroup_ != null
+ && resourceGroup_
+ != com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup
+ .getDefaultInstance()) {
+ getResourceGroupBuilder().mergeFrom(value);
+ } else {
+ resourceGroup_ = value;
+ }
+ } else {
+ resourceGroupBuilder_.mergeFrom(value);
+ }
+ if (resourceGroup_ != null) {
+ bitField0_ |= 0x00000004;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ public Builder clearResourceGroup() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ resourceGroup_ = null;
+ if (resourceGroupBuilder_ != null) {
+ resourceGroupBuilder_.dispose();
+ resourceGroupBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.Builder
+ getResourceGroupBuilder() {
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return getResourceGroupFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ public com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroupOrBuilder
+ getResourceGroupOrBuilder() {
+ if (resourceGroupBuilder_ != null) {
+ return resourceGroupBuilder_.getMessageOrBuilder();
+ } else {
+ return resourceGroup_ == null
+ ? com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup
+ .getDefaultInstance()
+ : resourceGroup_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.Builder,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroupOrBuilder>
+ getResourceGroupFieldBuilder() {
+ if (resourceGroupBuilder_ == null) {
+ resourceGroupBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup.Builder,
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroupOrBuilder>(
+ getResourceGroup(), getParentForChildren(), isClean());
+ resourceGroup_ = null;
+ }
+ return resourceGroupBuilder_;
+ }
+
+ @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.securitycenter.v2.AzureMetadata)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.AzureMetadata)
+ private static final com.google.cloud.securitycenter.v2.AzureMetadata DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.AzureMetadata();
+ }
+
+ public static com.google.cloud.securitycenter.v2.AzureMetadata getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ java.util.List
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup getManagementGroups(
+ int index);
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ int getManagementGroupsCount();
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ java.util.List<
+ ? extends com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroupOrBuilder>
+ getManagementGroupsOrBuilderList();
+ /**
+ *
+ *
+ *
+ * A list of Azure management groups associated with the resource, ordered
+ * from lowest level (closest to the subscription) to highest level.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroup management_groups = 1;
+ *
+ */
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureManagementGroupOrBuilder
+ getManagementGroupsOrBuilder(int index);
+
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ * @return Whether the subscription field is set.
+ */
+ boolean hasSubscription();
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ *
+ * @return The subscription.
+ */
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription getSubscription();
+ /**
+ *
+ *
+ *
+ * The Azure subscription associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureSubscription subscription = 2;
+ */
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureSubscriptionOrBuilder
+ getSubscriptionOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ *
+ * @return Whether the resourceGroup field is set.
+ */
+ boolean hasResourceGroup();
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ *
+ * @return The resourceGroup.
+ */
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup getResourceGroup();
+ /**
+ *
+ *
+ *
+ * The Azure resource group associated with the resource.
+ *
+ *
+ * .google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroup resource_group = 3;
+ *
+ */
+ com.google.cloud.securitycenter.v2.AzureMetadata.AzureResourceGroupOrBuilder
+ getResourceGroupOrBuilder();
+}
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudArmor.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudArmor.java
new file mode 100644
index 000000000000..d23d2a142483
--- /dev/null
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudArmor.java
@@ -0,0 +1,2080 @@
+/*
+ * 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/securitycenter/v2/cloud_armor.proto
+
+// Protobuf Java Version: 3.25.3
+package com.google.cloud.securitycenter.v2;
+
+/**
+ *
+ *
+ *
+ * Fields related to Google Cloud Armor findings.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.CloudArmor}
+ */
+public final class CloudArmor extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.CloudArmor)
+ CloudArmorOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use CloudArmor.newBuilder() to construct.
+ private CloudArmor(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private CloudArmor() {
+ threatVector_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new CloudArmor();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.CloudArmorProto
+ .internal_static_google_cloud_securitycenter_v2_CloudArmor_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.CloudArmorProto
+ .internal_static_google_cloud_securitycenter_v2_CloudArmor_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.CloudArmor.class,
+ com.google.cloud.securitycenter.v2.CloudArmor.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int SECURITY_POLICY_FIELD_NUMBER = 1;
+ private com.google.cloud.securitycenter.v2.SecurityPolicy securityPolicy_;
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ *
+ * @return Whether the securityPolicy field is set.
+ */
+ @java.lang.Override
+ public boolean hasSecurityPolicy() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ *
+ * @return The securityPolicy.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.SecurityPolicy getSecurityPolicy() {
+ return securityPolicy_ == null
+ ? com.google.cloud.securitycenter.v2.SecurityPolicy.getDefaultInstance()
+ : securityPolicy_;
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.SecurityPolicyOrBuilder getSecurityPolicyOrBuilder() {
+ return securityPolicy_ == null
+ ? com.google.cloud.securitycenter.v2.SecurityPolicy.getDefaultInstance()
+ : securityPolicy_;
+ }
+
+ public static final int REQUESTS_FIELD_NUMBER = 2;
+ private com.google.cloud.securitycenter.v2.Requests requests_;
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ *
+ * @return Whether the requests field is set.
+ */
+ @java.lang.Override
+ public boolean hasRequests() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ *
+ * @return The requests.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.Requests getRequests() {
+ return requests_ == null
+ ? com.google.cloud.securitycenter.v2.Requests.getDefaultInstance()
+ : requests_;
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.RequestsOrBuilder getRequestsOrBuilder() {
+ return requests_ == null
+ ? com.google.cloud.securitycenter.v2.Requests.getDefaultInstance()
+ : requests_;
+ }
+
+ public static final int ADAPTIVE_PROTECTION_FIELD_NUMBER = 3;
+ private com.google.cloud.securitycenter.v2.AdaptiveProtection adaptiveProtection_;
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ *
+ * @return Whether the adaptiveProtection field is set.
+ */
+ @java.lang.Override
+ public boolean hasAdaptiveProtection() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ *
+ * @return The adaptiveProtection.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AdaptiveProtection getAdaptiveProtection() {
+ return adaptiveProtection_ == null
+ ? com.google.cloud.securitycenter.v2.AdaptiveProtection.getDefaultInstance()
+ : adaptiveProtection_;
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AdaptiveProtectionOrBuilder
+ getAdaptiveProtectionOrBuilder() {
+ return adaptiveProtection_ == null
+ ? com.google.cloud.securitycenter.v2.AdaptiveProtection.getDefaultInstance()
+ : adaptiveProtection_;
+ }
+
+ public static final int ATTACK_FIELD_NUMBER = 4;
+ private com.google.cloud.securitycenter.v2.Attack attack_;
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ *
+ * @return Whether the attack field is set.
+ */
+ @java.lang.Override
+ public boolean hasAttack() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ *
+ * @return The attack.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.Attack getAttack() {
+ return attack_ == null
+ ? com.google.cloud.securitycenter.v2.Attack.getDefaultInstance()
+ : attack_;
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.AttackOrBuilder getAttackOrBuilder() {
+ return attack_ == null
+ ? com.google.cloud.securitycenter.v2.Attack.getDefaultInstance()
+ : attack_;
+ }
+
+ public static final int THREAT_VECTOR_FIELD_NUMBER = 5;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object threatVector_ = "";
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @return The threatVector.
+ */
+ @java.lang.Override
+ public java.lang.String getThreatVector() {
+ java.lang.Object ref = threatVector_;
+ 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();
+ threatVector_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @return The bytes for threatVector.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getThreatVectorBytes() {
+ java.lang.Object ref = threatVector_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ threatVector_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DURATION_FIELD_NUMBER = 6;
+ private com.google.protobuf.Duration duration_;
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ *
+ * @return Whether the duration field is set.
+ */
+ @java.lang.Override
+ public boolean hasDuration() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ *
+ * @return The duration.
+ */
+ @java.lang.Override
+ public com.google.protobuf.Duration getDuration() {
+ return duration_ == null ? com.google.protobuf.Duration.getDefaultInstance() : duration_;
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ @java.lang.Override
+ public com.google.protobuf.DurationOrBuilder getDurationOrBuilder() {
+ return duration_ == null ? com.google.protobuf.Duration.getDefaultInstance() : duration_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeMessage(1, getSecurityPolicy());
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeMessage(2, getRequests());
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ output.writeMessage(3, getAdaptiveProtection());
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ output.writeMessage(4, getAttack());
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(threatVector_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 5, threatVector_);
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ output.writeMessage(6, getDuration());
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getSecurityPolicy());
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getRequests());
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getAdaptiveProtection());
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getAttack());
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(threatVector_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, threatVector_);
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getDuration());
+ }
+ 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.securitycenter.v2.CloudArmor)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.CloudArmor other =
+ (com.google.cloud.securitycenter.v2.CloudArmor) obj;
+
+ if (hasSecurityPolicy() != other.hasSecurityPolicy()) return false;
+ if (hasSecurityPolicy()) {
+ if (!getSecurityPolicy().equals(other.getSecurityPolicy())) return false;
+ }
+ if (hasRequests() != other.hasRequests()) return false;
+ if (hasRequests()) {
+ if (!getRequests().equals(other.getRequests())) return false;
+ }
+ if (hasAdaptiveProtection() != other.hasAdaptiveProtection()) return false;
+ if (hasAdaptiveProtection()) {
+ if (!getAdaptiveProtection().equals(other.getAdaptiveProtection())) return false;
+ }
+ if (hasAttack() != other.hasAttack()) return false;
+ if (hasAttack()) {
+ if (!getAttack().equals(other.getAttack())) return false;
+ }
+ if (!getThreatVector().equals(other.getThreatVector())) return false;
+ if (hasDuration() != other.hasDuration()) return false;
+ if (hasDuration()) {
+ if (!getDuration().equals(other.getDuration())) 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 (hasSecurityPolicy()) {
+ hash = (37 * hash) + SECURITY_POLICY_FIELD_NUMBER;
+ hash = (53 * hash) + getSecurityPolicy().hashCode();
+ }
+ if (hasRequests()) {
+ hash = (37 * hash) + REQUESTS_FIELD_NUMBER;
+ hash = (53 * hash) + getRequests().hashCode();
+ }
+ if (hasAdaptiveProtection()) {
+ hash = (37 * hash) + ADAPTIVE_PROTECTION_FIELD_NUMBER;
+ hash = (53 * hash) + getAdaptiveProtection().hashCode();
+ }
+ if (hasAttack()) {
+ hash = (37 * hash) + ATTACK_FIELD_NUMBER;
+ hash = (53 * hash) + getAttack().hashCode();
+ }
+ hash = (37 * hash) + THREAT_VECTOR_FIELD_NUMBER;
+ hash = (53 * hash) + getThreatVector().hashCode();
+ if (hasDuration()) {
+ hash = (37 * hash) + DURATION_FIELD_NUMBER;
+ hash = (53 * hash) + getDuration().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor 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.securitycenter.v2.CloudArmor parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor 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.securitycenter.v2.CloudArmor parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor 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.securitycenter.v2.CloudArmor parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor 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.securitycenter.v2.CloudArmor parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor 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.securitycenter.v2.CloudArmor 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;
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Google Cloud Armor findings.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.CloudArmor}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ *
+ * @return Whether the securityPolicy field is set.
+ */
+ public boolean hasSecurityPolicy() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ *
+ * @return The securityPolicy.
+ */
+ public com.google.cloud.securitycenter.v2.SecurityPolicy getSecurityPolicy() {
+ if (securityPolicyBuilder_ == null) {
+ return securityPolicy_ == null
+ ? com.google.cloud.securitycenter.v2.SecurityPolicy.getDefaultInstance()
+ : securityPolicy_;
+ } else {
+ return securityPolicyBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ public Builder setSecurityPolicy(com.google.cloud.securitycenter.v2.SecurityPolicy value) {
+ if (securityPolicyBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ securityPolicy_ = value;
+ } else {
+ securityPolicyBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ public Builder setSecurityPolicy(
+ com.google.cloud.securitycenter.v2.SecurityPolicy.Builder builderForValue) {
+ if (securityPolicyBuilder_ == null) {
+ securityPolicy_ = builderForValue.build();
+ } else {
+ securityPolicyBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ public Builder mergeSecurityPolicy(com.google.cloud.securitycenter.v2.SecurityPolicy value) {
+ if (securityPolicyBuilder_ == null) {
+ if (((bitField0_ & 0x00000001) != 0)
+ && securityPolicy_ != null
+ && securityPolicy_
+ != com.google.cloud.securitycenter.v2.SecurityPolicy.getDefaultInstance()) {
+ getSecurityPolicyBuilder().mergeFrom(value);
+ } else {
+ securityPolicy_ = value;
+ }
+ } else {
+ securityPolicyBuilder_.mergeFrom(value);
+ }
+ if (securityPolicy_ != null) {
+ bitField0_ |= 0x00000001;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ public Builder clearSecurityPolicy() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ securityPolicy_ = null;
+ if (securityPolicyBuilder_ != null) {
+ securityPolicyBuilder_.dispose();
+ securityPolicyBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ public com.google.cloud.securitycenter.v2.SecurityPolicy.Builder getSecurityPolicyBuilder() {
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return getSecurityPolicyFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ public com.google.cloud.securitycenter.v2.SecurityPolicyOrBuilder getSecurityPolicyOrBuilder() {
+ if (securityPolicyBuilder_ != null) {
+ return securityPolicyBuilder_.getMessageOrBuilder();
+ } else {
+ return securityPolicy_ == null
+ ? com.google.cloud.securitycenter.v2.SecurityPolicy.getDefaultInstance()
+ : securityPolicy_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.SecurityPolicy,
+ com.google.cloud.securitycenter.v2.SecurityPolicy.Builder,
+ com.google.cloud.securitycenter.v2.SecurityPolicyOrBuilder>
+ getSecurityPolicyFieldBuilder() {
+ if (securityPolicyBuilder_ == null) {
+ securityPolicyBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.SecurityPolicy,
+ com.google.cloud.securitycenter.v2.SecurityPolicy.Builder,
+ com.google.cloud.securitycenter.v2.SecurityPolicyOrBuilder>(
+ getSecurityPolicy(), getParentForChildren(), isClean());
+ securityPolicy_ = null;
+ }
+ return securityPolicyBuilder_;
+ }
+
+ private com.google.cloud.securitycenter.v2.Requests requests_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Requests,
+ com.google.cloud.securitycenter.v2.Requests.Builder,
+ com.google.cloud.securitycenter.v2.RequestsOrBuilder>
+ requestsBuilder_;
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ *
+ * @return Whether the requests field is set.
+ */
+ public boolean hasRequests() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ *
+ * @return The requests.
+ */
+ public com.google.cloud.securitycenter.v2.Requests getRequests() {
+ if (requestsBuilder_ == null) {
+ return requests_ == null
+ ? com.google.cloud.securitycenter.v2.Requests.getDefaultInstance()
+ : requests_;
+ } else {
+ return requestsBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ public Builder setRequests(com.google.cloud.securitycenter.v2.Requests value) {
+ if (requestsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ requests_ = value;
+ } else {
+ requestsBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ public Builder setRequests(
+ com.google.cloud.securitycenter.v2.Requests.Builder builderForValue) {
+ if (requestsBuilder_ == null) {
+ requests_ = builderForValue.build();
+ } else {
+ requestsBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ public Builder mergeRequests(com.google.cloud.securitycenter.v2.Requests value) {
+ if (requestsBuilder_ == null) {
+ if (((bitField0_ & 0x00000002) != 0)
+ && requests_ != null
+ && requests_ != com.google.cloud.securitycenter.v2.Requests.getDefaultInstance()) {
+ getRequestsBuilder().mergeFrom(value);
+ } else {
+ requests_ = value;
+ }
+ } else {
+ requestsBuilder_.mergeFrom(value);
+ }
+ if (requests_ != null) {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ public Builder clearRequests() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ requests_ = null;
+ if (requestsBuilder_ != null) {
+ requestsBuilder_.dispose();
+ requestsBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ public com.google.cloud.securitycenter.v2.Requests.Builder getRequestsBuilder() {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return getRequestsFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ public com.google.cloud.securitycenter.v2.RequestsOrBuilder getRequestsOrBuilder() {
+ if (requestsBuilder_ != null) {
+ return requestsBuilder_.getMessageOrBuilder();
+ } else {
+ return requests_ == null
+ ? com.google.cloud.securitycenter.v2.Requests.getDefaultInstance()
+ : requests_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Requests,
+ com.google.cloud.securitycenter.v2.Requests.Builder,
+ com.google.cloud.securitycenter.v2.RequestsOrBuilder>
+ getRequestsFieldBuilder() {
+ if (requestsBuilder_ == null) {
+ requestsBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Requests,
+ com.google.cloud.securitycenter.v2.Requests.Builder,
+ com.google.cloud.securitycenter.v2.RequestsOrBuilder>(
+ getRequests(), getParentForChildren(), isClean());
+ requests_ = null;
+ }
+ return requestsBuilder_;
+ }
+
+ private com.google.cloud.securitycenter.v2.AdaptiveProtection adaptiveProtection_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AdaptiveProtection,
+ com.google.cloud.securitycenter.v2.AdaptiveProtection.Builder,
+ com.google.cloud.securitycenter.v2.AdaptiveProtectionOrBuilder>
+ adaptiveProtectionBuilder_;
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ *
+ * @return Whether the adaptiveProtection field is set.
+ */
+ public boolean hasAdaptiveProtection() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ *
+ * @return The adaptiveProtection.
+ */
+ public com.google.cloud.securitycenter.v2.AdaptiveProtection getAdaptiveProtection() {
+ if (adaptiveProtectionBuilder_ == null) {
+ return adaptiveProtection_ == null
+ ? com.google.cloud.securitycenter.v2.AdaptiveProtection.getDefaultInstance()
+ : adaptiveProtection_;
+ } else {
+ return adaptiveProtectionBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ public Builder setAdaptiveProtection(
+ com.google.cloud.securitycenter.v2.AdaptiveProtection value) {
+ if (adaptiveProtectionBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ adaptiveProtection_ = value;
+ } else {
+ adaptiveProtectionBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ public Builder setAdaptiveProtection(
+ com.google.cloud.securitycenter.v2.AdaptiveProtection.Builder builderForValue) {
+ if (adaptiveProtectionBuilder_ == null) {
+ adaptiveProtection_ = builderForValue.build();
+ } else {
+ adaptiveProtectionBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ public Builder mergeAdaptiveProtection(
+ com.google.cloud.securitycenter.v2.AdaptiveProtection value) {
+ if (adaptiveProtectionBuilder_ == null) {
+ if (((bitField0_ & 0x00000004) != 0)
+ && adaptiveProtection_ != null
+ && adaptiveProtection_
+ != com.google.cloud.securitycenter.v2.AdaptiveProtection.getDefaultInstance()) {
+ getAdaptiveProtectionBuilder().mergeFrom(value);
+ } else {
+ adaptiveProtection_ = value;
+ }
+ } else {
+ adaptiveProtectionBuilder_.mergeFrom(value);
+ }
+ if (adaptiveProtection_ != null) {
+ bitField0_ |= 0x00000004;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ public Builder clearAdaptiveProtection() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ adaptiveProtection_ = null;
+ if (adaptiveProtectionBuilder_ != null) {
+ adaptiveProtectionBuilder_.dispose();
+ adaptiveProtectionBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ public com.google.cloud.securitycenter.v2.AdaptiveProtection.Builder
+ getAdaptiveProtectionBuilder() {
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return getAdaptiveProtectionFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ public com.google.cloud.securitycenter.v2.AdaptiveProtectionOrBuilder
+ getAdaptiveProtectionOrBuilder() {
+ if (adaptiveProtectionBuilder_ != null) {
+ return adaptiveProtectionBuilder_.getMessageOrBuilder();
+ } else {
+ return adaptiveProtection_ == null
+ ? com.google.cloud.securitycenter.v2.AdaptiveProtection.getDefaultInstance()
+ : adaptiveProtection_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AdaptiveProtection,
+ com.google.cloud.securitycenter.v2.AdaptiveProtection.Builder,
+ com.google.cloud.securitycenter.v2.AdaptiveProtectionOrBuilder>
+ getAdaptiveProtectionFieldBuilder() {
+ if (adaptiveProtectionBuilder_ == null) {
+ adaptiveProtectionBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.AdaptiveProtection,
+ com.google.cloud.securitycenter.v2.AdaptiveProtection.Builder,
+ com.google.cloud.securitycenter.v2.AdaptiveProtectionOrBuilder>(
+ getAdaptiveProtection(), getParentForChildren(), isClean());
+ adaptiveProtection_ = null;
+ }
+ return adaptiveProtectionBuilder_;
+ }
+
+ private com.google.cloud.securitycenter.v2.Attack attack_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Attack,
+ com.google.cloud.securitycenter.v2.Attack.Builder,
+ com.google.cloud.securitycenter.v2.AttackOrBuilder>
+ attackBuilder_;
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ *
+ * @return Whether the attack field is set.
+ */
+ public boolean hasAttack() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ *
+ * @return The attack.
+ */
+ public com.google.cloud.securitycenter.v2.Attack getAttack() {
+ if (attackBuilder_ == null) {
+ return attack_ == null
+ ? com.google.cloud.securitycenter.v2.Attack.getDefaultInstance()
+ : attack_;
+ } else {
+ return attackBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ public Builder setAttack(com.google.cloud.securitycenter.v2.Attack value) {
+ if (attackBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ attack_ = value;
+ } else {
+ attackBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ public Builder setAttack(com.google.cloud.securitycenter.v2.Attack.Builder builderForValue) {
+ if (attackBuilder_ == null) {
+ attack_ = builderForValue.build();
+ } else {
+ attackBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ public Builder mergeAttack(com.google.cloud.securitycenter.v2.Attack value) {
+ if (attackBuilder_ == null) {
+ if (((bitField0_ & 0x00000008) != 0)
+ && attack_ != null
+ && attack_ != com.google.cloud.securitycenter.v2.Attack.getDefaultInstance()) {
+ getAttackBuilder().mergeFrom(value);
+ } else {
+ attack_ = value;
+ }
+ } else {
+ attackBuilder_.mergeFrom(value);
+ }
+ if (attack_ != null) {
+ bitField0_ |= 0x00000008;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ public Builder clearAttack() {
+ bitField0_ = (bitField0_ & ~0x00000008);
+ attack_ = null;
+ if (attackBuilder_ != null) {
+ attackBuilder_.dispose();
+ attackBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ public com.google.cloud.securitycenter.v2.Attack.Builder getAttackBuilder() {
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return getAttackFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ public com.google.cloud.securitycenter.v2.AttackOrBuilder getAttackOrBuilder() {
+ if (attackBuilder_ != null) {
+ return attackBuilder_.getMessageOrBuilder();
+ } else {
+ return attack_ == null
+ ? com.google.cloud.securitycenter.v2.Attack.getDefaultInstance()
+ : attack_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Attack,
+ com.google.cloud.securitycenter.v2.Attack.Builder,
+ com.google.cloud.securitycenter.v2.AttackOrBuilder>
+ getAttackFieldBuilder() {
+ if (attackBuilder_ == null) {
+ attackBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Attack,
+ com.google.cloud.securitycenter.v2.Attack.Builder,
+ com.google.cloud.securitycenter.v2.AttackOrBuilder>(
+ getAttack(), getParentForChildren(), isClean());
+ attack_ = null;
+ }
+ return attackBuilder_;
+ }
+
+ private java.lang.Object threatVector_ = "";
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @return The threatVector.
+ */
+ public java.lang.String getThreatVector() {
+ java.lang.Object ref = threatVector_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ threatVector_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @return The bytes for threatVector.
+ */
+ public com.google.protobuf.ByteString getThreatVectorBytes() {
+ java.lang.Object ref = threatVector_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ threatVector_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @param value The threatVector to set.
+ * @return This builder for chaining.
+ */
+ public Builder setThreatVector(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ threatVector_ = value;
+ bitField0_ |= 0x00000010;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearThreatVector() {
+ threatVector_ = getDefaultInstance().getThreatVector();
+ bitField0_ = (bitField0_ & ~0x00000010);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @param value The bytes for threatVector to set.
+ * @return This builder for chaining.
+ */
+ public Builder setThreatVectorBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ threatVector_ = value;
+ bitField0_ |= 0x00000010;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.Duration duration_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.protobuf.Duration,
+ com.google.protobuf.Duration.Builder,
+ com.google.protobuf.DurationOrBuilder>
+ durationBuilder_;
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ *
+ * @return Whether the duration field is set.
+ */
+ public boolean hasDuration() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ *
+ * @return The duration.
+ */
+ public com.google.protobuf.Duration getDuration() {
+ if (durationBuilder_ == null) {
+ return duration_ == null ? com.google.protobuf.Duration.getDefaultInstance() : duration_;
+ } else {
+ return durationBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ public Builder setDuration(com.google.protobuf.Duration value) {
+ if (durationBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ duration_ = value;
+ } else {
+ durationBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000020;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ public Builder setDuration(com.google.protobuf.Duration.Builder builderForValue) {
+ if (durationBuilder_ == null) {
+ duration_ = builderForValue.build();
+ } else {
+ durationBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000020;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ public Builder mergeDuration(com.google.protobuf.Duration value) {
+ if (durationBuilder_ == null) {
+ if (((bitField0_ & 0x00000020) != 0)
+ && duration_ != null
+ && duration_ != com.google.protobuf.Duration.getDefaultInstance()) {
+ getDurationBuilder().mergeFrom(value);
+ } else {
+ duration_ = value;
+ }
+ } else {
+ durationBuilder_.mergeFrom(value);
+ }
+ if (duration_ != null) {
+ bitField0_ |= 0x00000020;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ public Builder clearDuration() {
+ bitField0_ = (bitField0_ & ~0x00000020);
+ duration_ = null;
+ if (durationBuilder_ != null) {
+ durationBuilder_.dispose();
+ durationBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ public com.google.protobuf.Duration.Builder getDurationBuilder() {
+ bitField0_ |= 0x00000020;
+ onChanged();
+ return getDurationFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ public com.google.protobuf.DurationOrBuilder getDurationOrBuilder() {
+ if (durationBuilder_ != null) {
+ return durationBuilder_.getMessageOrBuilder();
+ } else {
+ return duration_ == null ? com.google.protobuf.Duration.getDefaultInstance() : duration_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.protobuf.Duration,
+ com.google.protobuf.Duration.Builder,
+ com.google.protobuf.DurationOrBuilder>
+ getDurationFieldBuilder() {
+ if (durationBuilder_ == null) {
+ durationBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.protobuf.Duration,
+ com.google.protobuf.Duration.Builder,
+ com.google.protobuf.DurationOrBuilder>(
+ getDuration(), getParentForChildren(), isClean());
+ duration_ = null;
+ }
+ return durationBuilder_;
+ }
+
+ @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.securitycenter.v2.CloudArmor)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.CloudArmor)
+ private static final com.google.cloud.securitycenter.v2.CloudArmor DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.CloudArmor();
+ }
+
+ public static com.google.cloud.securitycenter.v2.CloudArmor getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ *
+ * @return Whether the securityPolicy field is set.
+ */
+ boolean hasSecurityPolicy();
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ *
+ * @return The securityPolicy.
+ */
+ com.google.cloud.securitycenter.v2.SecurityPolicy getSecurityPolicy();
+ /**
+ *
+ *
+ *
+ * Information about the [Google Cloud Armor security
+ * policy](https://cloud.google.com/armor/docs/security-policy-overview)
+ * relevant to the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.SecurityPolicy security_policy = 1;
+ */
+ com.google.cloud.securitycenter.v2.SecurityPolicyOrBuilder getSecurityPolicyOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ *
+ * @return Whether the requests field is set.
+ */
+ boolean hasRequests();
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ *
+ * @return The requests.
+ */
+ com.google.cloud.securitycenter.v2.Requests getRequests();
+ /**
+ *
+ *
+ *
+ * Information about incoming requests evaluated by [Google Cloud Armor
+ * security
+ * policies](https://cloud.google.com/armor/docs/security-policy-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.Requests requests = 2;
+ */
+ com.google.cloud.securitycenter.v2.RequestsOrBuilder getRequestsOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ *
+ * @return Whether the adaptiveProtection field is set.
+ */
+ boolean hasAdaptiveProtection();
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ *
+ * @return The adaptiveProtection.
+ */
+ com.google.cloud.securitycenter.v2.AdaptiveProtection getAdaptiveProtection();
+ /**
+ *
+ *
+ *
+ * Information about potential Layer 7 DDoS attacks identified by [Google
+ * Cloud Armor Adaptive
+ * Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview).
+ *
+ *
+ * .google.cloud.securitycenter.v2.AdaptiveProtection adaptive_protection = 3;
+ */
+ com.google.cloud.securitycenter.v2.AdaptiveProtectionOrBuilder getAdaptiveProtectionOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ *
+ * @return Whether the attack field is set.
+ */
+ boolean hasAttack();
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ *
+ * @return The attack.
+ */
+ com.google.cloud.securitycenter.v2.Attack getAttack();
+ /**
+ *
+ *
+ *
+ * Information about DDoS attack volume and classification.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Attack attack = 4;
+ */
+ com.google.cloud.securitycenter.v2.AttackOrBuilder getAttackOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @return The threatVector.
+ */
+ java.lang.String getThreatVector();
+ /**
+ *
+ *
+ *
+ * Distinguish between volumetric & protocol DDoS attack and
+ * application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
+ * attacks, or "L_7" for Layer 7 DDoS attacks.
+ *
+ *
+ * string threat_vector = 5;
+ *
+ * @return The bytes for threatVector.
+ */
+ com.google.protobuf.ByteString getThreatVectorBytes();
+
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ *
+ * @return Whether the duration field is set.
+ */
+ boolean hasDuration();
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ *
+ * @return The duration.
+ */
+ com.google.protobuf.Duration getDuration();
+ /**
+ *
+ *
+ *
+ * Duration of attack from the start until the current moment (updated every 5
+ * minutes).
+ *
+ *
+ * .google.protobuf.Duration duration = 6;
+ */
+ com.google.protobuf.DurationOrBuilder getDurationOrBuilder();
+}
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudArmorProto.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudArmorProto.java
new file mode 100644
index 000000000000..765130a8e839
--- /dev/null
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudArmorProto.java
@@ -0,0 +1,141 @@
+/*
+ * 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/securitycenter/v2/cloud_armor.proto
+
+// Protobuf Java Version: 3.25.3
+package com.google.cloud.securitycenter.v2;
+
+public final class CloudArmorProto {
+ private CloudArmorProto() {}
+
+ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {}
+
+ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) {
+ registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry);
+ }
+
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_securitycenter_v2_CloudArmor_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_securitycenter_v2_CloudArmor_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_securitycenter_v2_SecurityPolicy_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_securitycenter_v2_SecurityPolicy_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_securitycenter_v2_Requests_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_securitycenter_v2_Requests_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_securitycenter_v2_AdaptiveProtection_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_securitycenter_v2_AdaptiveProtection_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_securitycenter_v2_Attack_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_securitycenter_v2_Attack_fieldAccessorTable;
+
+ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ return descriptor;
+ }
+
+ private static com.google.protobuf.Descriptors.FileDescriptor descriptor;
+
+ static {
+ java.lang.String[] descriptorData = {
+ "\n0google/cloud/securitycenter/v2/cloud_a"
+ + "rmor.proto\022\036google.cloud.securitycenter."
+ + "v2\032\036google/protobuf/duration.proto\"\336\002\n\nC"
+ + "loudArmor\022G\n\017security_policy\030\001 \001(\0132..goo"
+ + "gle.cloud.securitycenter.v2.SecurityPoli"
+ + "cy\022:\n\010requests\030\002 \001(\0132(.google.cloud.secu"
+ + "ritycenter.v2.Requests\022O\n\023adaptive_prote"
+ + "ction\030\003 \001(\01322.google.cloud.securitycente"
+ + "r.v2.AdaptiveProtection\0226\n\006attack\030\004 \001(\0132"
+ + "&.google.cloud.securitycenter.v2.Attack\022"
+ + "\025\n\rthreat_vector\030\005 \001(\t\022+\n\010duration\030\006 \001(\013"
+ + "2\031.google.protobuf.Duration\"=\n\016SecurityP"
+ + "olicy\022\014\n\004name\030\001 \001(\t\022\014\n\004type\030\002 \001(\t\022\017\n\007pre"
+ + "view\030\003 \001(\010\"j\n\010Requests\022\r\n\005ratio\030\001 \001(\001\022\032\n"
+ + "\022short_term_allowed\030\002 \001(\005\022\031\n\021long_term_a"
+ + "llowed\030\003 \001(\005\022\030\n\020long_term_denied\030\004 \001(\005\"("
+ + "\n\022AdaptiveProtection\022\022\n\nconfidence\030\001 \001(\001"
+ + "\"H\n\006Attack\022\022\n\nvolume_pps\030\001 \001(\005\022\022\n\nvolume"
+ + "_bps\030\002 \001(\005\022\026\n\016classification\030\003 \001(\tB\351\001\n\"c"
+ + "om.google.cloud.securitycenter.v2B\017Cloud"
+ + "ArmorProtoP\001ZJcloud.google.com/go/securi"
+ + "tycenter/apiv2/securitycenterpb;security"
+ + "centerpb\252\002\036Google.Cloud.SecurityCenter.V"
+ + "2\312\002\036Google\\Cloud\\SecurityCenter\\V2\352\002!Goo"
+ + "gle::Cloud::SecurityCenter::V2b\006proto3"
+ };
+ descriptor =
+ com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
+ descriptorData,
+ new com.google.protobuf.Descriptors.FileDescriptor[] {
+ com.google.protobuf.DurationProto.getDescriptor(),
+ });
+ internal_static_google_cloud_securitycenter_v2_CloudArmor_descriptor =
+ getDescriptor().getMessageTypes().get(0);
+ internal_static_google_cloud_securitycenter_v2_CloudArmor_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_securitycenter_v2_CloudArmor_descriptor,
+ new java.lang.String[] {
+ "SecurityPolicy",
+ "Requests",
+ "AdaptiveProtection",
+ "Attack",
+ "ThreatVector",
+ "Duration",
+ });
+ internal_static_google_cloud_securitycenter_v2_SecurityPolicy_descriptor =
+ getDescriptor().getMessageTypes().get(1);
+ internal_static_google_cloud_securitycenter_v2_SecurityPolicy_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_securitycenter_v2_SecurityPolicy_descriptor,
+ new java.lang.String[] {
+ "Name", "Type", "Preview",
+ });
+ internal_static_google_cloud_securitycenter_v2_Requests_descriptor =
+ getDescriptor().getMessageTypes().get(2);
+ internal_static_google_cloud_securitycenter_v2_Requests_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_securitycenter_v2_Requests_descriptor,
+ new java.lang.String[] {
+ "Ratio", "ShortTermAllowed", "LongTermAllowed", "LongTermDenied",
+ });
+ internal_static_google_cloud_securitycenter_v2_AdaptiveProtection_descriptor =
+ getDescriptor().getMessageTypes().get(3);
+ internal_static_google_cloud_securitycenter_v2_AdaptiveProtection_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_securitycenter_v2_AdaptiveProtection_descriptor,
+ new java.lang.String[] {
+ "Confidence",
+ });
+ internal_static_google_cloud_securitycenter_v2_Attack_descriptor =
+ getDescriptor().getMessageTypes().get(4);
+ internal_static_google_cloud_securitycenter_v2_Attack_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_securitycenter_v2_Attack_descriptor,
+ new java.lang.String[] {
+ "VolumePps", "VolumeBps", "Classification",
+ });
+ com.google.protobuf.DurationProto.getDescriptor();
+ }
+
+ // @@protoc_insertion_point(outer_class_scope)
+}
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudProvider.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudProvider.java
new file mode 100644
index 000000000000..4abe42fb3010
--- /dev/null
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/CloudProvider.java
@@ -0,0 +1,199 @@
+/*
+ * 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/securitycenter/v2/resource.proto
+
+// Protobuf Java Version: 3.25.3
+package com.google.cloud.securitycenter.v2;
+
+/**
+ *
+ *
+ *
+ * The cloud provider the finding pertains to.
+ *
+ *
+ * Protobuf enum {@code google.cloud.securitycenter.v2.CloudProvider}
+ */
+public enum CloudProvider implements com.google.protobuf.ProtocolMessageEnum {
+ /**
+ *
+ *
+ *
+ * The cloud provider is unspecified.
+ *
+ *
+ * CLOUD_PROVIDER_UNSPECIFIED = 0;
+ */
+ CLOUD_PROVIDER_UNSPECIFIED(0),
+ /**
+ *
+ *
+ *
+ * The cloud provider is Google Cloud Platform.
+ *
+ *
+ * GOOGLE_CLOUD_PLATFORM = 1;
+ */
+ GOOGLE_CLOUD_PLATFORM(1),
+ /**
+ *
+ *
+ *
+ * The cloud provider is Amazon Web Services.
+ *
+ *
+ * AMAZON_WEB_SERVICES = 2;
+ */
+ AMAZON_WEB_SERVICES(2),
+ /**
+ *
+ *
+ *
+ * The cloud provider is Microsoft Azure.
+ *
+ *
+ * MICROSOFT_AZURE = 3;
+ */
+ MICROSOFT_AZURE(3),
+ UNRECOGNIZED(-1),
+ ;
+
+ /**
+ *
+ *
+ *
+ * The cloud provider is unspecified.
+ *
+ *
+ * CLOUD_PROVIDER_UNSPECIFIED = 0;
+ */
+ public static final int CLOUD_PROVIDER_UNSPECIFIED_VALUE = 0;
+ /**
+ *
+ *
+ *
+ * The cloud provider is Google Cloud Platform.
+ *
+ *
+ * GOOGLE_CLOUD_PLATFORM = 1;
+ */
+ public static final int GOOGLE_CLOUD_PLATFORM_VALUE = 1;
+ /**
+ *
+ *
+ *
+ * The cloud provider is Amazon Web Services.
+ *
+ *
+ * AMAZON_WEB_SERVICES = 2;
+ */
+ public static final int AMAZON_WEB_SERVICES_VALUE = 2;
+ /**
+ *
+ *
+ *
+ * The cloud provider is Microsoft Azure.
+ *
+ *
+ * MICROSOFT_AZURE = 3;
+ */
+ public static final int MICROSOFT_AZURE_VALUE = 3;
+
+ 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 CloudProvider 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 CloudProvider forNumber(int value) {
+ switch (value) {
+ case 0:
+ return CLOUD_PROVIDER_UNSPECIFIED;
+ case 1:
+ return GOOGLE_CLOUD_PLATFORM;
+ case 2:
+ return AMAZON_WEB_SERVICES;
+ case 3:
+ return MICROSOFT_AZURE;
+ default:
+ return null;
+ }
+ }
+
+ public static com.google.protobuf.Internal.EnumLiteMap
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ *
+ * @return Whether the cloudArmor field is set.
+ */
+ @java.lang.Override
+ public boolean hasCloudArmor() {
+ return ((bitField0_ & 0x00040000) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ *
+ * @return The cloudArmor.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.CloudArmor getCloudArmor() {
+ return cloudArmor_ == null
+ ? com.google.cloud.securitycenter.v2.CloudArmor.getDefaultInstance()
+ : cloudArmor_;
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.CloudArmorOrBuilder getCloudArmorOrBuilder() {
+ return cloudArmor_ == null
+ ? com.google.cloud.securitycenter.v2.CloudArmor.getDefaultInstance()
+ : cloudArmor_;
+ }
+
+ public static final int NOTEBOOK_FIELD_NUMBER = 55;
+ private com.google.cloud.securitycenter.v2.Notebook notebook_;
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ *
+ * @return Whether the notebook field is set.
+ */
+ @java.lang.Override
+ public boolean hasNotebook() {
+ return ((bitField0_ & 0x00080000) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ *
+ * @return The notebook.
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.Notebook getNotebook() {
+ return notebook_ == null
+ ? com.google.cloud.securitycenter.v2.Notebook.getDefaultInstance()
+ : notebook_;
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.NotebookOrBuilder getNotebookOrBuilder() {
+ return notebook_ == null
+ ? com.google.cloud.securitycenter.v2.Notebook.getDefaultInstance()
+ : notebook_;
+ }
+
public static final int TOXIC_COMBINATION_FIELD_NUMBER = 56;
private com.google.cloud.securitycenter.v2.ToxicCombination toxicCombination_;
/**
@@ -3902,7 +4002,7 @@ public com.google.cloud.securitycenter.v2.LoadBalancerOrBuilder getLoadBalancers
*/
@java.lang.Override
public boolean hasToxicCombination() {
- return ((bitField0_ & 0x00040000) != 0);
+ return ((bitField0_ & 0x00100000) != 0);
}
/**
*
@@ -4179,6 +4279,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
output.writeMessage(50, loadBalancers_.get(i));
}
if (((bitField0_ & 0x00040000) != 0)) {
+ output.writeMessage(51, getCloudArmor());
+ }
+ if (((bitField0_ & 0x00080000) != 0)) {
+ output.writeMessage(55, getNotebook());
+ }
+ if (((bitField0_ & 0x00100000) != 0)) {
output.writeMessage(56, getToxicCombination());
}
for (int i = 0; i < groupMemberships_.size(); i++) {
@@ -4359,6 +4465,12 @@ public int getSerializedSize() {
size += com.google.protobuf.CodedOutputStream.computeMessageSize(50, loadBalancers_.get(i));
}
if (((bitField0_ & 0x00040000) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(51, getCloudArmor());
+ }
+ if (((bitField0_ & 0x00080000) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(55, getNotebook());
+ }
+ if (((bitField0_ & 0x00100000) != 0)) {
size += com.google.protobuf.CodedOutputStream.computeMessageSize(56, getToxicCombination());
}
for (int i = 0; i < groupMemberships_.size(); i++) {
@@ -4480,6 +4592,14 @@ public boolean equals(final java.lang.Object obj) {
}
if (!getLogEntriesList().equals(other.getLogEntriesList())) return false;
if (!getLoadBalancersList().equals(other.getLoadBalancersList())) return false;
+ if (hasCloudArmor() != other.hasCloudArmor()) return false;
+ if (hasCloudArmor()) {
+ if (!getCloudArmor().equals(other.getCloudArmor())) return false;
+ }
+ if (hasNotebook() != other.hasNotebook()) return false;
+ if (hasNotebook()) {
+ if (!getNotebook().equals(other.getNotebook())) return false;
+ }
if (hasToxicCombination() != other.hasToxicCombination()) return false;
if (hasToxicCombination()) {
if (!getToxicCombination().equals(other.getToxicCombination())) return false;
@@ -4646,6 +4766,14 @@ public int hashCode() {
hash = (37 * hash) + LOAD_BALANCERS_FIELD_NUMBER;
hash = (53 * hash) + getLoadBalancersList().hashCode();
}
+ if (hasCloudArmor()) {
+ hash = (37 * hash) + CLOUD_ARMOR_FIELD_NUMBER;
+ hash = (53 * hash) + getCloudArmor().hashCode();
+ }
+ if (hasNotebook()) {
+ hash = (37 * hash) + NOTEBOOK_FIELD_NUMBER;
+ hash = (53 * hash) + getNotebook().hashCode();
+ }
if (hasToxicCombination()) {
hash = (37 * hash) + TOXIC_COMBINATION_FIELD_NUMBER;
hash = (53 * hash) + getToxicCombination().hashCode();
@@ -4857,6 +4985,8 @@ private void maybeForceBuilderInitialization() {
getSecurityPostureFieldBuilder();
getLogEntriesFieldBuilder();
getLoadBalancersFieldBuilder();
+ getCloudArmorFieldBuilder();
+ getNotebookFieldBuilder();
getToxicCombinationFieldBuilder();
getGroupMembershipsFieldBuilder();
}
@@ -5038,6 +5168,16 @@ public Builder clear() {
loadBalancersBuilder_.clear();
}
bitField1_ = (bitField1_ & ~0x00001000);
+ cloudArmor_ = null;
+ if (cloudArmorBuilder_ != null) {
+ cloudArmorBuilder_.dispose();
+ cloudArmorBuilder_ = null;
+ }
+ notebook_ = null;
+ if (notebookBuilder_ != null) {
+ notebookBuilder_.dispose();
+ notebookBuilder_ = null;
+ }
toxicCombination_ = null;
if (toxicCombinationBuilder_ != null) {
toxicCombinationBuilder_.dispose();
@@ -5049,7 +5189,7 @@ public Builder clear() {
groupMemberships_ = null;
groupMembershipsBuilder_.clear();
}
- bitField1_ = (bitField1_ & ~0x00004000);
+ bitField1_ = (bitField1_ & ~0x00010000);
return this;
}
@@ -5171,9 +5311,9 @@ private void buildPartialRepeatedFields(com.google.cloud.securitycenter.v2.Findi
result.loadBalancers_ = loadBalancersBuilder_.build();
}
if (groupMembershipsBuilder_ == null) {
- if (((bitField1_ & 0x00004000) != 0)) {
+ if (((bitField1_ & 0x00010000) != 0)) {
groupMemberships_ = java.util.Collections.unmodifiableList(groupMemberships_);
- bitField1_ = (bitField1_ & ~0x00004000);
+ bitField1_ = (bitField1_ & ~0x00010000);
}
result.groupMemberships_ = groupMemberships_;
} else {
@@ -5337,9 +5477,17 @@ private void buildPartial1(com.google.cloud.securitycenter.v2.Finding result) {
to_bitField0_ |= 0x00020000;
}
if (((from_bitField1_ & 0x00002000) != 0)) {
+ result.cloudArmor_ = cloudArmorBuilder_ == null ? cloudArmor_ : cloudArmorBuilder_.build();
+ to_bitField0_ |= 0x00040000;
+ }
+ if (((from_bitField1_ & 0x00004000) != 0)) {
+ result.notebook_ = notebookBuilder_ == null ? notebook_ : notebookBuilder_.build();
+ to_bitField0_ |= 0x00080000;
+ }
+ if (((from_bitField1_ & 0x00008000) != 0)) {
result.toxicCombination_ =
toxicCombinationBuilder_ == null ? toxicCombination_ : toxicCombinationBuilder_.build();
- to_bitField0_ |= 0x00040000;
+ to_bitField0_ |= 0x00100000;
}
result.bitField0_ |= to_bitField0_;
}
@@ -5759,6 +5907,12 @@ public Builder mergeFrom(com.google.cloud.securitycenter.v2.Finding other) {
}
}
}
+ if (other.hasCloudArmor()) {
+ mergeCloudArmor(other.getCloudArmor());
+ }
+ if (other.hasNotebook()) {
+ mergeNotebook(other.getNotebook());
+ }
if (other.hasToxicCombination()) {
mergeToxicCombination(other.getToxicCombination());
}
@@ -5766,7 +5920,7 @@ public Builder mergeFrom(com.google.cloud.securitycenter.v2.Finding other) {
if (!other.groupMemberships_.isEmpty()) {
if (groupMemberships_.isEmpty()) {
groupMemberships_ = other.groupMemberships_;
- bitField1_ = (bitField1_ & ~0x00004000);
+ bitField1_ = (bitField1_ & ~0x00010000);
} else {
ensureGroupMembershipsIsMutable();
groupMemberships_.addAll(other.groupMemberships_);
@@ -5779,7 +5933,7 @@ public Builder mergeFrom(com.google.cloud.securitycenter.v2.Finding other) {
groupMembershipsBuilder_.dispose();
groupMembershipsBuilder_ = null;
groupMemberships_ = other.groupMemberships_;
- bitField1_ = (bitField1_ & ~0x00004000);
+ bitField1_ = (bitField1_ & ~0x00010000);
groupMembershipsBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
? getGroupMembershipsFieldBuilder()
@@ -6175,11 +6329,23 @@ public Builder mergeFrom(
}
break;
} // case 402
+ case 410:
+ {
+ input.readMessage(getCloudArmorFieldBuilder().getBuilder(), extensionRegistry);
+ bitField1_ |= 0x00002000;
+ break;
+ } // case 410
+ case 442:
+ {
+ input.readMessage(getNotebookFieldBuilder().getBuilder(), extensionRegistry);
+ bitField1_ |= 0x00004000;
+ break;
+ } // case 442
case 450:
{
input.readMessage(
getToxicCombinationFieldBuilder().getBuilder(), extensionRegistry);
- bitField1_ |= 0x00002000;
+ bitField1_ |= 0x00008000;
break;
} // case 450
case 458:
@@ -15725,6 +15891,378 @@ public com.google.cloud.securitycenter.v2.LoadBalancer.Builder addLoadBalancersB
return loadBalancersBuilder_;
}
+ private com.google.cloud.securitycenter.v2.CloudArmor cloudArmor_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.CloudArmor,
+ com.google.cloud.securitycenter.v2.CloudArmor.Builder,
+ com.google.cloud.securitycenter.v2.CloudArmorOrBuilder>
+ cloudArmorBuilder_;
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ *
+ * @return Whether the cloudArmor field is set.
+ */
+ public boolean hasCloudArmor() {
+ return ((bitField1_ & 0x00002000) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ *
+ * @return The cloudArmor.
+ */
+ public com.google.cloud.securitycenter.v2.CloudArmor getCloudArmor() {
+ if (cloudArmorBuilder_ == null) {
+ return cloudArmor_ == null
+ ? com.google.cloud.securitycenter.v2.CloudArmor.getDefaultInstance()
+ : cloudArmor_;
+ } else {
+ return cloudArmorBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ public Builder setCloudArmor(com.google.cloud.securitycenter.v2.CloudArmor value) {
+ if (cloudArmorBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ cloudArmor_ = value;
+ } else {
+ cloudArmorBuilder_.setMessage(value);
+ }
+ bitField1_ |= 0x00002000;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ public Builder setCloudArmor(
+ com.google.cloud.securitycenter.v2.CloudArmor.Builder builderForValue) {
+ if (cloudArmorBuilder_ == null) {
+ cloudArmor_ = builderForValue.build();
+ } else {
+ cloudArmorBuilder_.setMessage(builderForValue.build());
+ }
+ bitField1_ |= 0x00002000;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ public Builder mergeCloudArmor(com.google.cloud.securitycenter.v2.CloudArmor value) {
+ if (cloudArmorBuilder_ == null) {
+ if (((bitField1_ & 0x00002000) != 0)
+ && cloudArmor_ != null
+ && cloudArmor_ != com.google.cloud.securitycenter.v2.CloudArmor.getDefaultInstance()) {
+ getCloudArmorBuilder().mergeFrom(value);
+ } else {
+ cloudArmor_ = value;
+ }
+ } else {
+ cloudArmorBuilder_.mergeFrom(value);
+ }
+ if (cloudArmor_ != null) {
+ bitField1_ |= 0x00002000;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ public Builder clearCloudArmor() {
+ bitField1_ = (bitField1_ & ~0x00002000);
+ cloudArmor_ = null;
+ if (cloudArmorBuilder_ != null) {
+ cloudArmorBuilder_.dispose();
+ cloudArmorBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ public com.google.cloud.securitycenter.v2.CloudArmor.Builder getCloudArmorBuilder() {
+ bitField1_ |= 0x00002000;
+ onChanged();
+ return getCloudArmorFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ public com.google.cloud.securitycenter.v2.CloudArmorOrBuilder getCloudArmorOrBuilder() {
+ if (cloudArmorBuilder_ != null) {
+ return cloudArmorBuilder_.getMessageOrBuilder();
+ } else {
+ return cloudArmor_ == null
+ ? com.google.cloud.securitycenter.v2.CloudArmor.getDefaultInstance()
+ : cloudArmor_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.CloudArmor,
+ com.google.cloud.securitycenter.v2.CloudArmor.Builder,
+ com.google.cloud.securitycenter.v2.CloudArmorOrBuilder>
+ getCloudArmorFieldBuilder() {
+ if (cloudArmorBuilder_ == null) {
+ cloudArmorBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.CloudArmor,
+ com.google.cloud.securitycenter.v2.CloudArmor.Builder,
+ com.google.cloud.securitycenter.v2.CloudArmorOrBuilder>(
+ getCloudArmor(), getParentForChildren(), isClean());
+ cloudArmor_ = null;
+ }
+ return cloudArmorBuilder_;
+ }
+
+ private com.google.cloud.securitycenter.v2.Notebook notebook_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Notebook,
+ com.google.cloud.securitycenter.v2.Notebook.Builder,
+ com.google.cloud.securitycenter.v2.NotebookOrBuilder>
+ notebookBuilder_;
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ *
+ * @return Whether the notebook field is set.
+ */
+ public boolean hasNotebook() {
+ return ((bitField1_ & 0x00004000) != 0);
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ *
+ * @return The notebook.
+ */
+ public com.google.cloud.securitycenter.v2.Notebook getNotebook() {
+ if (notebookBuilder_ == null) {
+ return notebook_ == null
+ ? com.google.cloud.securitycenter.v2.Notebook.getDefaultInstance()
+ : notebook_;
+ } else {
+ return notebookBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ public Builder setNotebook(com.google.cloud.securitycenter.v2.Notebook value) {
+ if (notebookBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ notebook_ = value;
+ } else {
+ notebookBuilder_.setMessage(value);
+ }
+ bitField1_ |= 0x00004000;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ public Builder setNotebook(
+ com.google.cloud.securitycenter.v2.Notebook.Builder builderForValue) {
+ if (notebookBuilder_ == null) {
+ notebook_ = builderForValue.build();
+ } else {
+ notebookBuilder_.setMessage(builderForValue.build());
+ }
+ bitField1_ |= 0x00004000;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ public Builder mergeNotebook(com.google.cloud.securitycenter.v2.Notebook value) {
+ if (notebookBuilder_ == null) {
+ if (((bitField1_ & 0x00004000) != 0)
+ && notebook_ != null
+ && notebook_ != com.google.cloud.securitycenter.v2.Notebook.getDefaultInstance()) {
+ getNotebookBuilder().mergeFrom(value);
+ } else {
+ notebook_ = value;
+ }
+ } else {
+ notebookBuilder_.mergeFrom(value);
+ }
+ if (notebook_ != null) {
+ bitField1_ |= 0x00004000;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ public Builder clearNotebook() {
+ bitField1_ = (bitField1_ & ~0x00004000);
+ notebook_ = null;
+ if (notebookBuilder_ != null) {
+ notebookBuilder_.dispose();
+ notebookBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ public com.google.cloud.securitycenter.v2.Notebook.Builder getNotebookBuilder() {
+ bitField1_ |= 0x00004000;
+ onChanged();
+ return getNotebookFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ public com.google.cloud.securitycenter.v2.NotebookOrBuilder getNotebookOrBuilder() {
+ if (notebookBuilder_ != null) {
+ return notebookBuilder_.getMessageOrBuilder();
+ } else {
+ return notebook_ == null
+ ? com.google.cloud.securitycenter.v2.Notebook.getDefaultInstance()
+ : notebook_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Notebook,
+ com.google.cloud.securitycenter.v2.Notebook.Builder,
+ com.google.cloud.securitycenter.v2.NotebookOrBuilder>
+ getNotebookFieldBuilder() {
+ if (notebookBuilder_ == null) {
+ notebookBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.securitycenter.v2.Notebook,
+ com.google.cloud.securitycenter.v2.Notebook.Builder,
+ com.google.cloud.securitycenter.v2.NotebookOrBuilder>(
+ getNotebook(), getParentForChildren(), isClean());
+ notebook_ = null;
+ }
+ return notebookBuilder_;
+ }
+
private com.google.cloud.securitycenter.v2.ToxicCombination toxicCombination_;
private com.google.protobuf.SingleFieldBuilderV3<
com.google.cloud.securitycenter.v2.ToxicCombination,
@@ -15747,7 +16285,7 @@ public com.google.cloud.securitycenter.v2.LoadBalancer.Builder addLoadBalancersB
* @return Whether the toxicCombination field is set.
*/
public boolean hasToxicCombination() {
- return ((bitField1_ & 0x00002000) != 0);
+ return ((bitField1_ & 0x00008000) != 0);
}
/**
*
@@ -15795,7 +16333,7 @@ public Builder setToxicCombination(com.google.cloud.securitycenter.v2.ToxicCombi
} else {
toxicCombinationBuilder_.setMessage(value);
}
- bitField1_ |= 0x00002000;
+ bitField1_ |= 0x00008000;
onChanged();
return this;
}
@@ -15819,7 +16357,7 @@ public Builder setToxicCombination(
} else {
toxicCombinationBuilder_.setMessage(builderForValue.build());
}
- bitField1_ |= 0x00002000;
+ bitField1_ |= 0x00008000;
onChanged();
return this;
}
@@ -15839,7 +16377,7 @@ public Builder setToxicCombination(
public Builder mergeToxicCombination(
com.google.cloud.securitycenter.v2.ToxicCombination value) {
if (toxicCombinationBuilder_ == null) {
- if (((bitField1_ & 0x00002000) != 0)
+ if (((bitField1_ & 0x00008000) != 0)
&& toxicCombination_ != null
&& toxicCombination_
!= com.google.cloud.securitycenter.v2.ToxicCombination.getDefaultInstance()) {
@@ -15851,7 +16389,7 @@ public Builder mergeToxicCombination(
toxicCombinationBuilder_.mergeFrom(value);
}
if (toxicCombination_ != null) {
- bitField1_ |= 0x00002000;
+ bitField1_ |= 0x00008000;
onChanged();
}
return this;
@@ -15870,7 +16408,7 @@ public Builder mergeToxicCombination(
* .google.cloud.securitycenter.v2.ToxicCombination toxic_combination = 56;
*/
public Builder clearToxicCombination() {
- bitField1_ = (bitField1_ & ~0x00002000);
+ bitField1_ = (bitField1_ & ~0x00008000);
toxicCombination_ = null;
if (toxicCombinationBuilder_ != null) {
toxicCombinationBuilder_.dispose();
@@ -15894,7 +16432,7 @@ public Builder clearToxicCombination() {
*/
public com.google.cloud.securitycenter.v2.ToxicCombination.Builder
getToxicCombinationBuilder() {
- bitField1_ |= 0x00002000;
+ bitField1_ |= 0x00008000;
onChanged();
return getToxicCombinationFieldBuilder().getBuilder();
}
@@ -15955,11 +16493,11 @@ public Builder clearToxicCombination() {
java.util.Collections.emptyList();
private void ensureGroupMembershipsIsMutable() {
- if (!((bitField1_ & 0x00004000) != 0)) {
+ if (!((bitField1_ & 0x00010000) != 0)) {
groupMemberships_ =
new java.util.ArrayList
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ *
+ * @return Whether the cloudArmor field is set.
+ */
+ boolean hasCloudArmor();
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ *
+ * @return The cloudArmor.
+ */
+ com.google.cloud.securitycenter.v2.CloudArmor getCloudArmor();
+ /**
+ *
+ *
+ *
+ * Fields related to Cloud Armor findings.
+ *
+ *
+ * .google.cloud.securitycenter.v2.CloudArmor cloud_armor = 51;
+ */
+ com.google.cloud.securitycenter.v2.CloudArmorOrBuilder getCloudArmorOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ *
+ * @return Whether the notebook field is set.
+ */
+ boolean hasNotebook();
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ *
+ * @return The notebook.
+ */
+ com.google.cloud.securitycenter.v2.Notebook getNotebook();
+ /**
+ *
+ *
+ *
+ * Notebook associated with the finding.
+ *
+ *
+ * .google.cloud.securitycenter.v2.Notebook notebook = 55;
+ */
+ com.google.cloud.securitycenter.v2.NotebookOrBuilder getNotebookOrBuilder();
+
/**
*
*
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/FindingProto.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/FindingProto.java
index 7927d66a93d6..22c4c0ae0fc5 100644
--- a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/FindingProto.java
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/FindingProto.java
@@ -61,143 +61,149 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "curitycenter/v2/application.proto\0324googl"
+ "e/cloud/securitycenter/v2/attack_exposur"
+ "e.proto\032=google/cloud/securitycenter/v2/"
- + "backup_disaster_recovery.proto\032;google/c"
- + "loud/securitycenter/v2/cloud_dlp_data_pr"
- + "ofile.proto\0329google/cloud/securitycenter"
- + "/v2/cloud_dlp_inspection.proto\032/google/c"
- + "loud/securitycenter/v2/compliance.proto\032"
- + "/google/cloud/securitycenter/v2/connecti"
- + "on.proto\0324google/cloud/securitycenter/v2"
- + "/contact_details.proto\032.google/cloud/sec"
- + "uritycenter/v2/container.proto\032-google/c"
- + "loud/securitycenter/v2/database.proto\0321g"
- + "oogle/cloud/securitycenter/v2/exfiltrati"
- + "on.proto\0324google/cloud/securitycenter/v2"
- + "/external_system.proto\032)google/cloud/sec"
- + "uritycenter/v2/file.proto\0325google/cloud/"
- + "securitycenter/v2/group_membership.proto"
- + "\0320google/cloud/securitycenter/v2/iam_bin"
- + "ding.proto\032.google/cloud/securitycenter/"
- + "v2/indicator.proto\0323google/cloud/securit"
- + "ycenter/v2/kernel_rootkit.proto\032/google/"
- + "cloud/securitycenter/v2/kubernetes.proto"
- + "\0322google/cloud/securitycenter/v2/load_ba"
- + "lancer.proto\032.google/cloud/securitycente"
- + "r/v2/log_entry.proto\0321google/cloud/secur"
- + "itycenter/v2/mitre_attack.proto\032/google/"
- + "cloud/securitycenter/v2/org_policy.proto"
- + "\032,google/cloud/securitycenter/v2/process"
- + ".proto\0323google/cloud/securitycenter/v2/s"
- + "ecurity_marks.proto\0325google/cloud/securi"
- + "tycenter/v2/security_posture.proto\0326goog"
- + "le/cloud/securitycenter/v2/toxic_combina"
- + "tion.proto\0322google/cloud/securitycenter/"
- + "v2/vulnerability.proto\032\034google/protobuf/"
- + "struct.proto\032\037google/protobuf/timestamp."
- + "proto\"\266\036\n\007Finding\022\014\n\004name\030\001 \001(\t\022\033\n\016canon"
- + "ical_name\030\002 \001(\tB\003\340A\003\022\016\n\006parent\030\003 \001(\t\022\032\n\r"
- + "resource_name\030\004 \001(\tB\003\340A\005\022A\n\005state\030\006 \001(\0162"
- + "-.google.cloud.securitycenter.v2.Finding"
- + ".StateB\003\340A\003\022\025\n\010category\030\007 \001(\tB\003\340A\005\022\024\n\014ex"
- + "ternal_uri\030\010 \001(\t\022X\n\021source_properties\030\t "
- + "\003(\0132=.google.cloud.securitycenter.v2.Fin"
- + "ding.SourcePropertiesEntry\022J\n\016security_m"
- + "arks\030\n \001(\0132-.google.cloud.securitycenter"
- + ".v2.SecurityMarksB\003\340A\003\022.\n\nevent_time\030\013 \001"
- + "(\0132\032.google.protobuf.Timestamp\0224\n\013create"
- + "_time\030\014 \001(\0132\032.google.protobuf.TimestampB"
- + "\003\340A\003\022B\n\010severity\030\016 \001(\01620.google.cloud.se"
- + "curitycenter.v2.Finding.Severity\022:\n\004mute"
- + "\030\017 \001(\0162,.google.cloud.securitycenter.v2."
- + "Finding.Mute\022K\n\rfinding_class\030\020 \001(\01624.go"
- + "ogle.cloud.securitycenter.v2.Finding.Fin"
- + "dingClass\022<\n\tindicator\030\021 \001(\0132).google.cl"
- + "oud.securitycenter.v2.Indicator\022D\n\rvulne"
- + "rability\030\022 \001(\0132-.google.cloud.securityce"
- + "nter.v2.Vulnerability\0229\n\020mute_update_tim"
- + "e\030\023 \001(\0132\032.google.protobuf.TimestampB\003\340A\003"
- + "\022[\n\020external_systems\030\024 \003(\0132<.google.clou"
- + "d.securitycenter.v2.Finding.ExternalSyst"
- + "emsEntryB\003\340A\003\022A\n\014mitre_attack\030\025 \001(\0132+.go"
- + "ogle.cloud.securitycenter.v2.MitreAttack"
- + "\0226\n\006access\030\026 \001(\0132&.google.cloud.security"
- + "center.v2.Access\022?\n\013connections\030\027 \003(\0132*."
- + "google.cloud.securitycenter.v2.Connectio"
- + "n\022\026\n\016mute_initiator\030\030 \001(\t\022:\n\tprocesses\030\031"
- + " \003(\0132\'.google.cloud.securitycenter.v2.Pr"
- + "ocess\022L\n\010contacts\030\032 \003(\01325.google.cloud.s"
- + "ecuritycenter.v2.Finding.ContactsEntryB\003"
- + "\340A\003\022?\n\013compliances\030\033 \003(\0132*.google.cloud."
- + "securitycenter.v2.Compliance\022 \n\023parent_d"
- + "isplay_name\030\035 \001(\tB\003\340A\003\022\023\n\013description\030\036 "
- + "\001(\t\022B\n\014exfiltration\030\037 \001(\0132,.google.cloud"
- + ".securitycenter.v2.Exfiltration\022@\n\014iam_b"
- + "indings\030 \003(\0132*.google.cloud.securitycen"
- + "ter.v2.IamBinding\022\022\n\nnext_steps\030! \001(\t\022\023\n"
- + "\013module_name\030\" \001(\t\022=\n\ncontainers\030# \003(\0132)"
- + ".google.cloud.securitycenter.v2.Containe"
- + "r\022>\n\nkubernetes\030$ \001(\0132*.google.cloud.sec"
- + "uritycenter.v2.Kubernetes\022:\n\010database\030% "
- + "\001(\0132(.google.cloud.securitycenter.v2.Dat"
- + "abase\022G\n\017attack_exposure\030& \001(\0132..google."
- + "cloud.securitycenter.v2.AttackExposure\0223"
- + "\n\005files\030\' \003(\0132$.google.cloud.securitycen"
- + "ter.v2.File\022P\n\024cloud_dlp_inspection\030( \001("
- + "\01322.google.cloud.securitycenter.v2.Cloud"
- + "DlpInspection\022S\n\026cloud_dlp_data_profile\030"
- + ") \001(\01323.google.cloud.securitycenter.v2.C"
- + "loudDlpDataProfile\022E\n\016kernel_rootkit\030* \001"
- + "(\0132-.google.cloud.securitycenter.v2.Kern"
- + "elRootkit\022?\n\014org_policies\030+ \003(\0132).google"
- + ".cloud.securitycenter.v2.OrgPolicy\022@\n\013ap"
- + "plication\030- \001(\0132+.google.cloud.securityc"
- + "enter.v2.Application\022X\n\030backup_disaster_"
- + "recovery\030/ \001(\01326.google.cloud.securityce"
- + "nter.v2.BackupDisasterRecovery\022I\n\020securi"
- + "ty_posture\0300 \001(\0132/.google.cloud.security"
- + "center.v2.SecurityPosture\022=\n\013log_entries"
- + "\0301 \003(\0132(.google.cloud.securitycenter.v2."
- + "LogEntry\022D\n\016load_balancers\0302 \003(\0132,.googl"
- + "e.cloud.securitycenter.v2.LoadBalancer\022K"
- + "\n\021toxic_combination\0308 \001(\01320.google.cloud"
- + ".securitycenter.v2.ToxicCombination\022J\n\021g"
- + "roup_memberships\0309 \003(\0132/.google.cloud.se"
- + "curitycenter.v2.GroupMembership\032O\n\025Sourc"
- + "ePropertiesEntry\022\013\n\003key\030\001 \001(\t\022%\n\005value\030\002"
- + " \001(\0132\026.google.protobuf.Value:\0028\001\032f\n\024Exte"
- + "rnalSystemsEntry\022\013\n\003key\030\001 \001(\t\022=\n\005value\030\002"
- + " \001(\0132..google.cloud.securitycenter.v2.Ex"
- + "ternalSystem:\0028\001\032_\n\rContactsEntry\022\013\n\003key"
- + "\030\001 \001(\t\022=\n\005value\030\002 \001(\0132..google.cloud.sec"
- + "uritycenter.v2.ContactDetails:\0028\001\"8\n\005Sta"
- + "te\022\025\n\021STATE_UNSPECIFIED\020\000\022\n\n\006ACTIVE\020\001\022\014\n"
- + "\010INACTIVE\020\002\"Q\n\010Severity\022\030\n\024SEVERITY_UNSP"
- + "ECIFIED\020\000\022\014\n\010CRITICAL\020\001\022\010\n\004HIGH\020\002\022\n\n\006MED"
- + "IUM\020\003\022\007\n\003LOW\020\004\"C\n\004Mute\022\024\n\020MUTE_UNSPECIFI"
- + "ED\020\000\022\t\n\005MUTED\020\001\022\013\n\007UNMUTED\020\002\022\r\n\tUNDEFINE"
- + "D\020\003\"\260\001\n\014FindingClass\022\035\n\031FINDING_CLASS_UN"
- + "SPECIFIED\020\000\022\n\n\006THREAT\020\001\022\021\n\rVULNERABILITY"
- + "\020\002\022\024\n\020MISCONFIGURATION\020\003\022\017\n\013OBSERVATION\020"
- + "\004\022\r\n\tSCC_ERROR\020\005\022\025\n\021POSTURE_VIOLATION\020\006\022"
- + "\025\n\021TOXIC_COMBINATION\020\007:\335\003\352A\331\003\n%securityc"
- + "enter.googleapis.com/Finding\022@organizati"
- + "ons/{organization}/sources/{source}/find"
- + "ings/{finding}\022Uorganizations/{organizat"
- + "ion}/sources/{source}/locations/{locatio"
- + "n}/findings/{finding}\0224folders/{folder}/"
- + "sources/{source}/findings/{finding}\022Ifol"
- + "ders/{folder}/sources/{source}/locations"
- + "/{location}/findings/{finding}\0226projects"
- + "/{project}/sources/{source}/findings/{fi"
- + "nding}\022Kprojects/{project}/sources/{sour"
+ + "backup_disaster_recovery.proto\0320google/c"
+ + "loud/securitycenter/v2/cloud_armor.proto"
+ + "\032;google/cloud/securitycenter/v2/cloud_d"
+ + "lp_data_profile.proto\0329google/cloud/secu"
+ + "ritycenter/v2/cloud_dlp_inspection.proto"
+ + "\032/google/cloud/securitycenter/v2/complia"
+ + "nce.proto\032/google/cloud/securitycenter/v"
+ + "2/connection.proto\0324google/cloud/securit"
+ + "ycenter/v2/contact_details.proto\032.google"
+ + "/cloud/securitycenter/v2/container.proto"
+ + "\032-google/cloud/securitycenter/v2/databas"
+ + "e.proto\0321google/cloud/securitycenter/v2/"
+ + "exfiltration.proto\0324google/cloud/securit"
+ + "ycenter/v2/external_system.proto\032)google"
+ + "/cloud/securitycenter/v2/file.proto\0325goo"
+ + "gle/cloud/securitycenter/v2/group_member"
+ + "ship.proto\0320google/cloud/securitycenter/"
+ + "v2/iam_binding.proto\032.google/cloud/secur"
+ + "itycenter/v2/indicator.proto\0323google/clo"
+ + "ud/securitycenter/v2/kernel_rootkit.prot"
+ + "o\032/google/cloud/securitycenter/v2/kubern"
+ + "etes.proto\0322google/cloud/securitycenter/"
+ + "v2/load_balancer.proto\032.google/cloud/sec"
+ + "uritycenter/v2/log_entry.proto\0321google/c"
+ + "loud/securitycenter/v2/mitre_attack.prot"
+ + "o\032-google/cloud/securitycenter/v2/notebo"
+ + "ok.proto\032/google/cloud/securitycenter/v2"
+ + "/org_policy.proto\032,google/cloud/security"
+ + "center/v2/process.proto\0323google/cloud/se"
+ + "curitycenter/v2/security_marks.proto\0325go"
+ + "ogle/cloud/securitycenter/v2/security_po"
+ + "sture.proto\0326google/cloud/securitycenter"
+ + "/v2/toxic_combination.proto\0322google/clou"
+ + "d/securitycenter/v2/vulnerability.proto\032"
+ + "\034google/protobuf/struct.proto\032\037google/pr"
+ + "otobuf/timestamp.proto\"\263\037\n\007Finding\022\014\n\004na"
+ + "me\030\001 \001(\t\022\033\n\016canonical_name\030\002 \001(\tB\003\340A\003\022\016\n"
+ + "\006parent\030\003 \001(\t\022\032\n\rresource_name\030\004 \001(\tB\003\340A"
+ + "\005\022A\n\005state\030\006 \001(\0162-.google.cloud.security"
+ + "center.v2.Finding.StateB\003\340A\003\022\025\n\010category"
+ + "\030\007 \001(\tB\003\340A\005\022\024\n\014external_uri\030\010 \001(\t\022X\n\021sou"
+ + "rce_properties\030\t \003(\0132=.google.cloud.secu"
+ + "ritycenter.v2.Finding.SourcePropertiesEn"
+ + "try\022J\n\016security_marks\030\n \001(\0132-.google.clo"
+ + "ud.securitycenter.v2.SecurityMarksB\003\340A\003\022"
+ + ".\n\nevent_time\030\013 \001(\0132\032.google.protobuf.Ti"
+ + "mestamp\0224\n\013create_time\030\014 \001(\0132\032.google.pr"
+ + "otobuf.TimestampB\003\340A\003\022B\n\010severity\030\016 \001(\0162"
+ + "0.google.cloud.securitycenter.v2.Finding"
+ + ".Severity\022:\n\004mute\030\017 \001(\0162,.google.cloud.s"
+ + "ecuritycenter.v2.Finding.Mute\022K\n\rfinding"
+ + "_class\030\020 \001(\01624.google.cloud.securitycent"
+ + "er.v2.Finding.FindingClass\022<\n\tindicator\030"
+ + "\021 \001(\0132).google.cloud.securitycenter.v2.I"
+ + "ndicator\022D\n\rvulnerability\030\022 \001(\0132-.google"
+ + ".cloud.securitycenter.v2.Vulnerability\0229"
+ + "\n\020mute_update_time\030\023 \001(\0132\032.google.protob"
+ + "uf.TimestampB\003\340A\003\022[\n\020external_systems\030\024 "
+ + "\003(\0132<.google.cloud.securitycenter.v2.Fin"
+ + "ding.ExternalSystemsEntryB\003\340A\003\022A\n\014mitre_"
+ + "attack\030\025 \001(\0132+.google.cloud.securitycent"
+ + "er.v2.MitreAttack\0226\n\006access\030\026 \001(\0132&.goog"
+ + "le.cloud.securitycenter.v2.Access\022?\n\013con"
+ + "nections\030\027 \003(\0132*.google.cloud.securityce"
+ + "nter.v2.Connection\022\026\n\016mute_initiator\030\030 \001"
+ + "(\t\022:\n\tprocesses\030\031 \003(\0132\'.google.cloud.sec"
+ + "uritycenter.v2.Process\022L\n\010contacts\030\032 \003(\013"
+ + "25.google.cloud.securitycenter.v2.Findin"
+ + "g.ContactsEntryB\003\340A\003\022?\n\013compliances\030\033 \003("
+ + "\0132*.google.cloud.securitycenter.v2.Compl"
+ + "iance\022 \n\023parent_display_name\030\035 \001(\tB\003\340A\003\022"
+ + "\023\n\013description\030\036 \001(\t\022B\n\014exfiltration\030\037 \001"
+ + "(\0132,.google.cloud.securitycenter.v2.Exfi"
+ + "ltration\022@\n\014iam_bindings\030 \003(\0132*.google."
+ + "cloud.securitycenter.v2.IamBinding\022\022\n\nne"
+ + "xt_steps\030! \001(\t\022\023\n\013module_name\030\" \001(\t\022=\n\nc"
+ + "ontainers\030# \003(\0132).google.cloud.securityc"
+ + "enter.v2.Container\022>\n\nkubernetes\030$ \001(\0132*"
+ + ".google.cloud.securitycenter.v2.Kubernet"
+ + "es\022:\n\010database\030% \001(\0132(.google.cloud.secu"
+ + "ritycenter.v2.Database\022G\n\017attack_exposur"
+ + "e\030& \001(\0132..google.cloud.securitycenter.v2"
+ + ".AttackExposure\0223\n\005files\030\' \003(\0132$.google."
+ + "cloud.securitycenter.v2.File\022P\n\024cloud_dl"
+ + "p_inspection\030( \001(\01322.google.cloud.securi"
+ + "tycenter.v2.CloudDlpInspection\022S\n\026cloud_"
+ + "dlp_data_profile\030) \001(\01323.google.cloud.se"
+ + "curitycenter.v2.CloudDlpDataProfile\022E\n\016k"
+ + "ernel_rootkit\030* \001(\0132-.google.cloud.secur"
+ + "itycenter.v2.KernelRootkit\022?\n\014org_polici"
+ + "es\030+ \003(\0132).google.cloud.securitycenter.v"
+ + "2.OrgPolicy\022@\n\013application\030- \001(\0132+.googl"
+ + "e.cloud.securitycenter.v2.Application\022X\n"
+ + "\030backup_disaster_recovery\030/ \001(\01326.google"
+ + ".cloud.securitycenter.v2.BackupDisasterR"
+ + "ecovery\022I\n\020security_posture\0300 \001(\0132/.goog"
+ + "le.cloud.securitycenter.v2.SecurityPostu"
+ + "re\022=\n\013log_entries\0301 \003(\0132(.google.cloud.s"
+ + "ecuritycenter.v2.LogEntry\022D\n\016load_balanc"
+ + "ers\0302 \003(\0132,.google.cloud.securitycenter."
+ + "v2.LoadBalancer\022?\n\013cloud_armor\0303 \001(\0132*.g"
+ + "oogle.cloud.securitycenter.v2.CloudArmor"
+ + "\022:\n\010notebook\0307 \001(\0132(.google.cloud.securi"
+ + "tycenter.v2.Notebook\022K\n\021toxic_combinatio"
+ + "n\0308 \001(\01320.google.cloud.securitycenter.v2"
+ + ".ToxicCombination\022J\n\021group_memberships\0309"
+ + " \003(\0132/.google.cloud.securitycenter.v2.Gr"
+ + "oupMembership\032O\n\025SourcePropertiesEntry\022\013"
+ + "\n\003key\030\001 \001(\t\022%\n\005value\030\002 \001(\0132\026.google.prot"
+ + "obuf.Value:\0028\001\032f\n\024ExternalSystemsEntry\022\013"
+ + "\n\003key\030\001 \001(\t\022=\n\005value\030\002 \001(\0132..google.clou"
+ + "d.securitycenter.v2.ExternalSystem:\0028\001\032_"
+ + "\n\rContactsEntry\022\013\n\003key\030\001 \001(\t\022=\n\005value\030\002 "
+ + "\001(\0132..google.cloud.securitycenter.v2.Con"
+ + "tactDetails:\0028\001\"8\n\005State\022\025\n\021STATE_UNSPEC"
+ + "IFIED\020\000\022\n\n\006ACTIVE\020\001\022\014\n\010INACTIVE\020\002\"Q\n\010Sev"
+ + "erity\022\030\n\024SEVERITY_UNSPECIFIED\020\000\022\014\n\010CRITI"
+ + "CAL\020\001\022\010\n\004HIGH\020\002\022\n\n\006MEDIUM\020\003\022\007\n\003LOW\020\004\"C\n\004"
+ + "Mute\022\024\n\020MUTE_UNSPECIFIED\020\000\022\t\n\005MUTED\020\001\022\013\n"
+ + "\007UNMUTED\020\002\022\r\n\tUNDEFINED\020\003\"\260\001\n\014FindingCla"
+ + "ss\022\035\n\031FINDING_CLASS_UNSPECIFIED\020\000\022\n\n\006THR"
+ + "EAT\020\001\022\021\n\rVULNERABILITY\020\002\022\024\n\020MISCONFIGURA"
+ + "TION\020\003\022\017\n\013OBSERVATION\020\004\022\r\n\tSCC_ERROR\020\005\022\025"
+ + "\n\021POSTURE_VIOLATION\020\006\022\025\n\021TOXIC_COMBINATI"
+ + "ON\020\007:\335\003\352A\331\003\n%securitycenter.googleapis.c"
+ + "om/Finding\022@organizations/{organization}"
+ + "/sources/{source}/findings/{finding}\022Uor"
+ + "ganizations/{organization}/sources/{sour"
+ "ce}/locations/{location}/findings/{findi"
- + "ng}*\010findings2\007findingB\346\001\n\"com.google.cl"
- + "oud.securitycenter.v2B\014FindingProtoP\001ZJc"
- + "loud.google.com/go/securitycenter/apiv2/"
- + "securitycenterpb;securitycenterpb\252\002\036Goog"
- + "le.Cloud.SecurityCenter.V2\312\002\036Google\\Clou"
- + "d\\SecurityCenter\\V2\352\002!Google::Cloud::Sec"
- + "urityCenter::V2b\006proto3"
+ + "ng}\0224folders/{folder}/sources/{source}/f"
+ + "indings/{finding}\022Ifolders/{folder}/sour"
+ + "ces/{source}/locations/{location}/findin"
+ + "gs/{finding}\0226projects/{project}/sources"
+ + "/{source}/findings/{finding}\022Kprojects/{"
+ + "project}/sources/{source}/locations/{loc"
+ + "ation}/findings/{finding}*\010findings2\007fin"
+ + "dingB\346\001\n\"com.google.cloud.securitycenter"
+ + ".v2B\014FindingProtoP\001ZJcloud.google.com/go"
+ + "/securitycenter/apiv2/securitycenterpb;s"
+ + "ecuritycenterpb\252\002\036Google.Cloud.SecurityC"
+ + "enter.V2\312\002\036Google\\Cloud\\SecurityCenter\\V"
+ + "2\352\002!Google::Cloud::SecurityCenter::V2b\006p"
+ + "roto3"
};
descriptor =
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
@@ -209,6 +215,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
com.google.cloud.securitycenter.v2.ApplicationProto.getDescriptor(),
com.google.cloud.securitycenter.v2.AttackExposureProto.getDescriptor(),
com.google.cloud.securitycenter.v2.BackupDisasterRecoveryProto.getDescriptor(),
+ com.google.cloud.securitycenter.v2.CloudArmorProto.getDescriptor(),
com.google.cloud.securitycenter.v2.CloudDlpDataProfileProto.getDescriptor(),
com.google.cloud.securitycenter.v2.CloudDlpInspectionProto.getDescriptor(),
com.google.cloud.securitycenter.v2.ComplianceProto.getDescriptor(),
@@ -227,6 +234,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
com.google.cloud.securitycenter.v2.LoadBalancerProto.getDescriptor(),
com.google.cloud.securitycenter.v2.LogEntryProto.getDescriptor(),
com.google.cloud.securitycenter.v2.MitreAttackProto.getDescriptor(),
+ com.google.cloud.securitycenter.v2.NotebookProto.getDescriptor(),
com.google.cloud.securitycenter.v2.OrgPolicyProto.getDescriptor(),
com.google.cloud.securitycenter.v2.ProcessProto.getDescriptor(),
com.google.cloud.securitycenter.v2.SecurityMarksProto.getDescriptor(),
@@ -287,6 +295,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"SecurityPosture",
"LogEntries",
"LoadBalancers",
+ "CloudArmor",
+ "Notebook",
"ToxicCombination",
"GroupMemberships",
});
@@ -326,6 +336,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
com.google.cloud.securitycenter.v2.ApplicationProto.getDescriptor();
com.google.cloud.securitycenter.v2.AttackExposureProto.getDescriptor();
com.google.cloud.securitycenter.v2.BackupDisasterRecoveryProto.getDescriptor();
+ com.google.cloud.securitycenter.v2.CloudArmorProto.getDescriptor();
com.google.cloud.securitycenter.v2.CloudDlpDataProfileProto.getDescriptor();
com.google.cloud.securitycenter.v2.CloudDlpInspectionProto.getDescriptor();
com.google.cloud.securitycenter.v2.ComplianceProto.getDescriptor();
@@ -344,6 +355,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
com.google.cloud.securitycenter.v2.LoadBalancerProto.getDescriptor();
com.google.cloud.securitycenter.v2.LogEntryProto.getDescriptor();
com.google.cloud.securitycenter.v2.MitreAttackProto.getDescriptor();
+ com.google.cloud.securitycenter.v2.NotebookProto.getDescriptor();
com.google.cloud.securitycenter.v2.OrgPolicyProto.getDescriptor();
com.google.cloud.securitycenter.v2.ProcessProto.getDescriptor();
com.google.cloud.securitycenter.v2.SecurityMarksProto.getDescriptor();
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/Folder.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/Folder.java
new file mode 100644
index 000000000000..146b0d6c9909
--- /dev/null
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/Folder.java
@@ -0,0 +1,816 @@
+/*
+ * 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/securitycenter/v2/folder.proto
+
+// Protobuf Java Version: 3.25.3
+package com.google.cloud.securitycenter.v2;
+
+/**
+ *
+ *
+ *
+ * Message that contains the resource name and display name of a folder
+ * resource.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.Folder}
+ */
+public final class Folder extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.Folder)
+ FolderOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Folder.newBuilder() to construct.
+ private Folder(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private Folder() {
+ resourceFolder_ = "";
+ resourceFolderDisplayName_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new Folder();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.FolderProto
+ .internal_static_google_cloud_securitycenter_v2_Folder_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.FolderProto
+ .internal_static_google_cloud_securitycenter_v2_Folder_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.Folder.class,
+ com.google.cloud.securitycenter.v2.Folder.Builder.class);
+ }
+
+ public static final int RESOURCE_FOLDER_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object resourceFolder_ = "";
+ /**
+ *
+ *
+ *
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @return The resourceFolder.
+ */
+ @java.lang.Override
+ public java.lang.String getResourceFolder() {
+ java.lang.Object ref = resourceFolder_;
+ 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();
+ resourceFolder_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @return The bytes for resourceFolder.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getResourceFolderBytes() {
+ java.lang.Object ref = resourceFolder_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ resourceFolder_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int RESOURCE_FOLDER_DISPLAY_NAME_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object resourceFolderDisplayName_ = "";
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @return The resourceFolderDisplayName.
+ */
+ @java.lang.Override
+ public java.lang.String getResourceFolderDisplayName() {
+ java.lang.Object ref = resourceFolderDisplayName_;
+ 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();
+ resourceFolderDisplayName_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @return The bytes for resourceFolderDisplayName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getResourceFolderDisplayNameBytes() {
+ java.lang.Object ref = resourceFolderDisplayName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ resourceFolderDisplayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resourceFolder_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, resourceFolder_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resourceFolderDisplayName_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, resourceFolderDisplayName_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resourceFolder_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, resourceFolder_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resourceFolderDisplayName_)) {
+ size +=
+ com.google.protobuf.GeneratedMessageV3.computeStringSize(2, resourceFolderDisplayName_);
+ }
+ 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.securitycenter.v2.Folder)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.Folder other =
+ (com.google.cloud.securitycenter.v2.Folder) obj;
+
+ if (!getResourceFolder().equals(other.getResourceFolder())) return false;
+ if (!getResourceFolderDisplayName().equals(other.getResourceFolderDisplayName())) 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) + RESOURCE_FOLDER_FIELD_NUMBER;
+ hash = (53 * hash) + getResourceFolder().hashCode();
+ hash = (37 * hash) + RESOURCE_FOLDER_DISPLAY_NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getResourceFolderDisplayName().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder 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.securitycenter.v2.Folder parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder 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.securitycenter.v2.Folder parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder 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.securitycenter.v2.Folder parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder 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.securitycenter.v2.Folder parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder 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.securitycenter.v2.Folder 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;
+ }
+ /**
+ *
+ *
+ *
+ * Message that contains the resource name and display name of a folder
+ * resource.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.Folder}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @return The resourceFolder.
+ */
+ public java.lang.String getResourceFolder() {
+ java.lang.Object ref = resourceFolder_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ resourceFolder_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @return The bytes for resourceFolder.
+ */
+ public com.google.protobuf.ByteString getResourceFolderBytes() {
+ java.lang.Object ref = resourceFolder_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ resourceFolder_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @param value The resourceFolder to set.
+ * @return This builder for chaining.
+ */
+ public Builder setResourceFolder(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ resourceFolder_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearResourceFolder() {
+ resourceFolder_ = getDefaultInstance().getResourceFolder();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @param value The bytes for resourceFolder to set.
+ * @return This builder for chaining.
+ */
+ public Builder setResourceFolderBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ resourceFolder_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object resourceFolderDisplayName_ = "";
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @return The resourceFolderDisplayName.
+ */
+ public java.lang.String getResourceFolderDisplayName() {
+ java.lang.Object ref = resourceFolderDisplayName_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ resourceFolderDisplayName_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @return The bytes for resourceFolderDisplayName.
+ */
+ public com.google.protobuf.ByteString getResourceFolderDisplayNameBytes() {
+ java.lang.Object ref = resourceFolderDisplayName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ resourceFolderDisplayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @param value The resourceFolderDisplayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setResourceFolderDisplayName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ resourceFolderDisplayName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearResourceFolderDisplayName() {
+ resourceFolderDisplayName_ = getDefaultInstance().getResourceFolderDisplayName();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @param value The bytes for resourceFolderDisplayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setResourceFolderDisplayNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ resourceFolderDisplayName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.cloud.securitycenter.v2.Folder)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.Folder)
+ private static final com.google.cloud.securitycenter.v2.Folder DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.Folder();
+ }
+
+ public static com.google.cloud.securitycenter.v2.Folder getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @return The resourceFolder.
+ */
+ java.lang.String getResourceFolder();
+ /**
+ *
+ *
+ *
+ * Full resource name of this folder. See:
+ * https://cloud.google.com/apis/design/resource_names#full_resource_name
+ *
+ *
+ * string resource_folder = 1;
+ *
+ * @return The bytes for resourceFolder.
+ */
+ com.google.protobuf.ByteString getResourceFolderBytes();
+
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @return The resourceFolderDisplayName.
+ */
+ java.lang.String getResourceFolderDisplayName();
+ /**
+ *
+ *
+ *
+ * The user defined display name for this folder.
+ *
+ *
+ * string resource_folder_display_name = 2;
+ *
+ * @return The bytes for resourceFolderDisplayName.
+ */
+ com.google.protobuf.ByteString getResourceFolderDisplayNameBytes();
+}
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/FolderProto.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/FolderProto.java
new file mode 100644
index 000000000000..588209d89302
--- /dev/null
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/FolderProto.java
@@ -0,0 +1,69 @@
+/*
+ * 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/securitycenter/v2/folder.proto
+
+// Protobuf Java Version: 3.25.3
+package com.google.cloud.securitycenter.v2;
+
+public final class FolderProto {
+ private FolderProto() {}
+
+ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {}
+
+ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) {
+ registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry);
+ }
+
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_securitycenter_v2_Folder_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_securitycenter_v2_Folder_fieldAccessorTable;
+
+ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ return descriptor;
+ }
+
+ private static com.google.protobuf.Descriptors.FileDescriptor descriptor;
+
+ static {
+ java.lang.String[] descriptorData = {
+ "\n+google/cloud/securitycenter/v2/folder."
+ + "proto\022\036google.cloud.securitycenter.v2\"G\n"
+ + "\006Folder\022\027\n\017resource_folder\030\001 \001(\t\022$\n\034reso"
+ + "urce_folder_display_name\030\002 \001(\tB\345\001\n\"com.g"
+ + "oogle.cloud.securitycenter.v2B\013FolderPro"
+ + "toP\001ZJcloud.google.com/go/securitycenter"
+ + "/apiv2/securitycenterpb;securitycenterpb"
+ + "\252\002\036Google.Cloud.SecurityCenter.V2\312\002\036Goog"
+ + "le\\Cloud\\SecurityCenter\\V2\352\002!Google::Clo"
+ + "ud::SecurityCenter::V2b\006proto3"
+ };
+ descriptor =
+ com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
+ descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] {});
+ internal_static_google_cloud_securitycenter_v2_Folder_descriptor =
+ getDescriptor().getMessageTypes().get(0);
+ internal_static_google_cloud_securitycenter_v2_Folder_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_securitycenter_v2_Folder_descriptor,
+ new java.lang.String[] {
+ "ResourceFolder", "ResourceFolderDisplayName",
+ });
+ }
+
+ // @@protoc_insertion_point(outer_class_scope)
+}
diff --git a/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/GcpMetadata.java b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/GcpMetadata.java
new file mode 100644
index 000000000000..ed1424610e38
--- /dev/null
+++ b/java-securitycenter/proto-google-cloud-securitycenter-v2/src/main/java/com/google/cloud/securitycenter/v2/GcpMetadata.java
@@ -0,0 +1,1938 @@
+/*
+ * 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/securitycenter/v2/resource.proto
+
+// Protobuf Java Version: 3.25.3
+package com.google.cloud.securitycenter.v2;
+
+/**
+ *
+ *
+ *
+ * GCP metadata associated with the resource, only applicable if the finding's
+ * cloud provider is Google Cloud Platform.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.GcpMetadata}
+ */
+public final class GcpMetadata extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.securitycenter.v2.GcpMetadata)
+ GcpMetadataOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use GcpMetadata.newBuilder() to construct.
+ private GcpMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private GcpMetadata() {
+ project_ = "";
+ projectDisplayName_ = "";
+ parent_ = "";
+ parentDisplayName_ = "";
+ folders_ = java.util.Collections.emptyList();
+ organization_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new GcpMetadata();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_GcpMetadata_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.securitycenter.v2.ResourceProto
+ .internal_static_google_cloud_securitycenter_v2_GcpMetadata_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.securitycenter.v2.GcpMetadata.class,
+ com.google.cloud.securitycenter.v2.GcpMetadata.Builder.class);
+ }
+
+ public static final int PROJECT_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object project_ = "";
+ /**
+ *
+ *
+ *
+ * The full resource name of project that the resource belongs to.
+ *
+ *
+ * string project = 1;
+ *
+ * @return The project.
+ */
+ @java.lang.Override
+ public java.lang.String getProject() {
+ java.lang.Object ref = project_;
+ 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();
+ project_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of project that the resource belongs to.
+ *
+ *
+ * string project = 1;
+ *
+ * @return The bytes for project.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getProjectBytes() {
+ java.lang.Object ref = project_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ project_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int PROJECT_DISPLAY_NAME_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object projectDisplayName_ = "";
+ /**
+ *
+ *
+ *
+ * The project ID that the resource belongs to.
+ *
+ *
+ * string project_display_name = 2;
+ *
+ * @return The projectDisplayName.
+ */
+ @java.lang.Override
+ public java.lang.String getProjectDisplayName() {
+ java.lang.Object ref = projectDisplayName_;
+ 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();
+ projectDisplayName_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The project ID that the resource belongs to.
+ *
+ *
+ * string project_display_name = 2;
+ *
+ * @return The bytes for projectDisplayName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getProjectDisplayNameBytes() {
+ java.lang.Object ref = projectDisplayName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ projectDisplayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int PARENT_FIELD_NUMBER = 3;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object parent_ = "";
+ /**
+ *
+ *
+ *
+ * The full resource name of resource's parent.
+ *
+ *
+ * string parent = 3;
+ *
+ * @return The parent.
+ */
+ @java.lang.Override
+ public java.lang.String getParent() {
+ java.lang.Object ref = parent_;
+ 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();
+ parent_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of resource's parent.
+ *
+ *
+ * string parent = 3;
+ *
+ * @return The bytes for parent.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getParentBytes() {
+ java.lang.Object ref = parent_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parent_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int PARENT_DISPLAY_NAME_FIELD_NUMBER = 4;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object parentDisplayName_ = "";
+ /**
+ *
+ *
+ *
+ * The human readable name of resource's parent.
+ *
+ *
+ * string parent_display_name = 4;
+ *
+ * @return The parentDisplayName.
+ */
+ @java.lang.Override
+ public java.lang.String getParentDisplayName() {
+ java.lang.Object ref = parentDisplayName_;
+ 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();
+ parentDisplayName_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The human readable name of resource's parent.
+ *
+ *
+ * string parent_display_name = 4;
+ *
+ * @return The bytes for parentDisplayName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getParentDisplayNameBytes() {
+ java.lang.Object ref = parentDisplayName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parentDisplayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int FOLDERS_FIELD_NUMBER = 5;
+
+ @SuppressWarnings("serial")
+ private java.util.List
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ @java.lang.Override
+ public java.util.List
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ @java.lang.Override
+ public java.util.List extends com.google.cloud.securitycenter.v2.FolderOrBuilder>
+ getFoldersOrBuilderList() {
+ return folders_;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ @java.lang.Override
+ public int getFoldersCount() {
+ return folders_.size();
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.Folder getFolders(int index) {
+ return folders_.get(index);
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.securitycenter.v2.FolderOrBuilder getFoldersOrBuilder(int index) {
+ return folders_.get(index);
+ }
+
+ public static final int ORGANIZATION_FIELD_NUMBER = 6;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object organization_ = "";
+ /**
+ *
+ *
+ *
+ * The name of the organization that the resource belongs to.
+ *
+ *
+ * string organization = 6;
+ *
+ * @return The organization.
+ */
+ @java.lang.Override
+ public java.lang.String getOrganization() {
+ java.lang.Object ref = organization_;
+ 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();
+ organization_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The name of the organization that the resource belongs to.
+ *
+ *
+ * string organization = 6;
+ *
+ * @return The bytes for organization.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getOrganizationBytes() {
+ java.lang.Object ref = organization_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ organization_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(project_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, project_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectDisplayName_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, projectDisplayName_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, parent_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parentDisplayName_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 4, parentDisplayName_);
+ }
+ for (int i = 0; i < folders_.size(); i++) {
+ output.writeMessage(5, folders_.get(i));
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(organization_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 6, organization_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(project_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, project_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectDisplayName_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, projectDisplayName_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, parent_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parentDisplayName_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, parentDisplayName_);
+ }
+ for (int i = 0; i < folders_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, folders_.get(i));
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(organization_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, organization_);
+ }
+ 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.securitycenter.v2.GcpMetadata)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.securitycenter.v2.GcpMetadata other =
+ (com.google.cloud.securitycenter.v2.GcpMetadata) obj;
+
+ if (!getProject().equals(other.getProject())) return false;
+ if (!getProjectDisplayName().equals(other.getProjectDisplayName())) return false;
+ if (!getParent().equals(other.getParent())) return false;
+ if (!getParentDisplayName().equals(other.getParentDisplayName())) return false;
+ if (!getFoldersList().equals(other.getFoldersList())) return false;
+ if (!getOrganization().equals(other.getOrganization())) 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) + PROJECT_FIELD_NUMBER;
+ hash = (53 * hash) + getProject().hashCode();
+ hash = (37 * hash) + PROJECT_DISPLAY_NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getProjectDisplayName().hashCode();
+ hash = (37 * hash) + PARENT_FIELD_NUMBER;
+ hash = (53 * hash) + getParent().hashCode();
+ hash = (37 * hash) + PARENT_DISPLAY_NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getParentDisplayName().hashCode();
+ if (getFoldersCount() > 0) {
+ hash = (37 * hash) + FOLDERS_FIELD_NUMBER;
+ hash = (53 * hash) + getFoldersList().hashCode();
+ }
+ hash = (37 * hash) + ORGANIZATION_FIELD_NUMBER;
+ hash = (53 * hash) + getOrganization().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata 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.securitycenter.v2.GcpMetadata parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata 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.securitycenter.v2.GcpMetadata parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata 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.securitycenter.v2.GcpMetadata parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata 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.securitycenter.v2.GcpMetadata parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata 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.securitycenter.v2.GcpMetadata 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;
+ }
+ /**
+ *
+ *
+ *
+ * GCP metadata associated with the resource, only applicable if the finding's
+ * cloud provider is Google Cloud Platform.
+ *
+ *
+ * Protobuf type {@code google.cloud.securitycenter.v2.GcpMetadata}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder
+ * The full resource name of project that the resource belongs to.
+ *
+ *
+ * string project = 1;
+ *
+ * @return The project.
+ */
+ public java.lang.String getProject() {
+ java.lang.Object ref = project_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ project_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of project that the resource belongs to.
+ *
+ *
+ * string project = 1;
+ *
+ * @return The bytes for project.
+ */
+ public com.google.protobuf.ByteString getProjectBytes() {
+ java.lang.Object ref = project_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ project_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of project that the resource belongs to.
+ *
+ *
+ * string project = 1;
+ *
+ * @param value The project to set.
+ * @return This builder for chaining.
+ */
+ public Builder setProject(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ project_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of project that the resource belongs to.
+ *
+ *
+ * string project = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearProject() {
+ project_ = getDefaultInstance().getProject();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of project that the resource belongs to.
+ *
+ *
+ * string project = 1;
+ *
+ * @param value The bytes for project to set.
+ * @return This builder for chaining.
+ */
+ public Builder setProjectBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ project_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object projectDisplayName_ = "";
+ /**
+ *
+ *
+ *
+ * The project ID that the resource belongs to.
+ *
+ *
+ * string project_display_name = 2;
+ *
+ * @return The projectDisplayName.
+ */
+ public java.lang.String getProjectDisplayName() {
+ java.lang.Object ref = projectDisplayName_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ projectDisplayName_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The project ID that the resource belongs to.
+ *
+ *
+ * string project_display_name = 2;
+ *
+ * @return The bytes for projectDisplayName.
+ */
+ public com.google.protobuf.ByteString getProjectDisplayNameBytes() {
+ java.lang.Object ref = projectDisplayName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ projectDisplayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The project ID that the resource belongs to.
+ *
+ *
+ * string project_display_name = 2;
+ *
+ * @param value The projectDisplayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setProjectDisplayName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ projectDisplayName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The project ID that the resource belongs to.
+ *
+ *
+ * string project_display_name = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearProjectDisplayName() {
+ projectDisplayName_ = getDefaultInstance().getProjectDisplayName();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The project ID that the resource belongs to.
+ *
+ *
+ * string project_display_name = 2;
+ *
+ * @param value The bytes for projectDisplayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setProjectDisplayNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ projectDisplayName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object parent_ = "";
+ /**
+ *
+ *
+ *
+ * The full resource name of resource's parent.
+ *
+ *
+ * string parent = 3;
+ *
+ * @return The parent.
+ */
+ public java.lang.String getParent() {
+ java.lang.Object ref = parent_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parent_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of resource's parent.
+ *
+ *
+ * string parent = 3;
+ *
+ * @return The bytes for parent.
+ */
+ public com.google.protobuf.ByteString getParentBytes() {
+ java.lang.Object ref = parent_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parent_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of resource's parent.
+ *
+ *
+ * string parent = 3;
+ *
+ * @param value The parent to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParent(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ parent_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of resource's parent.
+ *
+ *
+ * string parent = 3;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearParent() {
+ parent_ = getDefaultInstance().getParent();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The full resource name of resource's parent.
+ *
+ *
+ * string parent = 3;
+ *
+ * @param value The bytes for parent to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParentBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ parent_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object parentDisplayName_ = "";
+ /**
+ *
+ *
+ *
+ * The human readable name of resource's parent.
+ *
+ *
+ * string parent_display_name = 4;
+ *
+ * @return The parentDisplayName.
+ */
+ public java.lang.String getParentDisplayName() {
+ java.lang.Object ref = parentDisplayName_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parentDisplayName_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The human readable name of resource's parent.
+ *
+ *
+ * string parent_display_name = 4;
+ *
+ * @return The bytes for parentDisplayName.
+ */
+ public com.google.protobuf.ByteString getParentDisplayNameBytes() {
+ java.lang.Object ref = parentDisplayName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parentDisplayName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The human readable name of resource's parent.
+ *
+ *
+ * string parent_display_name = 4;
+ *
+ * @param value The parentDisplayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParentDisplayName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ parentDisplayName_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The human readable name of resource's parent.
+ *
+ *
+ * string parent_display_name = 4;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearParentDisplayName() {
+ parentDisplayName_ = getDefaultInstance().getParentDisplayName();
+ bitField0_ = (bitField0_ & ~0x00000008);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The human readable name of resource's parent.
+ *
+ *
+ * string parent_display_name = 4;
+ *
+ * @param value The bytes for parentDisplayName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParentDisplayNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ parentDisplayName_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+
+ private java.util.List
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public java.util.List
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public int getFoldersCount() {
+ if (foldersBuilder_ == null) {
+ return folders_.size();
+ } else {
+ return foldersBuilder_.getCount();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public com.google.cloud.securitycenter.v2.Folder getFolders(int index) {
+ if (foldersBuilder_ == null) {
+ return folders_.get(index);
+ } else {
+ return foldersBuilder_.getMessage(index);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder setFolders(int index, com.google.cloud.securitycenter.v2.Folder value) {
+ if (foldersBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureFoldersIsMutable();
+ folders_.set(index, value);
+ onChanged();
+ } else {
+ foldersBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder setFolders(
+ int index, com.google.cloud.securitycenter.v2.Folder.Builder builderForValue) {
+ if (foldersBuilder_ == null) {
+ ensureFoldersIsMutable();
+ folders_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ foldersBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder addFolders(com.google.cloud.securitycenter.v2.Folder value) {
+ if (foldersBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureFoldersIsMutable();
+ folders_.add(value);
+ onChanged();
+ } else {
+ foldersBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder addFolders(int index, com.google.cloud.securitycenter.v2.Folder value) {
+ if (foldersBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureFoldersIsMutable();
+ folders_.add(index, value);
+ onChanged();
+ } else {
+ foldersBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder addFolders(com.google.cloud.securitycenter.v2.Folder.Builder builderForValue) {
+ if (foldersBuilder_ == null) {
+ ensureFoldersIsMutable();
+ folders_.add(builderForValue.build());
+ onChanged();
+ } else {
+ foldersBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder addFolders(
+ int index, com.google.cloud.securitycenter.v2.Folder.Builder builderForValue) {
+ if (foldersBuilder_ == null) {
+ ensureFoldersIsMutable();
+ folders_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ foldersBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder addAllFolders(
+ java.lang.Iterable extends com.google.cloud.securitycenter.v2.Folder> values) {
+ if (foldersBuilder_ == null) {
+ ensureFoldersIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, folders_);
+ onChanged();
+ } else {
+ foldersBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder clearFolders() {
+ if (foldersBuilder_ == null) {
+ folders_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000010);
+ onChanged();
+ } else {
+ foldersBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public Builder removeFolders(int index) {
+ if (foldersBuilder_ == null) {
+ ensureFoldersIsMutable();
+ folders_.remove(index);
+ onChanged();
+ } else {
+ foldersBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public com.google.cloud.securitycenter.v2.Folder.Builder getFoldersBuilder(int index) {
+ return getFoldersFieldBuilder().getBuilder(index);
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public com.google.cloud.securitycenter.v2.FolderOrBuilder getFoldersOrBuilder(int index) {
+ if (foldersBuilder_ == null) {
+ return folders_.get(index);
+ } else {
+ return foldersBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public java.util.List extends com.google.cloud.securitycenter.v2.FolderOrBuilder>
+ getFoldersOrBuilderList() {
+ if (foldersBuilder_ != null) {
+ return foldersBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(folders_);
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public com.google.cloud.securitycenter.v2.Folder.Builder addFoldersBuilder() {
+ return getFoldersFieldBuilder()
+ .addBuilder(com.google.cloud.securitycenter.v2.Folder.getDefaultInstance());
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public com.google.cloud.securitycenter.v2.Folder.Builder addFoldersBuilder(int index) {
+ return getFoldersFieldBuilder()
+ .addBuilder(index, com.google.cloud.securitycenter.v2.Folder.getDefaultInstance());
+ }
+ /**
+ *
+ *
+ *
+ * Output only. Contains a Folder message for each folder in the assets
+ * ancestry. The first folder is the deepest nested folder, and the last
+ * folder is the folder directly under the Organization.
+ *
+ *
+ *
+ * repeated .google.cloud.securitycenter.v2.Folder folders = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ *
+ */
+ public java.util.List
+ * The name of the organization that the resource belongs to.
+ *
+ *
+ * string organization = 6;
+ *
+ * @return The organization.
+ */
+ public java.lang.String getOrganization() {
+ java.lang.Object ref = organization_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ organization_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The name of the organization that the resource belongs to.
+ *
+ *
+ * string organization = 6;
+ *
+ * @return The bytes for organization.
+ */
+ public com.google.protobuf.ByteString getOrganizationBytes() {
+ java.lang.Object ref = organization_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ organization_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The name of the organization that the resource belongs to.
+ *
+ *
+ * string organization = 6;
+ *
+ * @param value The organization to set.
+ * @return This builder for chaining.
+ */
+ public Builder setOrganization(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ organization_ = value;
+ bitField0_ |= 0x00000020;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The name of the organization that the resource belongs to.
+ *
+ *
+ * string organization = 6;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearOrganization() {
+ organization_ = getDefaultInstance().getOrganization();
+ bitField0_ = (bitField0_ & ~0x00000020);
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The name of the organization that the resource belongs to.
+ *
+ *
+ * string organization = 6;
+ *
+ * @param value The bytes for organization to set.
+ * @return This builder for chaining.
+ */
+ public Builder setOrganizationBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ organization_ = value;
+ bitField0_ |= 0x00000020;
+ 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.securitycenter.v2.GcpMetadata)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.securitycenter.v2.GcpMetadata)
+ private static final com.google.cloud.securitycenter.v2.GcpMetadata DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.securitycenter.v2.GcpMetadata();
+ }
+
+ public static com.google.cloud.securitycenter.v2.GcpMetadata getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser