1 /* 2 * Copyright 2020 Google LLC 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * https://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 // Generated by the protocol buffer compiler. DO NOT EDIT! 17 // source: google/cloud/recommender/v1/recommendation.proto 18 19 package com.google.cloud.recommender.v1; 20 21 /** 22 * 23 * 24 * <pre> 25 * Contains an operation for a resource loosely based on the JSON-PATCH format 26 * with support for: 27 * * Custom filters for describing partial array patch. 28 * * Extended path values for describing nested arrays. 29 * * Custom fields for describing the resource for which the operation is being 30 * described. 31 * * Allows extension to custom operations not natively supported by RFC6902. 32 * See https://tools.ietf.org/html/rfc6902 for details on the original RFC. 33 * </pre> 34 * 35 * Protobuf type {@code google.cloud.recommender.v1.Operation} 36 */ 37 public final class Operation extends com.google.protobuf.GeneratedMessageV3 38 implements 39 // @@protoc_insertion_point(message_implements:google.cloud.recommender.v1.Operation) 40 OperationOrBuilder { 41 private static final long serialVersionUID = 0L; 42 // Use Operation.newBuilder() to construct. Operation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)43 private Operation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { 44 super(builder); 45 } 46 Operation()47 private Operation() { 48 action_ = ""; 49 resourceType_ = ""; 50 resource_ = ""; 51 path_ = ""; 52 sourceResource_ = ""; 53 sourcePath_ = ""; 54 } 55 56 @java.lang.Override 57 @SuppressWarnings({"unused"}) newInstance(UnusedPrivateParameter unused)58 protected java.lang.Object newInstance(UnusedPrivateParameter unused) { 59 return new Operation(); 60 } 61 62 @java.lang.Override getUnknownFields()63 public final com.google.protobuf.UnknownFieldSet getUnknownFields() { 64 return this.unknownFields; 65 } 66 getDescriptor()67 public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { 68 return com.google.cloud.recommender.v1.RecommendationOuterClass 69 .internal_static_google_cloud_recommender_v1_Operation_descriptor; 70 } 71 72 @SuppressWarnings({"rawtypes"}) 73 @java.lang.Override internalGetMapField(int number)74 protected com.google.protobuf.MapField internalGetMapField(int number) { 75 switch (number) { 76 case 8: 77 return internalGetPathFilters(); 78 case 11: 79 return internalGetPathValueMatchers(); 80 default: 81 throw new RuntimeException("Invalid map field number: " + number); 82 } 83 } 84 85 @java.lang.Override 86 protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()87 internalGetFieldAccessorTable() { 88 return com.google.cloud.recommender.v1.RecommendationOuterClass 89 .internal_static_google_cloud_recommender_v1_Operation_fieldAccessorTable 90 .ensureFieldAccessorsInitialized( 91 com.google.cloud.recommender.v1.Operation.class, 92 com.google.cloud.recommender.v1.Operation.Builder.class); 93 } 94 95 private int pathValueCase_ = 0; 96 private java.lang.Object pathValue_; 97 98 public enum PathValueCase 99 implements 100 com.google.protobuf.Internal.EnumLite, 101 com.google.protobuf.AbstractMessage.InternalOneOfEnum { 102 VALUE(7), 103 VALUE_MATCHER(10), 104 PATHVALUE_NOT_SET(0); 105 private final int value; 106 PathValueCase(int value)107 private PathValueCase(int value) { 108 this.value = value; 109 } 110 /** 111 * @param value The number of the enum to look for. 112 * @return The enum associated with the given number. 113 * @deprecated Use {@link #forNumber(int)} instead. 114 */ 115 @java.lang.Deprecated valueOf(int value)116 public static PathValueCase valueOf(int value) { 117 return forNumber(value); 118 } 119 forNumber(int value)120 public static PathValueCase forNumber(int value) { 121 switch (value) { 122 case 7: 123 return VALUE; 124 case 10: 125 return VALUE_MATCHER; 126 case 0: 127 return PATHVALUE_NOT_SET; 128 default: 129 return null; 130 } 131 } 132 getNumber()133 public int getNumber() { 134 return this.value; 135 } 136 }; 137 getPathValueCase()138 public PathValueCase getPathValueCase() { 139 return PathValueCase.forNumber(pathValueCase_); 140 } 141 142 public static final int ACTION_FIELD_NUMBER = 1; 143 144 @SuppressWarnings("serial") 145 private volatile java.lang.Object action_ = ""; 146 /** 147 * 148 * 149 * <pre> 150 * Type of this operation. Contains one of 'add', 'remove', 'replace', 'move', 151 * 'copy', 'test' and custom operations. This field is case-insensitive and 152 * always populated. 153 * </pre> 154 * 155 * <code>string action = 1;</code> 156 * 157 * @return The action. 158 */ 159 @java.lang.Override getAction()160 public java.lang.String getAction() { 161 java.lang.Object ref = action_; 162 if (ref instanceof java.lang.String) { 163 return (java.lang.String) ref; 164 } else { 165 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 166 java.lang.String s = bs.toStringUtf8(); 167 action_ = s; 168 return s; 169 } 170 } 171 /** 172 * 173 * 174 * <pre> 175 * Type of this operation. Contains one of 'add', 'remove', 'replace', 'move', 176 * 'copy', 'test' and custom operations. This field is case-insensitive and 177 * always populated. 178 * </pre> 179 * 180 * <code>string action = 1;</code> 181 * 182 * @return The bytes for action. 183 */ 184 @java.lang.Override getActionBytes()185 public com.google.protobuf.ByteString getActionBytes() { 186 java.lang.Object ref = action_; 187 if (ref instanceof java.lang.String) { 188 com.google.protobuf.ByteString b = 189 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 190 action_ = b; 191 return b; 192 } else { 193 return (com.google.protobuf.ByteString) ref; 194 } 195 } 196 197 public static final int RESOURCE_TYPE_FIELD_NUMBER = 2; 198 199 @SuppressWarnings("serial") 200 private volatile java.lang.Object resourceType_ = ""; 201 /** 202 * 203 * 204 * <pre> 205 * Type of GCP resource being modified/tested. This field is always populated. 206 * Example: cloudresourcemanager.googleapis.com/Project, 207 * compute.googleapis.com/Instance 208 * </pre> 209 * 210 * <code>string resource_type = 2;</code> 211 * 212 * @return The resourceType. 213 */ 214 @java.lang.Override getResourceType()215 public java.lang.String getResourceType() { 216 java.lang.Object ref = resourceType_; 217 if (ref instanceof java.lang.String) { 218 return (java.lang.String) ref; 219 } else { 220 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 221 java.lang.String s = bs.toStringUtf8(); 222 resourceType_ = s; 223 return s; 224 } 225 } 226 /** 227 * 228 * 229 * <pre> 230 * Type of GCP resource being modified/tested. This field is always populated. 231 * Example: cloudresourcemanager.googleapis.com/Project, 232 * compute.googleapis.com/Instance 233 * </pre> 234 * 235 * <code>string resource_type = 2;</code> 236 * 237 * @return The bytes for resourceType. 238 */ 239 @java.lang.Override getResourceTypeBytes()240 public com.google.protobuf.ByteString getResourceTypeBytes() { 241 java.lang.Object ref = resourceType_; 242 if (ref instanceof java.lang.String) { 243 com.google.protobuf.ByteString b = 244 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 245 resourceType_ = b; 246 return b; 247 } else { 248 return (com.google.protobuf.ByteString) ref; 249 } 250 } 251 252 public static final int RESOURCE_FIELD_NUMBER = 3; 253 254 @SuppressWarnings("serial") 255 private volatile java.lang.Object resource_ = ""; 256 /** 257 * 258 * 259 * <pre> 260 * Contains the fully qualified resource name. This field is always populated. 261 * ex: //cloudresourcemanager.googleapis.com/projects/foo. 262 * </pre> 263 * 264 * <code>string resource = 3;</code> 265 * 266 * @return The resource. 267 */ 268 @java.lang.Override getResource()269 public java.lang.String getResource() { 270 java.lang.Object ref = resource_; 271 if (ref instanceof java.lang.String) { 272 return (java.lang.String) ref; 273 } else { 274 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 275 java.lang.String s = bs.toStringUtf8(); 276 resource_ = s; 277 return s; 278 } 279 } 280 /** 281 * 282 * 283 * <pre> 284 * Contains the fully qualified resource name. This field is always populated. 285 * ex: //cloudresourcemanager.googleapis.com/projects/foo. 286 * </pre> 287 * 288 * <code>string resource = 3;</code> 289 * 290 * @return The bytes for resource. 291 */ 292 @java.lang.Override getResourceBytes()293 public com.google.protobuf.ByteString getResourceBytes() { 294 java.lang.Object ref = resource_; 295 if (ref instanceof java.lang.String) { 296 com.google.protobuf.ByteString b = 297 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 298 resource_ = b; 299 return b; 300 } else { 301 return (com.google.protobuf.ByteString) ref; 302 } 303 } 304 305 public static final int PATH_FIELD_NUMBER = 4; 306 307 @SuppressWarnings("serial") 308 private volatile java.lang.Object path_ = ""; 309 /** 310 * 311 * 312 * <pre> 313 * Path to the target field being operated on. If the operation is at the 314 * resource level, then path should be "/". This field is always populated. 315 * </pre> 316 * 317 * <code>string path = 4;</code> 318 * 319 * @return The path. 320 */ 321 @java.lang.Override getPath()322 public java.lang.String getPath() { 323 java.lang.Object ref = path_; 324 if (ref instanceof java.lang.String) { 325 return (java.lang.String) ref; 326 } else { 327 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 328 java.lang.String s = bs.toStringUtf8(); 329 path_ = s; 330 return s; 331 } 332 } 333 /** 334 * 335 * 336 * <pre> 337 * Path to the target field being operated on. If the operation is at the 338 * resource level, then path should be "/". This field is always populated. 339 * </pre> 340 * 341 * <code>string path = 4;</code> 342 * 343 * @return The bytes for path. 344 */ 345 @java.lang.Override getPathBytes()346 public com.google.protobuf.ByteString getPathBytes() { 347 java.lang.Object ref = path_; 348 if (ref instanceof java.lang.String) { 349 com.google.protobuf.ByteString b = 350 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 351 path_ = b; 352 return b; 353 } else { 354 return (com.google.protobuf.ByteString) ref; 355 } 356 } 357 358 public static final int SOURCE_RESOURCE_FIELD_NUMBER = 5; 359 360 @SuppressWarnings("serial") 361 private volatile java.lang.Object sourceResource_ = ""; 362 /** 363 * 364 * 365 * <pre> 366 * Can be set with action 'copy' to copy resource configuration across 367 * different resources of the same type. Example: A resource clone can be 368 * done via action = 'copy', path = "/", from = "/", 369 * source_resource = <source> and resource_name = <target>. 370 * This field is empty for all other values of `action`. 371 * </pre> 372 * 373 * <code>string source_resource = 5;</code> 374 * 375 * @return The sourceResource. 376 */ 377 @java.lang.Override getSourceResource()378 public java.lang.String getSourceResource() { 379 java.lang.Object ref = sourceResource_; 380 if (ref instanceof java.lang.String) { 381 return (java.lang.String) ref; 382 } else { 383 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 384 java.lang.String s = bs.toStringUtf8(); 385 sourceResource_ = s; 386 return s; 387 } 388 } 389 /** 390 * 391 * 392 * <pre> 393 * Can be set with action 'copy' to copy resource configuration across 394 * different resources of the same type. Example: A resource clone can be 395 * done via action = 'copy', path = "/", from = "/", 396 * source_resource = <source> and resource_name = <target>. 397 * This field is empty for all other values of `action`. 398 * </pre> 399 * 400 * <code>string source_resource = 5;</code> 401 * 402 * @return The bytes for sourceResource. 403 */ 404 @java.lang.Override getSourceResourceBytes()405 public com.google.protobuf.ByteString getSourceResourceBytes() { 406 java.lang.Object ref = sourceResource_; 407 if (ref instanceof java.lang.String) { 408 com.google.protobuf.ByteString b = 409 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 410 sourceResource_ = b; 411 return b; 412 } else { 413 return (com.google.protobuf.ByteString) ref; 414 } 415 } 416 417 public static final int SOURCE_PATH_FIELD_NUMBER = 6; 418 419 @SuppressWarnings("serial") 420 private volatile java.lang.Object sourcePath_ = ""; 421 /** 422 * 423 * 424 * <pre> 425 * Can be set with action 'copy' or 'move' to indicate the source field within 426 * resource or source_resource, ignored if provided for other operation types. 427 * </pre> 428 * 429 * <code>string source_path = 6;</code> 430 * 431 * @return The sourcePath. 432 */ 433 @java.lang.Override getSourcePath()434 public java.lang.String getSourcePath() { 435 java.lang.Object ref = sourcePath_; 436 if (ref instanceof java.lang.String) { 437 return (java.lang.String) ref; 438 } else { 439 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 440 java.lang.String s = bs.toStringUtf8(); 441 sourcePath_ = s; 442 return s; 443 } 444 } 445 /** 446 * 447 * 448 * <pre> 449 * Can be set with action 'copy' or 'move' to indicate the source field within 450 * resource or source_resource, ignored if provided for other operation types. 451 * </pre> 452 * 453 * <code>string source_path = 6;</code> 454 * 455 * @return The bytes for sourcePath. 456 */ 457 @java.lang.Override getSourcePathBytes()458 public com.google.protobuf.ByteString getSourcePathBytes() { 459 java.lang.Object ref = sourcePath_; 460 if (ref instanceof java.lang.String) { 461 com.google.protobuf.ByteString b = 462 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 463 sourcePath_ = b; 464 return b; 465 } else { 466 return (com.google.protobuf.ByteString) ref; 467 } 468 } 469 470 public static final int VALUE_FIELD_NUMBER = 7; 471 /** 472 * 473 * 474 * <pre> 475 * Value for the `path` field. Will be set for actions:'add'/'replace'. 476 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 477 * for 'test' operation. An exact match must be performed. 478 * </pre> 479 * 480 * <code>.google.protobuf.Value value = 7;</code> 481 * 482 * @return Whether the value field is set. 483 */ 484 @java.lang.Override hasValue()485 public boolean hasValue() { 486 return pathValueCase_ == 7; 487 } 488 /** 489 * 490 * 491 * <pre> 492 * Value for the `path` field. Will be set for actions:'add'/'replace'. 493 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 494 * for 'test' operation. An exact match must be performed. 495 * </pre> 496 * 497 * <code>.google.protobuf.Value value = 7;</code> 498 * 499 * @return The value. 500 */ 501 @java.lang.Override getValue()502 public com.google.protobuf.Value getValue() { 503 if (pathValueCase_ == 7) { 504 return (com.google.protobuf.Value) pathValue_; 505 } 506 return com.google.protobuf.Value.getDefaultInstance(); 507 } 508 /** 509 * 510 * 511 * <pre> 512 * Value for the `path` field. Will be set for actions:'add'/'replace'. 513 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 514 * for 'test' operation. An exact match must be performed. 515 * </pre> 516 * 517 * <code>.google.protobuf.Value value = 7;</code> 518 */ 519 @java.lang.Override getValueOrBuilder()520 public com.google.protobuf.ValueOrBuilder getValueOrBuilder() { 521 if (pathValueCase_ == 7) { 522 return (com.google.protobuf.Value) pathValue_; 523 } 524 return com.google.protobuf.Value.getDefaultInstance(); 525 } 526 527 public static final int VALUE_MATCHER_FIELD_NUMBER = 10; 528 /** 529 * 530 * 531 * <pre> 532 * Can be set for action 'test' for advanced matching for the value of 533 * 'path' field. Either this or `value` will be set for 'test' operation. 534 * </pre> 535 * 536 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 537 * 538 * @return Whether the valueMatcher field is set. 539 */ 540 @java.lang.Override hasValueMatcher()541 public boolean hasValueMatcher() { 542 return pathValueCase_ == 10; 543 } 544 /** 545 * 546 * 547 * <pre> 548 * Can be set for action 'test' for advanced matching for the value of 549 * 'path' field. Either this or `value` will be set for 'test' operation. 550 * </pre> 551 * 552 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 553 * 554 * @return The valueMatcher. 555 */ 556 @java.lang.Override getValueMatcher()557 public com.google.cloud.recommender.v1.ValueMatcher getValueMatcher() { 558 if (pathValueCase_ == 10) { 559 return (com.google.cloud.recommender.v1.ValueMatcher) pathValue_; 560 } 561 return com.google.cloud.recommender.v1.ValueMatcher.getDefaultInstance(); 562 } 563 /** 564 * 565 * 566 * <pre> 567 * Can be set for action 'test' for advanced matching for the value of 568 * 'path' field. Either this or `value` will be set for 'test' operation. 569 * </pre> 570 * 571 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 572 */ 573 @java.lang.Override getValueMatcherOrBuilder()574 public com.google.cloud.recommender.v1.ValueMatcherOrBuilder getValueMatcherOrBuilder() { 575 if (pathValueCase_ == 10) { 576 return (com.google.cloud.recommender.v1.ValueMatcher) pathValue_; 577 } 578 return com.google.cloud.recommender.v1.ValueMatcher.getDefaultInstance(); 579 } 580 581 public static final int PATH_FILTERS_FIELD_NUMBER = 8; 582 583 private static final class PathFiltersDefaultEntryHolder { 584 static final com.google.protobuf.MapEntry<java.lang.String, com.google.protobuf.Value> 585 defaultEntry = 586 com.google.protobuf.MapEntry 587 .<java.lang.String, com.google.protobuf.Value>newDefaultInstance( 588 com.google.cloud.recommender.v1.RecommendationOuterClass 589 .internal_static_google_cloud_recommender_v1_Operation_PathFiltersEntry_descriptor, 590 com.google.protobuf.WireFormat.FieldType.STRING, 591 "", 592 com.google.protobuf.WireFormat.FieldType.MESSAGE, 593 com.google.protobuf.Value.getDefaultInstance()); 594 } 595 596 @SuppressWarnings("serial") 597 private com.google.protobuf.MapField<java.lang.String, com.google.protobuf.Value> pathFilters_; 598 599 private com.google.protobuf.MapField<java.lang.String, com.google.protobuf.Value> internalGetPathFilters()600 internalGetPathFilters() { 601 if (pathFilters_ == null) { 602 return com.google.protobuf.MapField.emptyMapField(PathFiltersDefaultEntryHolder.defaultEntry); 603 } 604 return pathFilters_; 605 } 606 getPathFiltersCount()607 public int getPathFiltersCount() { 608 return internalGetPathFilters().getMap().size(); 609 } 610 /** 611 * 612 * 613 * <pre> 614 * Set of filters to apply if `path` refers to array elements or nested array 615 * elements in order to narrow down to a single unique element that is being 616 * tested/modified. 617 * This is intended to be an exact match per filter. To perform advanced 618 * matching, use path_value_matchers. 619 * * Example: 620 * ``` 621 * { 622 * "/versions/*/name" : "it-123" 623 * "/versions/*/targetSize/percent": 20 624 * } 625 * ``` 626 * * Example: 627 * ``` 628 * { 629 * "/bindings/*/role": "roles/owner" 630 * "/bindings/*/condition" : null 631 * } 632 * ``` 633 * * Example: 634 * ``` 635 * { 636 * "/bindings/*/role": "roles/owner" 637 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 638 * } 639 * ``` 640 * When both path_filters and path_value_matchers are set, an implicit AND 641 * must be performed. 642 * </pre> 643 * 644 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 645 */ 646 @java.lang.Override containsPathFilters(java.lang.String key)647 public boolean containsPathFilters(java.lang.String key) { 648 if (key == null) { 649 throw new NullPointerException("map key"); 650 } 651 return internalGetPathFilters().getMap().containsKey(key); 652 } 653 /** Use {@link #getPathFiltersMap()} instead. */ 654 @java.lang.Override 655 @java.lang.Deprecated getPathFilters()656 public java.util.Map<java.lang.String, com.google.protobuf.Value> getPathFilters() { 657 return getPathFiltersMap(); 658 } 659 /** 660 * 661 * 662 * <pre> 663 * Set of filters to apply if `path` refers to array elements or nested array 664 * elements in order to narrow down to a single unique element that is being 665 * tested/modified. 666 * This is intended to be an exact match per filter. To perform advanced 667 * matching, use path_value_matchers. 668 * * Example: 669 * ``` 670 * { 671 * "/versions/*/name" : "it-123" 672 * "/versions/*/targetSize/percent": 20 673 * } 674 * ``` 675 * * Example: 676 * ``` 677 * { 678 * "/bindings/*/role": "roles/owner" 679 * "/bindings/*/condition" : null 680 * } 681 * ``` 682 * * Example: 683 * ``` 684 * { 685 * "/bindings/*/role": "roles/owner" 686 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 687 * } 688 * ``` 689 * When both path_filters and path_value_matchers are set, an implicit AND 690 * must be performed. 691 * </pre> 692 * 693 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 694 */ 695 @java.lang.Override getPathFiltersMap()696 public java.util.Map<java.lang.String, com.google.protobuf.Value> getPathFiltersMap() { 697 return internalGetPathFilters().getMap(); 698 } 699 /** 700 * 701 * 702 * <pre> 703 * Set of filters to apply if `path` refers to array elements or nested array 704 * elements in order to narrow down to a single unique element that is being 705 * tested/modified. 706 * This is intended to be an exact match per filter. To perform advanced 707 * matching, use path_value_matchers. 708 * * Example: 709 * ``` 710 * { 711 * "/versions/*/name" : "it-123" 712 * "/versions/*/targetSize/percent": 20 713 * } 714 * ``` 715 * * Example: 716 * ``` 717 * { 718 * "/bindings/*/role": "roles/owner" 719 * "/bindings/*/condition" : null 720 * } 721 * ``` 722 * * Example: 723 * ``` 724 * { 725 * "/bindings/*/role": "roles/owner" 726 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 727 * } 728 * ``` 729 * When both path_filters and path_value_matchers are set, an implicit AND 730 * must be performed. 731 * </pre> 732 * 733 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 734 */ 735 @java.lang.Override getPathFiltersOrDefault( java.lang.String key, com.google.protobuf.Value defaultValue)736 public /* nullable */ com.google.protobuf.Value getPathFiltersOrDefault( 737 java.lang.String key, 738 /* nullable */ 739 com.google.protobuf.Value defaultValue) { 740 if (key == null) { 741 throw new NullPointerException("map key"); 742 } 743 java.util.Map<java.lang.String, com.google.protobuf.Value> map = 744 internalGetPathFilters().getMap(); 745 return map.containsKey(key) ? map.get(key) : defaultValue; 746 } 747 /** 748 * 749 * 750 * <pre> 751 * Set of filters to apply if `path` refers to array elements or nested array 752 * elements in order to narrow down to a single unique element that is being 753 * tested/modified. 754 * This is intended to be an exact match per filter. To perform advanced 755 * matching, use path_value_matchers. 756 * * Example: 757 * ``` 758 * { 759 * "/versions/*/name" : "it-123" 760 * "/versions/*/targetSize/percent": 20 761 * } 762 * ``` 763 * * Example: 764 * ``` 765 * { 766 * "/bindings/*/role": "roles/owner" 767 * "/bindings/*/condition" : null 768 * } 769 * ``` 770 * * Example: 771 * ``` 772 * { 773 * "/bindings/*/role": "roles/owner" 774 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 775 * } 776 * ``` 777 * When both path_filters and path_value_matchers are set, an implicit AND 778 * must be performed. 779 * </pre> 780 * 781 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 782 */ 783 @java.lang.Override getPathFiltersOrThrow(java.lang.String key)784 public com.google.protobuf.Value getPathFiltersOrThrow(java.lang.String key) { 785 if (key == null) { 786 throw new NullPointerException("map key"); 787 } 788 java.util.Map<java.lang.String, com.google.protobuf.Value> map = 789 internalGetPathFilters().getMap(); 790 if (!map.containsKey(key)) { 791 throw new java.lang.IllegalArgumentException(); 792 } 793 return map.get(key); 794 } 795 796 public static final int PATH_VALUE_MATCHERS_FIELD_NUMBER = 11; 797 798 private static final class PathValueMatchersDefaultEntryHolder { 799 static final com.google.protobuf.MapEntry< 800 java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> 801 defaultEntry = 802 com.google.protobuf.MapEntry 803 .<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher>newDefaultInstance( 804 com.google.cloud.recommender.v1.RecommendationOuterClass 805 .internal_static_google_cloud_recommender_v1_Operation_PathValueMatchersEntry_descriptor, 806 com.google.protobuf.WireFormat.FieldType.STRING, 807 "", 808 com.google.protobuf.WireFormat.FieldType.MESSAGE, 809 com.google.cloud.recommender.v1.ValueMatcher.getDefaultInstance()); 810 } 811 812 @SuppressWarnings("serial") 813 private com.google.protobuf.MapField< 814 java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> 815 pathValueMatchers_; 816 817 private com.google.protobuf.MapField< 818 java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> internalGetPathValueMatchers()819 internalGetPathValueMatchers() { 820 if (pathValueMatchers_ == null) { 821 return com.google.protobuf.MapField.emptyMapField( 822 PathValueMatchersDefaultEntryHolder.defaultEntry); 823 } 824 return pathValueMatchers_; 825 } 826 getPathValueMatchersCount()827 public int getPathValueMatchersCount() { 828 return internalGetPathValueMatchers().getMap().size(); 829 } 830 /** 831 * 832 * 833 * <pre> 834 * Similar to path_filters, this contains set of filters to apply if `path` 835 * field refers to array elements. This is meant to support value matching 836 * beyond exact match. To perform exact match, use path_filters. 837 * When both path_filters and path_value_matchers are set, an implicit AND 838 * must be performed. 839 * </pre> 840 * 841 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 842 * </code> 843 */ 844 @java.lang.Override containsPathValueMatchers(java.lang.String key)845 public boolean containsPathValueMatchers(java.lang.String key) { 846 if (key == null) { 847 throw new NullPointerException("map key"); 848 } 849 return internalGetPathValueMatchers().getMap().containsKey(key); 850 } 851 /** Use {@link #getPathValueMatchersMap()} instead. */ 852 @java.lang.Override 853 @java.lang.Deprecated 854 public java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> getPathValueMatchers()855 getPathValueMatchers() { 856 return getPathValueMatchersMap(); 857 } 858 /** 859 * 860 * 861 * <pre> 862 * Similar to path_filters, this contains set of filters to apply if `path` 863 * field refers to array elements. This is meant to support value matching 864 * beyond exact match. To perform exact match, use path_filters. 865 * When both path_filters and path_value_matchers are set, an implicit AND 866 * must be performed. 867 * </pre> 868 * 869 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 870 * </code> 871 */ 872 @java.lang.Override 873 public java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> getPathValueMatchersMap()874 getPathValueMatchersMap() { 875 return internalGetPathValueMatchers().getMap(); 876 } 877 /** 878 * 879 * 880 * <pre> 881 * Similar to path_filters, this contains set of filters to apply if `path` 882 * field refers to array elements. This is meant to support value matching 883 * beyond exact match. To perform exact match, use path_filters. 884 * When both path_filters and path_value_matchers are set, an implicit AND 885 * must be performed. 886 * </pre> 887 * 888 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 889 * </code> 890 */ 891 @java.lang.Override getPathValueMatchersOrDefault( java.lang.String key, com.google.cloud.recommender.v1.ValueMatcher defaultValue)892 public /* nullable */ com.google.cloud.recommender.v1.ValueMatcher getPathValueMatchersOrDefault( 893 java.lang.String key, 894 /* nullable */ 895 com.google.cloud.recommender.v1.ValueMatcher defaultValue) { 896 if (key == null) { 897 throw new NullPointerException("map key"); 898 } 899 java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> map = 900 internalGetPathValueMatchers().getMap(); 901 return map.containsKey(key) ? map.get(key) : defaultValue; 902 } 903 /** 904 * 905 * 906 * <pre> 907 * Similar to path_filters, this contains set of filters to apply if `path` 908 * field refers to array elements. This is meant to support value matching 909 * beyond exact match. To perform exact match, use path_filters. 910 * When both path_filters and path_value_matchers are set, an implicit AND 911 * must be performed. 912 * </pre> 913 * 914 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 915 * </code> 916 */ 917 @java.lang.Override getPathValueMatchersOrThrow( java.lang.String key)918 public com.google.cloud.recommender.v1.ValueMatcher getPathValueMatchersOrThrow( 919 java.lang.String key) { 920 if (key == null) { 921 throw new NullPointerException("map key"); 922 } 923 java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> map = 924 internalGetPathValueMatchers().getMap(); 925 if (!map.containsKey(key)) { 926 throw new java.lang.IllegalArgumentException(); 927 } 928 return map.get(key); 929 } 930 931 private byte memoizedIsInitialized = -1; 932 933 @java.lang.Override isInitialized()934 public final boolean isInitialized() { 935 byte isInitialized = memoizedIsInitialized; 936 if (isInitialized == 1) return true; 937 if (isInitialized == 0) return false; 938 939 memoizedIsInitialized = 1; 940 return true; 941 } 942 943 @java.lang.Override writeTo(com.google.protobuf.CodedOutputStream output)944 public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { 945 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(action_)) { 946 com.google.protobuf.GeneratedMessageV3.writeString(output, 1, action_); 947 } 948 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resourceType_)) { 949 com.google.protobuf.GeneratedMessageV3.writeString(output, 2, resourceType_); 950 } 951 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resource_)) { 952 com.google.protobuf.GeneratedMessageV3.writeString(output, 3, resource_); 953 } 954 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(path_)) { 955 com.google.protobuf.GeneratedMessageV3.writeString(output, 4, path_); 956 } 957 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceResource_)) { 958 com.google.protobuf.GeneratedMessageV3.writeString(output, 5, sourceResource_); 959 } 960 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourcePath_)) { 961 com.google.protobuf.GeneratedMessageV3.writeString(output, 6, sourcePath_); 962 } 963 if (pathValueCase_ == 7) { 964 output.writeMessage(7, (com.google.protobuf.Value) pathValue_); 965 } 966 com.google.protobuf.GeneratedMessageV3.serializeStringMapTo( 967 output, internalGetPathFilters(), PathFiltersDefaultEntryHolder.defaultEntry, 8); 968 if (pathValueCase_ == 10) { 969 output.writeMessage(10, (com.google.cloud.recommender.v1.ValueMatcher) pathValue_); 970 } 971 com.google.protobuf.GeneratedMessageV3.serializeStringMapTo( 972 output, 973 internalGetPathValueMatchers(), 974 PathValueMatchersDefaultEntryHolder.defaultEntry, 975 11); 976 getUnknownFields().writeTo(output); 977 } 978 979 @java.lang.Override getSerializedSize()980 public int getSerializedSize() { 981 int size = memoizedSize; 982 if (size != -1) return size; 983 984 size = 0; 985 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(action_)) { 986 size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, action_); 987 } 988 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resourceType_)) { 989 size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, resourceType_); 990 } 991 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resource_)) { 992 size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, resource_); 993 } 994 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(path_)) { 995 size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, path_); 996 } 997 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceResource_)) { 998 size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, sourceResource_); 999 } 1000 if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourcePath_)) { 1001 size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, sourcePath_); 1002 } 1003 if (pathValueCase_ == 7) { 1004 size += 1005 com.google.protobuf.CodedOutputStream.computeMessageSize( 1006 7, (com.google.protobuf.Value) pathValue_); 1007 } 1008 for (java.util.Map.Entry<java.lang.String, com.google.protobuf.Value> entry : 1009 internalGetPathFilters().getMap().entrySet()) { 1010 com.google.protobuf.MapEntry<java.lang.String, com.google.protobuf.Value> pathFilters__ = 1011 PathFiltersDefaultEntryHolder.defaultEntry 1012 .newBuilderForType() 1013 .setKey(entry.getKey()) 1014 .setValue(entry.getValue()) 1015 .build(); 1016 size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, pathFilters__); 1017 } 1018 if (pathValueCase_ == 10) { 1019 size += 1020 com.google.protobuf.CodedOutputStream.computeMessageSize( 1021 10, (com.google.cloud.recommender.v1.ValueMatcher) pathValue_); 1022 } 1023 for (java.util.Map.Entry<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> entry : 1024 internalGetPathValueMatchers().getMap().entrySet()) { 1025 com.google.protobuf.MapEntry<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> 1026 pathValueMatchers__ = 1027 PathValueMatchersDefaultEntryHolder.defaultEntry 1028 .newBuilderForType() 1029 .setKey(entry.getKey()) 1030 .setValue(entry.getValue()) 1031 .build(); 1032 size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, pathValueMatchers__); 1033 } 1034 size += getUnknownFields().getSerializedSize(); 1035 memoizedSize = size; 1036 return size; 1037 } 1038 1039 @java.lang.Override equals(final java.lang.Object obj)1040 public boolean equals(final java.lang.Object obj) { 1041 if (obj == this) { 1042 return true; 1043 } 1044 if (!(obj instanceof com.google.cloud.recommender.v1.Operation)) { 1045 return super.equals(obj); 1046 } 1047 com.google.cloud.recommender.v1.Operation other = 1048 (com.google.cloud.recommender.v1.Operation) obj; 1049 1050 if (!getAction().equals(other.getAction())) return false; 1051 if (!getResourceType().equals(other.getResourceType())) return false; 1052 if (!getResource().equals(other.getResource())) return false; 1053 if (!getPath().equals(other.getPath())) return false; 1054 if (!getSourceResource().equals(other.getSourceResource())) return false; 1055 if (!getSourcePath().equals(other.getSourcePath())) return false; 1056 if (!internalGetPathFilters().equals(other.internalGetPathFilters())) return false; 1057 if (!internalGetPathValueMatchers().equals(other.internalGetPathValueMatchers())) return false; 1058 if (!getPathValueCase().equals(other.getPathValueCase())) return false; 1059 switch (pathValueCase_) { 1060 case 7: 1061 if (!getValue().equals(other.getValue())) return false; 1062 break; 1063 case 10: 1064 if (!getValueMatcher().equals(other.getValueMatcher())) return false; 1065 break; 1066 case 0: 1067 default: 1068 } 1069 if (!getUnknownFields().equals(other.getUnknownFields())) return false; 1070 return true; 1071 } 1072 1073 @java.lang.Override hashCode()1074 public int hashCode() { 1075 if (memoizedHashCode != 0) { 1076 return memoizedHashCode; 1077 } 1078 int hash = 41; 1079 hash = (19 * hash) + getDescriptor().hashCode(); 1080 hash = (37 * hash) + ACTION_FIELD_NUMBER; 1081 hash = (53 * hash) + getAction().hashCode(); 1082 hash = (37 * hash) + RESOURCE_TYPE_FIELD_NUMBER; 1083 hash = (53 * hash) + getResourceType().hashCode(); 1084 hash = (37 * hash) + RESOURCE_FIELD_NUMBER; 1085 hash = (53 * hash) + getResource().hashCode(); 1086 hash = (37 * hash) + PATH_FIELD_NUMBER; 1087 hash = (53 * hash) + getPath().hashCode(); 1088 hash = (37 * hash) + SOURCE_RESOURCE_FIELD_NUMBER; 1089 hash = (53 * hash) + getSourceResource().hashCode(); 1090 hash = (37 * hash) + SOURCE_PATH_FIELD_NUMBER; 1091 hash = (53 * hash) + getSourcePath().hashCode(); 1092 if (!internalGetPathFilters().getMap().isEmpty()) { 1093 hash = (37 * hash) + PATH_FILTERS_FIELD_NUMBER; 1094 hash = (53 * hash) + internalGetPathFilters().hashCode(); 1095 } 1096 if (!internalGetPathValueMatchers().getMap().isEmpty()) { 1097 hash = (37 * hash) + PATH_VALUE_MATCHERS_FIELD_NUMBER; 1098 hash = (53 * hash) + internalGetPathValueMatchers().hashCode(); 1099 } 1100 switch (pathValueCase_) { 1101 case 7: 1102 hash = (37 * hash) + VALUE_FIELD_NUMBER; 1103 hash = (53 * hash) + getValue().hashCode(); 1104 break; 1105 case 10: 1106 hash = (37 * hash) + VALUE_MATCHER_FIELD_NUMBER; 1107 hash = (53 * hash) + getValueMatcher().hashCode(); 1108 break; 1109 case 0: 1110 default: 1111 } 1112 hash = (29 * hash) + getUnknownFields().hashCode(); 1113 memoizedHashCode = hash; 1114 return hash; 1115 } 1116 parseFrom(java.nio.ByteBuffer data)1117 public static com.google.cloud.recommender.v1.Operation parseFrom(java.nio.ByteBuffer data) 1118 throws com.google.protobuf.InvalidProtocolBufferException { 1119 return PARSER.parseFrom(data); 1120 } 1121 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1122 public static com.google.cloud.recommender.v1.Operation parseFrom( 1123 java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) 1124 throws com.google.protobuf.InvalidProtocolBufferException { 1125 return PARSER.parseFrom(data, extensionRegistry); 1126 } 1127 parseFrom( com.google.protobuf.ByteString data)1128 public static com.google.cloud.recommender.v1.Operation parseFrom( 1129 com.google.protobuf.ByteString data) 1130 throws com.google.protobuf.InvalidProtocolBufferException { 1131 return PARSER.parseFrom(data); 1132 } 1133 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1134 public static com.google.cloud.recommender.v1.Operation parseFrom( 1135 com.google.protobuf.ByteString data, 1136 com.google.protobuf.ExtensionRegistryLite extensionRegistry) 1137 throws com.google.protobuf.InvalidProtocolBufferException { 1138 return PARSER.parseFrom(data, extensionRegistry); 1139 } 1140 parseFrom(byte[] data)1141 public static com.google.cloud.recommender.v1.Operation parseFrom(byte[] data) 1142 throws com.google.protobuf.InvalidProtocolBufferException { 1143 return PARSER.parseFrom(data); 1144 } 1145 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1146 public static com.google.cloud.recommender.v1.Operation parseFrom( 1147 byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) 1148 throws com.google.protobuf.InvalidProtocolBufferException { 1149 return PARSER.parseFrom(data, extensionRegistry); 1150 } 1151 parseFrom(java.io.InputStream input)1152 public static com.google.cloud.recommender.v1.Operation parseFrom(java.io.InputStream input) 1153 throws java.io.IOException { 1154 return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); 1155 } 1156 parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1157 public static com.google.cloud.recommender.v1.Operation parseFrom( 1158 java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) 1159 throws java.io.IOException { 1160 return com.google.protobuf.GeneratedMessageV3.parseWithIOException( 1161 PARSER, input, extensionRegistry); 1162 } 1163 parseDelimitedFrom( java.io.InputStream input)1164 public static com.google.cloud.recommender.v1.Operation parseDelimitedFrom( 1165 java.io.InputStream input) throws java.io.IOException { 1166 return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); 1167 } 1168 parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1169 public static com.google.cloud.recommender.v1.Operation parseDelimitedFrom( 1170 java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) 1171 throws java.io.IOException { 1172 return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( 1173 PARSER, input, extensionRegistry); 1174 } 1175 parseFrom( com.google.protobuf.CodedInputStream input)1176 public static com.google.cloud.recommender.v1.Operation parseFrom( 1177 com.google.protobuf.CodedInputStream input) throws java.io.IOException { 1178 return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); 1179 } 1180 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1181 public static com.google.cloud.recommender.v1.Operation parseFrom( 1182 com.google.protobuf.CodedInputStream input, 1183 com.google.protobuf.ExtensionRegistryLite extensionRegistry) 1184 throws java.io.IOException { 1185 return com.google.protobuf.GeneratedMessageV3.parseWithIOException( 1186 PARSER, input, extensionRegistry); 1187 } 1188 1189 @java.lang.Override newBuilderForType()1190 public Builder newBuilderForType() { 1191 return newBuilder(); 1192 } 1193 newBuilder()1194 public static Builder newBuilder() { 1195 return DEFAULT_INSTANCE.toBuilder(); 1196 } 1197 newBuilder(com.google.cloud.recommender.v1.Operation prototype)1198 public static Builder newBuilder(com.google.cloud.recommender.v1.Operation prototype) { 1199 return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); 1200 } 1201 1202 @java.lang.Override toBuilder()1203 public Builder toBuilder() { 1204 return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); 1205 } 1206 1207 @java.lang.Override newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1208 protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { 1209 Builder builder = new Builder(parent); 1210 return builder; 1211 } 1212 /** 1213 * 1214 * 1215 * <pre> 1216 * Contains an operation for a resource loosely based on the JSON-PATCH format 1217 * with support for: 1218 * * Custom filters for describing partial array patch. 1219 * * Extended path values for describing nested arrays. 1220 * * Custom fields for describing the resource for which the operation is being 1221 * described. 1222 * * Allows extension to custom operations not natively supported by RFC6902. 1223 * See https://tools.ietf.org/html/rfc6902 for details on the original RFC. 1224 * </pre> 1225 * 1226 * Protobuf type {@code google.cloud.recommender.v1.Operation} 1227 */ 1228 public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> 1229 implements 1230 // @@protoc_insertion_point(builder_implements:google.cloud.recommender.v1.Operation) 1231 com.google.cloud.recommender.v1.OperationOrBuilder { getDescriptor()1232 public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { 1233 return com.google.cloud.recommender.v1.RecommendationOuterClass 1234 .internal_static_google_cloud_recommender_v1_Operation_descriptor; 1235 } 1236 1237 @SuppressWarnings({"rawtypes"}) internalGetMapField(int number)1238 protected com.google.protobuf.MapField internalGetMapField(int number) { 1239 switch (number) { 1240 case 8: 1241 return internalGetPathFilters(); 1242 case 11: 1243 return internalGetPathValueMatchers(); 1244 default: 1245 throw new RuntimeException("Invalid map field number: " + number); 1246 } 1247 } 1248 1249 @SuppressWarnings({"rawtypes"}) internalGetMutableMapField(int number)1250 protected com.google.protobuf.MapField internalGetMutableMapField(int number) { 1251 switch (number) { 1252 case 8: 1253 return internalGetMutablePathFilters(); 1254 case 11: 1255 return internalGetMutablePathValueMatchers(); 1256 default: 1257 throw new RuntimeException("Invalid map field number: " + number); 1258 } 1259 } 1260 1261 @java.lang.Override 1262 protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()1263 internalGetFieldAccessorTable() { 1264 return com.google.cloud.recommender.v1.RecommendationOuterClass 1265 .internal_static_google_cloud_recommender_v1_Operation_fieldAccessorTable 1266 .ensureFieldAccessorsInitialized( 1267 com.google.cloud.recommender.v1.Operation.class, 1268 com.google.cloud.recommender.v1.Operation.Builder.class); 1269 } 1270 1271 // Construct using com.google.cloud.recommender.v1.Operation.newBuilder() Builder()1272 private Builder() {} 1273 Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1274 private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { 1275 super(parent); 1276 } 1277 1278 @java.lang.Override clear()1279 public Builder clear() { 1280 super.clear(); 1281 bitField0_ = 0; 1282 action_ = ""; 1283 resourceType_ = ""; 1284 resource_ = ""; 1285 path_ = ""; 1286 sourceResource_ = ""; 1287 sourcePath_ = ""; 1288 if (valueBuilder_ != null) { 1289 valueBuilder_.clear(); 1290 } 1291 if (valueMatcherBuilder_ != null) { 1292 valueMatcherBuilder_.clear(); 1293 } 1294 internalGetMutablePathFilters().clear(); 1295 internalGetMutablePathValueMatchers().clear(); 1296 pathValueCase_ = 0; 1297 pathValue_ = null; 1298 return this; 1299 } 1300 1301 @java.lang.Override getDescriptorForType()1302 public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { 1303 return com.google.cloud.recommender.v1.RecommendationOuterClass 1304 .internal_static_google_cloud_recommender_v1_Operation_descriptor; 1305 } 1306 1307 @java.lang.Override getDefaultInstanceForType()1308 public com.google.cloud.recommender.v1.Operation getDefaultInstanceForType() { 1309 return com.google.cloud.recommender.v1.Operation.getDefaultInstance(); 1310 } 1311 1312 @java.lang.Override build()1313 public com.google.cloud.recommender.v1.Operation build() { 1314 com.google.cloud.recommender.v1.Operation result = buildPartial(); 1315 if (!result.isInitialized()) { 1316 throw newUninitializedMessageException(result); 1317 } 1318 return result; 1319 } 1320 1321 @java.lang.Override buildPartial()1322 public com.google.cloud.recommender.v1.Operation buildPartial() { 1323 com.google.cloud.recommender.v1.Operation result = 1324 new com.google.cloud.recommender.v1.Operation(this); 1325 if (bitField0_ != 0) { 1326 buildPartial0(result); 1327 } 1328 buildPartialOneofs(result); 1329 onBuilt(); 1330 return result; 1331 } 1332 buildPartial0(com.google.cloud.recommender.v1.Operation result)1333 private void buildPartial0(com.google.cloud.recommender.v1.Operation result) { 1334 int from_bitField0_ = bitField0_; 1335 if (((from_bitField0_ & 0x00000001) != 0)) { 1336 result.action_ = action_; 1337 } 1338 if (((from_bitField0_ & 0x00000002) != 0)) { 1339 result.resourceType_ = resourceType_; 1340 } 1341 if (((from_bitField0_ & 0x00000004) != 0)) { 1342 result.resource_ = resource_; 1343 } 1344 if (((from_bitField0_ & 0x00000008) != 0)) { 1345 result.path_ = path_; 1346 } 1347 if (((from_bitField0_ & 0x00000010) != 0)) { 1348 result.sourceResource_ = sourceResource_; 1349 } 1350 if (((from_bitField0_ & 0x00000020) != 0)) { 1351 result.sourcePath_ = sourcePath_; 1352 } 1353 if (((from_bitField0_ & 0x00000100) != 0)) { 1354 result.pathFilters_ = internalGetPathFilters(); 1355 result.pathFilters_.makeImmutable(); 1356 } 1357 if (((from_bitField0_ & 0x00000200) != 0)) { 1358 result.pathValueMatchers_ = internalGetPathValueMatchers(); 1359 result.pathValueMatchers_.makeImmutable(); 1360 } 1361 } 1362 buildPartialOneofs(com.google.cloud.recommender.v1.Operation result)1363 private void buildPartialOneofs(com.google.cloud.recommender.v1.Operation result) { 1364 result.pathValueCase_ = pathValueCase_; 1365 result.pathValue_ = this.pathValue_; 1366 if (pathValueCase_ == 7 && valueBuilder_ != null) { 1367 result.pathValue_ = valueBuilder_.build(); 1368 } 1369 if (pathValueCase_ == 10 && valueMatcherBuilder_ != null) { 1370 result.pathValue_ = valueMatcherBuilder_.build(); 1371 } 1372 } 1373 1374 @java.lang.Override clone()1375 public Builder clone() { 1376 return super.clone(); 1377 } 1378 1379 @java.lang.Override setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1380 public Builder setField( 1381 com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { 1382 return super.setField(field, value); 1383 } 1384 1385 @java.lang.Override clearField(com.google.protobuf.Descriptors.FieldDescriptor field)1386 public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { 1387 return super.clearField(field); 1388 } 1389 1390 @java.lang.Override clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)1391 public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { 1392 return super.clearOneof(oneof); 1393 } 1394 1395 @java.lang.Override setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)1396 public Builder setRepeatedField( 1397 com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { 1398 return super.setRepeatedField(field, index, value); 1399 } 1400 1401 @java.lang.Override addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1402 public Builder addRepeatedField( 1403 com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { 1404 return super.addRepeatedField(field, value); 1405 } 1406 1407 @java.lang.Override mergeFrom(com.google.protobuf.Message other)1408 public Builder mergeFrom(com.google.protobuf.Message other) { 1409 if (other instanceof com.google.cloud.recommender.v1.Operation) { 1410 return mergeFrom((com.google.cloud.recommender.v1.Operation) other); 1411 } else { 1412 super.mergeFrom(other); 1413 return this; 1414 } 1415 } 1416 mergeFrom(com.google.cloud.recommender.v1.Operation other)1417 public Builder mergeFrom(com.google.cloud.recommender.v1.Operation other) { 1418 if (other == com.google.cloud.recommender.v1.Operation.getDefaultInstance()) return this; 1419 if (!other.getAction().isEmpty()) { 1420 action_ = other.action_; 1421 bitField0_ |= 0x00000001; 1422 onChanged(); 1423 } 1424 if (!other.getResourceType().isEmpty()) { 1425 resourceType_ = other.resourceType_; 1426 bitField0_ |= 0x00000002; 1427 onChanged(); 1428 } 1429 if (!other.getResource().isEmpty()) { 1430 resource_ = other.resource_; 1431 bitField0_ |= 0x00000004; 1432 onChanged(); 1433 } 1434 if (!other.getPath().isEmpty()) { 1435 path_ = other.path_; 1436 bitField0_ |= 0x00000008; 1437 onChanged(); 1438 } 1439 if (!other.getSourceResource().isEmpty()) { 1440 sourceResource_ = other.sourceResource_; 1441 bitField0_ |= 0x00000010; 1442 onChanged(); 1443 } 1444 if (!other.getSourcePath().isEmpty()) { 1445 sourcePath_ = other.sourcePath_; 1446 bitField0_ |= 0x00000020; 1447 onChanged(); 1448 } 1449 internalGetMutablePathFilters().mergeFrom(other.internalGetPathFilters()); 1450 bitField0_ |= 0x00000100; 1451 internalGetMutablePathValueMatchers().mergeFrom(other.internalGetPathValueMatchers()); 1452 bitField0_ |= 0x00000200; 1453 switch (other.getPathValueCase()) { 1454 case VALUE: 1455 { 1456 mergeValue(other.getValue()); 1457 break; 1458 } 1459 case VALUE_MATCHER: 1460 { 1461 mergeValueMatcher(other.getValueMatcher()); 1462 break; 1463 } 1464 case PATHVALUE_NOT_SET: 1465 { 1466 break; 1467 } 1468 } 1469 this.mergeUnknownFields(other.getUnknownFields()); 1470 onChanged(); 1471 return this; 1472 } 1473 1474 @java.lang.Override isInitialized()1475 public final boolean isInitialized() { 1476 return true; 1477 } 1478 1479 @java.lang.Override mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1480 public Builder mergeFrom( 1481 com.google.protobuf.CodedInputStream input, 1482 com.google.protobuf.ExtensionRegistryLite extensionRegistry) 1483 throws java.io.IOException { 1484 if (extensionRegistry == null) { 1485 throw new java.lang.NullPointerException(); 1486 } 1487 try { 1488 boolean done = false; 1489 while (!done) { 1490 int tag = input.readTag(); 1491 switch (tag) { 1492 case 0: 1493 done = true; 1494 break; 1495 case 10: 1496 { 1497 action_ = input.readStringRequireUtf8(); 1498 bitField0_ |= 0x00000001; 1499 break; 1500 } // case 10 1501 case 18: 1502 { 1503 resourceType_ = input.readStringRequireUtf8(); 1504 bitField0_ |= 0x00000002; 1505 break; 1506 } // case 18 1507 case 26: 1508 { 1509 resource_ = input.readStringRequireUtf8(); 1510 bitField0_ |= 0x00000004; 1511 break; 1512 } // case 26 1513 case 34: 1514 { 1515 path_ = input.readStringRequireUtf8(); 1516 bitField0_ |= 0x00000008; 1517 break; 1518 } // case 34 1519 case 42: 1520 { 1521 sourceResource_ = input.readStringRequireUtf8(); 1522 bitField0_ |= 0x00000010; 1523 break; 1524 } // case 42 1525 case 50: 1526 { 1527 sourcePath_ = input.readStringRequireUtf8(); 1528 bitField0_ |= 0x00000020; 1529 break; 1530 } // case 50 1531 case 58: 1532 { 1533 input.readMessage(getValueFieldBuilder().getBuilder(), extensionRegistry); 1534 pathValueCase_ = 7; 1535 break; 1536 } // case 58 1537 case 66: 1538 { 1539 com.google.protobuf.MapEntry<java.lang.String, com.google.protobuf.Value> 1540 pathFilters__ = 1541 input.readMessage( 1542 PathFiltersDefaultEntryHolder.defaultEntry.getParserForType(), 1543 extensionRegistry); 1544 internalGetMutablePathFilters() 1545 .getMutableMap() 1546 .put(pathFilters__.getKey(), pathFilters__.getValue()); 1547 bitField0_ |= 0x00000100; 1548 break; 1549 } // case 66 1550 case 82: 1551 { 1552 input.readMessage(getValueMatcherFieldBuilder().getBuilder(), extensionRegistry); 1553 pathValueCase_ = 10; 1554 break; 1555 } // case 82 1556 case 90: 1557 { 1558 com.google.protobuf.MapEntry< 1559 java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> 1560 pathValueMatchers__ = 1561 input.readMessage( 1562 PathValueMatchersDefaultEntryHolder.defaultEntry.getParserForType(), 1563 extensionRegistry); 1564 internalGetMutablePathValueMatchers() 1565 .getMutableMap() 1566 .put(pathValueMatchers__.getKey(), pathValueMatchers__.getValue()); 1567 bitField0_ |= 0x00000200; 1568 break; 1569 } // case 90 1570 default: 1571 { 1572 if (!super.parseUnknownField(input, extensionRegistry, tag)) { 1573 done = true; // was an endgroup tag 1574 } 1575 break; 1576 } // default: 1577 } // switch (tag) 1578 } // while (!done) 1579 } catch (com.google.protobuf.InvalidProtocolBufferException e) { 1580 throw e.unwrapIOException(); 1581 } finally { 1582 onChanged(); 1583 } // finally 1584 return this; 1585 } 1586 1587 private int pathValueCase_ = 0; 1588 private java.lang.Object pathValue_; 1589 getPathValueCase()1590 public PathValueCase getPathValueCase() { 1591 return PathValueCase.forNumber(pathValueCase_); 1592 } 1593 clearPathValue()1594 public Builder clearPathValue() { 1595 pathValueCase_ = 0; 1596 pathValue_ = null; 1597 onChanged(); 1598 return this; 1599 } 1600 1601 private int bitField0_; 1602 1603 private java.lang.Object action_ = ""; 1604 /** 1605 * 1606 * 1607 * <pre> 1608 * Type of this operation. Contains one of 'add', 'remove', 'replace', 'move', 1609 * 'copy', 'test' and custom operations. This field is case-insensitive and 1610 * always populated. 1611 * </pre> 1612 * 1613 * <code>string action = 1;</code> 1614 * 1615 * @return The action. 1616 */ getAction()1617 public java.lang.String getAction() { 1618 java.lang.Object ref = action_; 1619 if (!(ref instanceof java.lang.String)) { 1620 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 1621 java.lang.String s = bs.toStringUtf8(); 1622 action_ = s; 1623 return s; 1624 } else { 1625 return (java.lang.String) ref; 1626 } 1627 } 1628 /** 1629 * 1630 * 1631 * <pre> 1632 * Type of this operation. Contains one of 'add', 'remove', 'replace', 'move', 1633 * 'copy', 'test' and custom operations. This field is case-insensitive and 1634 * always populated. 1635 * </pre> 1636 * 1637 * <code>string action = 1;</code> 1638 * 1639 * @return The bytes for action. 1640 */ getActionBytes()1641 public com.google.protobuf.ByteString getActionBytes() { 1642 java.lang.Object ref = action_; 1643 if (ref instanceof String) { 1644 com.google.protobuf.ByteString b = 1645 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 1646 action_ = b; 1647 return b; 1648 } else { 1649 return (com.google.protobuf.ByteString) ref; 1650 } 1651 } 1652 /** 1653 * 1654 * 1655 * <pre> 1656 * Type of this operation. Contains one of 'add', 'remove', 'replace', 'move', 1657 * 'copy', 'test' and custom operations. This field is case-insensitive and 1658 * always populated. 1659 * </pre> 1660 * 1661 * <code>string action = 1;</code> 1662 * 1663 * @param value The action to set. 1664 * @return This builder for chaining. 1665 */ setAction(java.lang.String value)1666 public Builder setAction(java.lang.String value) { 1667 if (value == null) { 1668 throw new NullPointerException(); 1669 } 1670 action_ = value; 1671 bitField0_ |= 0x00000001; 1672 onChanged(); 1673 return this; 1674 } 1675 /** 1676 * 1677 * 1678 * <pre> 1679 * Type of this operation. Contains one of 'add', 'remove', 'replace', 'move', 1680 * 'copy', 'test' and custom operations. This field is case-insensitive and 1681 * always populated. 1682 * </pre> 1683 * 1684 * <code>string action = 1;</code> 1685 * 1686 * @return This builder for chaining. 1687 */ clearAction()1688 public Builder clearAction() { 1689 action_ = getDefaultInstance().getAction(); 1690 bitField0_ = (bitField0_ & ~0x00000001); 1691 onChanged(); 1692 return this; 1693 } 1694 /** 1695 * 1696 * 1697 * <pre> 1698 * Type of this operation. Contains one of 'add', 'remove', 'replace', 'move', 1699 * 'copy', 'test' and custom operations. This field is case-insensitive and 1700 * always populated. 1701 * </pre> 1702 * 1703 * <code>string action = 1;</code> 1704 * 1705 * @param value The bytes for action to set. 1706 * @return This builder for chaining. 1707 */ setActionBytes(com.google.protobuf.ByteString value)1708 public Builder setActionBytes(com.google.protobuf.ByteString value) { 1709 if (value == null) { 1710 throw new NullPointerException(); 1711 } 1712 checkByteStringIsUtf8(value); 1713 action_ = value; 1714 bitField0_ |= 0x00000001; 1715 onChanged(); 1716 return this; 1717 } 1718 1719 private java.lang.Object resourceType_ = ""; 1720 /** 1721 * 1722 * 1723 * <pre> 1724 * Type of GCP resource being modified/tested. This field is always populated. 1725 * Example: cloudresourcemanager.googleapis.com/Project, 1726 * compute.googleapis.com/Instance 1727 * </pre> 1728 * 1729 * <code>string resource_type = 2;</code> 1730 * 1731 * @return The resourceType. 1732 */ getResourceType()1733 public java.lang.String getResourceType() { 1734 java.lang.Object ref = resourceType_; 1735 if (!(ref instanceof java.lang.String)) { 1736 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 1737 java.lang.String s = bs.toStringUtf8(); 1738 resourceType_ = s; 1739 return s; 1740 } else { 1741 return (java.lang.String) ref; 1742 } 1743 } 1744 /** 1745 * 1746 * 1747 * <pre> 1748 * Type of GCP resource being modified/tested. This field is always populated. 1749 * Example: cloudresourcemanager.googleapis.com/Project, 1750 * compute.googleapis.com/Instance 1751 * </pre> 1752 * 1753 * <code>string resource_type = 2;</code> 1754 * 1755 * @return The bytes for resourceType. 1756 */ getResourceTypeBytes()1757 public com.google.protobuf.ByteString getResourceTypeBytes() { 1758 java.lang.Object ref = resourceType_; 1759 if (ref instanceof String) { 1760 com.google.protobuf.ByteString b = 1761 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 1762 resourceType_ = b; 1763 return b; 1764 } else { 1765 return (com.google.protobuf.ByteString) ref; 1766 } 1767 } 1768 /** 1769 * 1770 * 1771 * <pre> 1772 * Type of GCP resource being modified/tested. This field is always populated. 1773 * Example: cloudresourcemanager.googleapis.com/Project, 1774 * compute.googleapis.com/Instance 1775 * </pre> 1776 * 1777 * <code>string resource_type = 2;</code> 1778 * 1779 * @param value The resourceType to set. 1780 * @return This builder for chaining. 1781 */ setResourceType(java.lang.String value)1782 public Builder setResourceType(java.lang.String value) { 1783 if (value == null) { 1784 throw new NullPointerException(); 1785 } 1786 resourceType_ = value; 1787 bitField0_ |= 0x00000002; 1788 onChanged(); 1789 return this; 1790 } 1791 /** 1792 * 1793 * 1794 * <pre> 1795 * Type of GCP resource being modified/tested. This field is always populated. 1796 * Example: cloudresourcemanager.googleapis.com/Project, 1797 * compute.googleapis.com/Instance 1798 * </pre> 1799 * 1800 * <code>string resource_type = 2;</code> 1801 * 1802 * @return This builder for chaining. 1803 */ clearResourceType()1804 public Builder clearResourceType() { 1805 resourceType_ = getDefaultInstance().getResourceType(); 1806 bitField0_ = (bitField0_ & ~0x00000002); 1807 onChanged(); 1808 return this; 1809 } 1810 /** 1811 * 1812 * 1813 * <pre> 1814 * Type of GCP resource being modified/tested. This field is always populated. 1815 * Example: cloudresourcemanager.googleapis.com/Project, 1816 * compute.googleapis.com/Instance 1817 * </pre> 1818 * 1819 * <code>string resource_type = 2;</code> 1820 * 1821 * @param value The bytes for resourceType to set. 1822 * @return This builder for chaining. 1823 */ setResourceTypeBytes(com.google.protobuf.ByteString value)1824 public Builder setResourceTypeBytes(com.google.protobuf.ByteString value) { 1825 if (value == null) { 1826 throw new NullPointerException(); 1827 } 1828 checkByteStringIsUtf8(value); 1829 resourceType_ = value; 1830 bitField0_ |= 0x00000002; 1831 onChanged(); 1832 return this; 1833 } 1834 1835 private java.lang.Object resource_ = ""; 1836 /** 1837 * 1838 * 1839 * <pre> 1840 * Contains the fully qualified resource name. This field is always populated. 1841 * ex: //cloudresourcemanager.googleapis.com/projects/foo. 1842 * </pre> 1843 * 1844 * <code>string resource = 3;</code> 1845 * 1846 * @return The resource. 1847 */ getResource()1848 public java.lang.String getResource() { 1849 java.lang.Object ref = resource_; 1850 if (!(ref instanceof java.lang.String)) { 1851 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 1852 java.lang.String s = bs.toStringUtf8(); 1853 resource_ = s; 1854 return s; 1855 } else { 1856 return (java.lang.String) ref; 1857 } 1858 } 1859 /** 1860 * 1861 * 1862 * <pre> 1863 * Contains the fully qualified resource name. This field is always populated. 1864 * ex: //cloudresourcemanager.googleapis.com/projects/foo. 1865 * </pre> 1866 * 1867 * <code>string resource = 3;</code> 1868 * 1869 * @return The bytes for resource. 1870 */ getResourceBytes()1871 public com.google.protobuf.ByteString getResourceBytes() { 1872 java.lang.Object ref = resource_; 1873 if (ref instanceof String) { 1874 com.google.protobuf.ByteString b = 1875 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 1876 resource_ = b; 1877 return b; 1878 } else { 1879 return (com.google.protobuf.ByteString) ref; 1880 } 1881 } 1882 /** 1883 * 1884 * 1885 * <pre> 1886 * Contains the fully qualified resource name. This field is always populated. 1887 * ex: //cloudresourcemanager.googleapis.com/projects/foo. 1888 * </pre> 1889 * 1890 * <code>string resource = 3;</code> 1891 * 1892 * @param value The resource to set. 1893 * @return This builder for chaining. 1894 */ setResource(java.lang.String value)1895 public Builder setResource(java.lang.String value) { 1896 if (value == null) { 1897 throw new NullPointerException(); 1898 } 1899 resource_ = value; 1900 bitField0_ |= 0x00000004; 1901 onChanged(); 1902 return this; 1903 } 1904 /** 1905 * 1906 * 1907 * <pre> 1908 * Contains the fully qualified resource name. This field is always populated. 1909 * ex: //cloudresourcemanager.googleapis.com/projects/foo. 1910 * </pre> 1911 * 1912 * <code>string resource = 3;</code> 1913 * 1914 * @return This builder for chaining. 1915 */ clearResource()1916 public Builder clearResource() { 1917 resource_ = getDefaultInstance().getResource(); 1918 bitField0_ = (bitField0_ & ~0x00000004); 1919 onChanged(); 1920 return this; 1921 } 1922 /** 1923 * 1924 * 1925 * <pre> 1926 * Contains the fully qualified resource name. This field is always populated. 1927 * ex: //cloudresourcemanager.googleapis.com/projects/foo. 1928 * </pre> 1929 * 1930 * <code>string resource = 3;</code> 1931 * 1932 * @param value The bytes for resource to set. 1933 * @return This builder for chaining. 1934 */ setResourceBytes(com.google.protobuf.ByteString value)1935 public Builder setResourceBytes(com.google.protobuf.ByteString value) { 1936 if (value == null) { 1937 throw new NullPointerException(); 1938 } 1939 checkByteStringIsUtf8(value); 1940 resource_ = value; 1941 bitField0_ |= 0x00000004; 1942 onChanged(); 1943 return this; 1944 } 1945 1946 private java.lang.Object path_ = ""; 1947 /** 1948 * 1949 * 1950 * <pre> 1951 * Path to the target field being operated on. If the operation is at the 1952 * resource level, then path should be "/". This field is always populated. 1953 * </pre> 1954 * 1955 * <code>string path = 4;</code> 1956 * 1957 * @return The path. 1958 */ getPath()1959 public java.lang.String getPath() { 1960 java.lang.Object ref = path_; 1961 if (!(ref instanceof java.lang.String)) { 1962 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 1963 java.lang.String s = bs.toStringUtf8(); 1964 path_ = s; 1965 return s; 1966 } else { 1967 return (java.lang.String) ref; 1968 } 1969 } 1970 /** 1971 * 1972 * 1973 * <pre> 1974 * Path to the target field being operated on. If the operation is at the 1975 * resource level, then path should be "/". This field is always populated. 1976 * </pre> 1977 * 1978 * <code>string path = 4;</code> 1979 * 1980 * @return The bytes for path. 1981 */ getPathBytes()1982 public com.google.protobuf.ByteString getPathBytes() { 1983 java.lang.Object ref = path_; 1984 if (ref instanceof String) { 1985 com.google.protobuf.ByteString b = 1986 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 1987 path_ = b; 1988 return b; 1989 } else { 1990 return (com.google.protobuf.ByteString) ref; 1991 } 1992 } 1993 /** 1994 * 1995 * 1996 * <pre> 1997 * Path to the target field being operated on. If the operation is at the 1998 * resource level, then path should be "/". This field is always populated. 1999 * </pre> 2000 * 2001 * <code>string path = 4;</code> 2002 * 2003 * @param value The path to set. 2004 * @return This builder for chaining. 2005 */ setPath(java.lang.String value)2006 public Builder setPath(java.lang.String value) { 2007 if (value == null) { 2008 throw new NullPointerException(); 2009 } 2010 path_ = value; 2011 bitField0_ |= 0x00000008; 2012 onChanged(); 2013 return this; 2014 } 2015 /** 2016 * 2017 * 2018 * <pre> 2019 * Path to the target field being operated on. If the operation is at the 2020 * resource level, then path should be "/". This field is always populated. 2021 * </pre> 2022 * 2023 * <code>string path = 4;</code> 2024 * 2025 * @return This builder for chaining. 2026 */ clearPath()2027 public Builder clearPath() { 2028 path_ = getDefaultInstance().getPath(); 2029 bitField0_ = (bitField0_ & ~0x00000008); 2030 onChanged(); 2031 return this; 2032 } 2033 /** 2034 * 2035 * 2036 * <pre> 2037 * Path to the target field being operated on. If the operation is at the 2038 * resource level, then path should be "/". This field is always populated. 2039 * </pre> 2040 * 2041 * <code>string path = 4;</code> 2042 * 2043 * @param value The bytes for path to set. 2044 * @return This builder for chaining. 2045 */ setPathBytes(com.google.protobuf.ByteString value)2046 public Builder setPathBytes(com.google.protobuf.ByteString value) { 2047 if (value == null) { 2048 throw new NullPointerException(); 2049 } 2050 checkByteStringIsUtf8(value); 2051 path_ = value; 2052 bitField0_ |= 0x00000008; 2053 onChanged(); 2054 return this; 2055 } 2056 2057 private java.lang.Object sourceResource_ = ""; 2058 /** 2059 * 2060 * 2061 * <pre> 2062 * Can be set with action 'copy' to copy resource configuration across 2063 * different resources of the same type. Example: A resource clone can be 2064 * done via action = 'copy', path = "/", from = "/", 2065 * source_resource = <source> and resource_name = <target>. 2066 * This field is empty for all other values of `action`. 2067 * </pre> 2068 * 2069 * <code>string source_resource = 5;</code> 2070 * 2071 * @return The sourceResource. 2072 */ getSourceResource()2073 public java.lang.String getSourceResource() { 2074 java.lang.Object ref = sourceResource_; 2075 if (!(ref instanceof java.lang.String)) { 2076 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 2077 java.lang.String s = bs.toStringUtf8(); 2078 sourceResource_ = s; 2079 return s; 2080 } else { 2081 return (java.lang.String) ref; 2082 } 2083 } 2084 /** 2085 * 2086 * 2087 * <pre> 2088 * Can be set with action 'copy' to copy resource configuration across 2089 * different resources of the same type. Example: A resource clone can be 2090 * done via action = 'copy', path = "/", from = "/", 2091 * source_resource = <source> and resource_name = <target>. 2092 * This field is empty for all other values of `action`. 2093 * </pre> 2094 * 2095 * <code>string source_resource = 5;</code> 2096 * 2097 * @return The bytes for sourceResource. 2098 */ getSourceResourceBytes()2099 public com.google.protobuf.ByteString getSourceResourceBytes() { 2100 java.lang.Object ref = sourceResource_; 2101 if (ref instanceof String) { 2102 com.google.protobuf.ByteString b = 2103 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 2104 sourceResource_ = b; 2105 return b; 2106 } else { 2107 return (com.google.protobuf.ByteString) ref; 2108 } 2109 } 2110 /** 2111 * 2112 * 2113 * <pre> 2114 * Can be set with action 'copy' to copy resource configuration across 2115 * different resources of the same type. Example: A resource clone can be 2116 * done via action = 'copy', path = "/", from = "/", 2117 * source_resource = <source> and resource_name = <target>. 2118 * This field is empty for all other values of `action`. 2119 * </pre> 2120 * 2121 * <code>string source_resource = 5;</code> 2122 * 2123 * @param value The sourceResource to set. 2124 * @return This builder for chaining. 2125 */ setSourceResource(java.lang.String value)2126 public Builder setSourceResource(java.lang.String value) { 2127 if (value == null) { 2128 throw new NullPointerException(); 2129 } 2130 sourceResource_ = value; 2131 bitField0_ |= 0x00000010; 2132 onChanged(); 2133 return this; 2134 } 2135 /** 2136 * 2137 * 2138 * <pre> 2139 * Can be set with action 'copy' to copy resource configuration across 2140 * different resources of the same type. Example: A resource clone can be 2141 * done via action = 'copy', path = "/", from = "/", 2142 * source_resource = <source> and resource_name = <target>. 2143 * This field is empty for all other values of `action`. 2144 * </pre> 2145 * 2146 * <code>string source_resource = 5;</code> 2147 * 2148 * @return This builder for chaining. 2149 */ clearSourceResource()2150 public Builder clearSourceResource() { 2151 sourceResource_ = getDefaultInstance().getSourceResource(); 2152 bitField0_ = (bitField0_ & ~0x00000010); 2153 onChanged(); 2154 return this; 2155 } 2156 /** 2157 * 2158 * 2159 * <pre> 2160 * Can be set with action 'copy' to copy resource configuration across 2161 * different resources of the same type. Example: A resource clone can be 2162 * done via action = 'copy', path = "/", from = "/", 2163 * source_resource = <source> and resource_name = <target>. 2164 * This field is empty for all other values of `action`. 2165 * </pre> 2166 * 2167 * <code>string source_resource = 5;</code> 2168 * 2169 * @param value The bytes for sourceResource to set. 2170 * @return This builder for chaining. 2171 */ setSourceResourceBytes(com.google.protobuf.ByteString value)2172 public Builder setSourceResourceBytes(com.google.protobuf.ByteString value) { 2173 if (value == null) { 2174 throw new NullPointerException(); 2175 } 2176 checkByteStringIsUtf8(value); 2177 sourceResource_ = value; 2178 bitField0_ |= 0x00000010; 2179 onChanged(); 2180 return this; 2181 } 2182 2183 private java.lang.Object sourcePath_ = ""; 2184 /** 2185 * 2186 * 2187 * <pre> 2188 * Can be set with action 'copy' or 'move' to indicate the source field within 2189 * resource or source_resource, ignored if provided for other operation types. 2190 * </pre> 2191 * 2192 * <code>string source_path = 6;</code> 2193 * 2194 * @return The sourcePath. 2195 */ getSourcePath()2196 public java.lang.String getSourcePath() { 2197 java.lang.Object ref = sourcePath_; 2198 if (!(ref instanceof java.lang.String)) { 2199 com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; 2200 java.lang.String s = bs.toStringUtf8(); 2201 sourcePath_ = s; 2202 return s; 2203 } else { 2204 return (java.lang.String) ref; 2205 } 2206 } 2207 /** 2208 * 2209 * 2210 * <pre> 2211 * Can be set with action 'copy' or 'move' to indicate the source field within 2212 * resource or source_resource, ignored if provided for other operation types. 2213 * </pre> 2214 * 2215 * <code>string source_path = 6;</code> 2216 * 2217 * @return The bytes for sourcePath. 2218 */ getSourcePathBytes()2219 public com.google.protobuf.ByteString getSourcePathBytes() { 2220 java.lang.Object ref = sourcePath_; 2221 if (ref instanceof String) { 2222 com.google.protobuf.ByteString b = 2223 com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); 2224 sourcePath_ = b; 2225 return b; 2226 } else { 2227 return (com.google.protobuf.ByteString) ref; 2228 } 2229 } 2230 /** 2231 * 2232 * 2233 * <pre> 2234 * Can be set with action 'copy' or 'move' to indicate the source field within 2235 * resource or source_resource, ignored if provided for other operation types. 2236 * </pre> 2237 * 2238 * <code>string source_path = 6;</code> 2239 * 2240 * @param value The sourcePath to set. 2241 * @return This builder for chaining. 2242 */ setSourcePath(java.lang.String value)2243 public Builder setSourcePath(java.lang.String value) { 2244 if (value == null) { 2245 throw new NullPointerException(); 2246 } 2247 sourcePath_ = value; 2248 bitField0_ |= 0x00000020; 2249 onChanged(); 2250 return this; 2251 } 2252 /** 2253 * 2254 * 2255 * <pre> 2256 * Can be set with action 'copy' or 'move' to indicate the source field within 2257 * resource or source_resource, ignored if provided for other operation types. 2258 * </pre> 2259 * 2260 * <code>string source_path = 6;</code> 2261 * 2262 * @return This builder for chaining. 2263 */ clearSourcePath()2264 public Builder clearSourcePath() { 2265 sourcePath_ = getDefaultInstance().getSourcePath(); 2266 bitField0_ = (bitField0_ & ~0x00000020); 2267 onChanged(); 2268 return this; 2269 } 2270 /** 2271 * 2272 * 2273 * <pre> 2274 * Can be set with action 'copy' or 'move' to indicate the source field within 2275 * resource or source_resource, ignored if provided for other operation types. 2276 * </pre> 2277 * 2278 * <code>string source_path = 6;</code> 2279 * 2280 * @param value The bytes for sourcePath to set. 2281 * @return This builder for chaining. 2282 */ setSourcePathBytes(com.google.protobuf.ByteString value)2283 public Builder setSourcePathBytes(com.google.protobuf.ByteString value) { 2284 if (value == null) { 2285 throw new NullPointerException(); 2286 } 2287 checkByteStringIsUtf8(value); 2288 sourcePath_ = value; 2289 bitField0_ |= 0x00000020; 2290 onChanged(); 2291 return this; 2292 } 2293 2294 private com.google.protobuf.SingleFieldBuilderV3< 2295 com.google.protobuf.Value, 2296 com.google.protobuf.Value.Builder, 2297 com.google.protobuf.ValueOrBuilder> 2298 valueBuilder_; 2299 /** 2300 * 2301 * 2302 * <pre> 2303 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2304 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2305 * for 'test' operation. An exact match must be performed. 2306 * </pre> 2307 * 2308 * <code>.google.protobuf.Value value = 7;</code> 2309 * 2310 * @return Whether the value field is set. 2311 */ 2312 @java.lang.Override hasValue()2313 public boolean hasValue() { 2314 return pathValueCase_ == 7; 2315 } 2316 /** 2317 * 2318 * 2319 * <pre> 2320 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2321 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2322 * for 'test' operation. An exact match must be performed. 2323 * </pre> 2324 * 2325 * <code>.google.protobuf.Value value = 7;</code> 2326 * 2327 * @return The value. 2328 */ 2329 @java.lang.Override getValue()2330 public com.google.protobuf.Value getValue() { 2331 if (valueBuilder_ == null) { 2332 if (pathValueCase_ == 7) { 2333 return (com.google.protobuf.Value) pathValue_; 2334 } 2335 return com.google.protobuf.Value.getDefaultInstance(); 2336 } else { 2337 if (pathValueCase_ == 7) { 2338 return valueBuilder_.getMessage(); 2339 } 2340 return com.google.protobuf.Value.getDefaultInstance(); 2341 } 2342 } 2343 /** 2344 * 2345 * 2346 * <pre> 2347 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2348 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2349 * for 'test' operation. An exact match must be performed. 2350 * </pre> 2351 * 2352 * <code>.google.protobuf.Value value = 7;</code> 2353 */ setValue(com.google.protobuf.Value value)2354 public Builder setValue(com.google.protobuf.Value value) { 2355 if (valueBuilder_ == null) { 2356 if (value == null) { 2357 throw new NullPointerException(); 2358 } 2359 pathValue_ = value; 2360 onChanged(); 2361 } else { 2362 valueBuilder_.setMessage(value); 2363 } 2364 pathValueCase_ = 7; 2365 return this; 2366 } 2367 /** 2368 * 2369 * 2370 * <pre> 2371 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2372 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2373 * for 'test' operation. An exact match must be performed. 2374 * </pre> 2375 * 2376 * <code>.google.protobuf.Value value = 7;</code> 2377 */ setValue(com.google.protobuf.Value.Builder builderForValue)2378 public Builder setValue(com.google.protobuf.Value.Builder builderForValue) { 2379 if (valueBuilder_ == null) { 2380 pathValue_ = builderForValue.build(); 2381 onChanged(); 2382 } else { 2383 valueBuilder_.setMessage(builderForValue.build()); 2384 } 2385 pathValueCase_ = 7; 2386 return this; 2387 } 2388 /** 2389 * 2390 * 2391 * <pre> 2392 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2393 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2394 * for 'test' operation. An exact match must be performed. 2395 * </pre> 2396 * 2397 * <code>.google.protobuf.Value value = 7;</code> 2398 */ mergeValue(com.google.protobuf.Value value)2399 public Builder mergeValue(com.google.protobuf.Value value) { 2400 if (valueBuilder_ == null) { 2401 if (pathValueCase_ == 7 && pathValue_ != com.google.protobuf.Value.getDefaultInstance()) { 2402 pathValue_ = 2403 com.google.protobuf.Value.newBuilder((com.google.protobuf.Value) pathValue_) 2404 .mergeFrom(value) 2405 .buildPartial(); 2406 } else { 2407 pathValue_ = value; 2408 } 2409 onChanged(); 2410 } else { 2411 if (pathValueCase_ == 7) { 2412 valueBuilder_.mergeFrom(value); 2413 } else { 2414 valueBuilder_.setMessage(value); 2415 } 2416 } 2417 pathValueCase_ = 7; 2418 return this; 2419 } 2420 /** 2421 * 2422 * 2423 * <pre> 2424 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2425 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2426 * for 'test' operation. An exact match must be performed. 2427 * </pre> 2428 * 2429 * <code>.google.protobuf.Value value = 7;</code> 2430 */ clearValue()2431 public Builder clearValue() { 2432 if (valueBuilder_ == null) { 2433 if (pathValueCase_ == 7) { 2434 pathValueCase_ = 0; 2435 pathValue_ = null; 2436 onChanged(); 2437 } 2438 } else { 2439 if (pathValueCase_ == 7) { 2440 pathValueCase_ = 0; 2441 pathValue_ = null; 2442 } 2443 valueBuilder_.clear(); 2444 } 2445 return this; 2446 } 2447 /** 2448 * 2449 * 2450 * <pre> 2451 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2452 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2453 * for 'test' operation. An exact match must be performed. 2454 * </pre> 2455 * 2456 * <code>.google.protobuf.Value value = 7;</code> 2457 */ getValueBuilder()2458 public com.google.protobuf.Value.Builder getValueBuilder() { 2459 return getValueFieldBuilder().getBuilder(); 2460 } 2461 /** 2462 * 2463 * 2464 * <pre> 2465 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2466 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2467 * for 'test' operation. An exact match must be performed. 2468 * </pre> 2469 * 2470 * <code>.google.protobuf.Value value = 7;</code> 2471 */ 2472 @java.lang.Override getValueOrBuilder()2473 public com.google.protobuf.ValueOrBuilder getValueOrBuilder() { 2474 if ((pathValueCase_ == 7) && (valueBuilder_ != null)) { 2475 return valueBuilder_.getMessageOrBuilder(); 2476 } else { 2477 if (pathValueCase_ == 7) { 2478 return (com.google.protobuf.Value) pathValue_; 2479 } 2480 return com.google.protobuf.Value.getDefaultInstance(); 2481 } 2482 } 2483 /** 2484 * 2485 * 2486 * <pre> 2487 * Value for the `path` field. Will be set for actions:'add'/'replace'. 2488 * Maybe set for action: 'test'. Either this or `value_matcher` will be set 2489 * for 'test' operation. An exact match must be performed. 2490 * </pre> 2491 * 2492 * <code>.google.protobuf.Value value = 7;</code> 2493 */ 2494 private com.google.protobuf.SingleFieldBuilderV3< 2495 com.google.protobuf.Value, 2496 com.google.protobuf.Value.Builder, 2497 com.google.protobuf.ValueOrBuilder> getValueFieldBuilder()2498 getValueFieldBuilder() { 2499 if (valueBuilder_ == null) { 2500 if (!(pathValueCase_ == 7)) { 2501 pathValue_ = com.google.protobuf.Value.getDefaultInstance(); 2502 } 2503 valueBuilder_ = 2504 new com.google.protobuf.SingleFieldBuilderV3< 2505 com.google.protobuf.Value, 2506 com.google.protobuf.Value.Builder, 2507 com.google.protobuf.ValueOrBuilder>( 2508 (com.google.protobuf.Value) pathValue_, getParentForChildren(), isClean()); 2509 pathValue_ = null; 2510 } 2511 pathValueCase_ = 7; 2512 onChanged(); 2513 return valueBuilder_; 2514 } 2515 2516 private com.google.protobuf.SingleFieldBuilderV3< 2517 com.google.cloud.recommender.v1.ValueMatcher, 2518 com.google.cloud.recommender.v1.ValueMatcher.Builder, 2519 com.google.cloud.recommender.v1.ValueMatcherOrBuilder> 2520 valueMatcherBuilder_; 2521 /** 2522 * 2523 * 2524 * <pre> 2525 * Can be set for action 'test' for advanced matching for the value of 2526 * 'path' field. Either this or `value` will be set for 'test' operation. 2527 * </pre> 2528 * 2529 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2530 * 2531 * @return Whether the valueMatcher field is set. 2532 */ 2533 @java.lang.Override hasValueMatcher()2534 public boolean hasValueMatcher() { 2535 return pathValueCase_ == 10; 2536 } 2537 /** 2538 * 2539 * 2540 * <pre> 2541 * Can be set for action 'test' for advanced matching for the value of 2542 * 'path' field. Either this or `value` will be set for 'test' operation. 2543 * </pre> 2544 * 2545 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2546 * 2547 * @return The valueMatcher. 2548 */ 2549 @java.lang.Override getValueMatcher()2550 public com.google.cloud.recommender.v1.ValueMatcher getValueMatcher() { 2551 if (valueMatcherBuilder_ == null) { 2552 if (pathValueCase_ == 10) { 2553 return (com.google.cloud.recommender.v1.ValueMatcher) pathValue_; 2554 } 2555 return com.google.cloud.recommender.v1.ValueMatcher.getDefaultInstance(); 2556 } else { 2557 if (pathValueCase_ == 10) { 2558 return valueMatcherBuilder_.getMessage(); 2559 } 2560 return com.google.cloud.recommender.v1.ValueMatcher.getDefaultInstance(); 2561 } 2562 } 2563 /** 2564 * 2565 * 2566 * <pre> 2567 * Can be set for action 'test' for advanced matching for the value of 2568 * 'path' field. Either this or `value` will be set for 'test' operation. 2569 * </pre> 2570 * 2571 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2572 */ setValueMatcher(com.google.cloud.recommender.v1.ValueMatcher value)2573 public Builder setValueMatcher(com.google.cloud.recommender.v1.ValueMatcher value) { 2574 if (valueMatcherBuilder_ == null) { 2575 if (value == null) { 2576 throw new NullPointerException(); 2577 } 2578 pathValue_ = value; 2579 onChanged(); 2580 } else { 2581 valueMatcherBuilder_.setMessage(value); 2582 } 2583 pathValueCase_ = 10; 2584 return this; 2585 } 2586 /** 2587 * 2588 * 2589 * <pre> 2590 * Can be set for action 'test' for advanced matching for the value of 2591 * 'path' field. Either this or `value` will be set for 'test' operation. 2592 * </pre> 2593 * 2594 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2595 */ setValueMatcher( com.google.cloud.recommender.v1.ValueMatcher.Builder builderForValue)2596 public Builder setValueMatcher( 2597 com.google.cloud.recommender.v1.ValueMatcher.Builder builderForValue) { 2598 if (valueMatcherBuilder_ == null) { 2599 pathValue_ = builderForValue.build(); 2600 onChanged(); 2601 } else { 2602 valueMatcherBuilder_.setMessage(builderForValue.build()); 2603 } 2604 pathValueCase_ = 10; 2605 return this; 2606 } 2607 /** 2608 * 2609 * 2610 * <pre> 2611 * Can be set for action 'test' for advanced matching for the value of 2612 * 'path' field. Either this or `value` will be set for 'test' operation. 2613 * </pre> 2614 * 2615 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2616 */ mergeValueMatcher(com.google.cloud.recommender.v1.ValueMatcher value)2617 public Builder mergeValueMatcher(com.google.cloud.recommender.v1.ValueMatcher value) { 2618 if (valueMatcherBuilder_ == null) { 2619 if (pathValueCase_ == 10 2620 && pathValue_ != com.google.cloud.recommender.v1.ValueMatcher.getDefaultInstance()) { 2621 pathValue_ = 2622 com.google.cloud.recommender.v1.ValueMatcher.newBuilder( 2623 (com.google.cloud.recommender.v1.ValueMatcher) pathValue_) 2624 .mergeFrom(value) 2625 .buildPartial(); 2626 } else { 2627 pathValue_ = value; 2628 } 2629 onChanged(); 2630 } else { 2631 if (pathValueCase_ == 10) { 2632 valueMatcherBuilder_.mergeFrom(value); 2633 } else { 2634 valueMatcherBuilder_.setMessage(value); 2635 } 2636 } 2637 pathValueCase_ = 10; 2638 return this; 2639 } 2640 /** 2641 * 2642 * 2643 * <pre> 2644 * Can be set for action 'test' for advanced matching for the value of 2645 * 'path' field. Either this or `value` will be set for 'test' operation. 2646 * </pre> 2647 * 2648 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2649 */ clearValueMatcher()2650 public Builder clearValueMatcher() { 2651 if (valueMatcherBuilder_ == null) { 2652 if (pathValueCase_ == 10) { 2653 pathValueCase_ = 0; 2654 pathValue_ = null; 2655 onChanged(); 2656 } 2657 } else { 2658 if (pathValueCase_ == 10) { 2659 pathValueCase_ = 0; 2660 pathValue_ = null; 2661 } 2662 valueMatcherBuilder_.clear(); 2663 } 2664 return this; 2665 } 2666 /** 2667 * 2668 * 2669 * <pre> 2670 * Can be set for action 'test' for advanced matching for the value of 2671 * 'path' field. Either this or `value` will be set for 'test' operation. 2672 * </pre> 2673 * 2674 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2675 */ getValueMatcherBuilder()2676 public com.google.cloud.recommender.v1.ValueMatcher.Builder getValueMatcherBuilder() { 2677 return getValueMatcherFieldBuilder().getBuilder(); 2678 } 2679 /** 2680 * 2681 * 2682 * <pre> 2683 * Can be set for action 'test' for advanced matching for the value of 2684 * 'path' field. Either this or `value` will be set for 'test' operation. 2685 * </pre> 2686 * 2687 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2688 */ 2689 @java.lang.Override getValueMatcherOrBuilder()2690 public com.google.cloud.recommender.v1.ValueMatcherOrBuilder getValueMatcherOrBuilder() { 2691 if ((pathValueCase_ == 10) && (valueMatcherBuilder_ != null)) { 2692 return valueMatcherBuilder_.getMessageOrBuilder(); 2693 } else { 2694 if (pathValueCase_ == 10) { 2695 return (com.google.cloud.recommender.v1.ValueMatcher) pathValue_; 2696 } 2697 return com.google.cloud.recommender.v1.ValueMatcher.getDefaultInstance(); 2698 } 2699 } 2700 /** 2701 * 2702 * 2703 * <pre> 2704 * Can be set for action 'test' for advanced matching for the value of 2705 * 'path' field. Either this or `value` will be set for 'test' operation. 2706 * </pre> 2707 * 2708 * <code>.google.cloud.recommender.v1.ValueMatcher value_matcher = 10;</code> 2709 */ 2710 private com.google.protobuf.SingleFieldBuilderV3< 2711 com.google.cloud.recommender.v1.ValueMatcher, 2712 com.google.cloud.recommender.v1.ValueMatcher.Builder, 2713 com.google.cloud.recommender.v1.ValueMatcherOrBuilder> getValueMatcherFieldBuilder()2714 getValueMatcherFieldBuilder() { 2715 if (valueMatcherBuilder_ == null) { 2716 if (!(pathValueCase_ == 10)) { 2717 pathValue_ = com.google.cloud.recommender.v1.ValueMatcher.getDefaultInstance(); 2718 } 2719 valueMatcherBuilder_ = 2720 new com.google.protobuf.SingleFieldBuilderV3< 2721 com.google.cloud.recommender.v1.ValueMatcher, 2722 com.google.cloud.recommender.v1.ValueMatcher.Builder, 2723 com.google.cloud.recommender.v1.ValueMatcherOrBuilder>( 2724 (com.google.cloud.recommender.v1.ValueMatcher) pathValue_, 2725 getParentForChildren(), 2726 isClean()); 2727 pathValue_ = null; 2728 } 2729 pathValueCase_ = 10; 2730 onChanged(); 2731 return valueMatcherBuilder_; 2732 } 2733 2734 private com.google.protobuf.MapField<java.lang.String, com.google.protobuf.Value> pathFilters_; 2735 2736 private com.google.protobuf.MapField<java.lang.String, com.google.protobuf.Value> internalGetPathFilters()2737 internalGetPathFilters() { 2738 if (pathFilters_ == null) { 2739 return com.google.protobuf.MapField.emptyMapField( 2740 PathFiltersDefaultEntryHolder.defaultEntry); 2741 } 2742 return pathFilters_; 2743 } 2744 2745 private com.google.protobuf.MapField<java.lang.String, com.google.protobuf.Value> internalGetMutablePathFilters()2746 internalGetMutablePathFilters() { 2747 if (pathFilters_ == null) { 2748 pathFilters_ = 2749 com.google.protobuf.MapField.newMapField(PathFiltersDefaultEntryHolder.defaultEntry); 2750 } 2751 if (!pathFilters_.isMutable()) { 2752 pathFilters_ = pathFilters_.copy(); 2753 } 2754 bitField0_ |= 0x00000100; 2755 onChanged(); 2756 return pathFilters_; 2757 } 2758 getPathFiltersCount()2759 public int getPathFiltersCount() { 2760 return internalGetPathFilters().getMap().size(); 2761 } 2762 /** 2763 * 2764 * 2765 * <pre> 2766 * Set of filters to apply if `path` refers to array elements or nested array 2767 * elements in order to narrow down to a single unique element that is being 2768 * tested/modified. 2769 * This is intended to be an exact match per filter. To perform advanced 2770 * matching, use path_value_matchers. 2771 * * Example: 2772 * ``` 2773 * { 2774 * "/versions/*/name" : "it-123" 2775 * "/versions/*/targetSize/percent": 20 2776 * } 2777 * ``` 2778 * * Example: 2779 * ``` 2780 * { 2781 * "/bindings/*/role": "roles/owner" 2782 * "/bindings/*/condition" : null 2783 * } 2784 * ``` 2785 * * Example: 2786 * ``` 2787 * { 2788 * "/bindings/*/role": "roles/owner" 2789 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 2790 * } 2791 * ``` 2792 * When both path_filters and path_value_matchers are set, an implicit AND 2793 * must be performed. 2794 * </pre> 2795 * 2796 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 2797 */ 2798 @java.lang.Override containsPathFilters(java.lang.String key)2799 public boolean containsPathFilters(java.lang.String key) { 2800 if (key == null) { 2801 throw new NullPointerException("map key"); 2802 } 2803 return internalGetPathFilters().getMap().containsKey(key); 2804 } 2805 /** Use {@link #getPathFiltersMap()} instead. */ 2806 @java.lang.Override 2807 @java.lang.Deprecated getPathFilters()2808 public java.util.Map<java.lang.String, com.google.protobuf.Value> getPathFilters() { 2809 return getPathFiltersMap(); 2810 } 2811 /** 2812 * 2813 * 2814 * <pre> 2815 * Set of filters to apply if `path` refers to array elements or nested array 2816 * elements in order to narrow down to a single unique element that is being 2817 * tested/modified. 2818 * This is intended to be an exact match per filter. To perform advanced 2819 * matching, use path_value_matchers. 2820 * * Example: 2821 * ``` 2822 * { 2823 * "/versions/*/name" : "it-123" 2824 * "/versions/*/targetSize/percent": 20 2825 * } 2826 * ``` 2827 * * Example: 2828 * ``` 2829 * { 2830 * "/bindings/*/role": "roles/owner" 2831 * "/bindings/*/condition" : null 2832 * } 2833 * ``` 2834 * * Example: 2835 * ``` 2836 * { 2837 * "/bindings/*/role": "roles/owner" 2838 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 2839 * } 2840 * ``` 2841 * When both path_filters and path_value_matchers are set, an implicit AND 2842 * must be performed. 2843 * </pre> 2844 * 2845 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 2846 */ 2847 @java.lang.Override getPathFiltersMap()2848 public java.util.Map<java.lang.String, com.google.protobuf.Value> getPathFiltersMap() { 2849 return internalGetPathFilters().getMap(); 2850 } 2851 /** 2852 * 2853 * 2854 * <pre> 2855 * Set of filters to apply if `path` refers to array elements or nested array 2856 * elements in order to narrow down to a single unique element that is being 2857 * tested/modified. 2858 * This is intended to be an exact match per filter. To perform advanced 2859 * matching, use path_value_matchers. 2860 * * Example: 2861 * ``` 2862 * { 2863 * "/versions/*/name" : "it-123" 2864 * "/versions/*/targetSize/percent": 20 2865 * } 2866 * ``` 2867 * * Example: 2868 * ``` 2869 * { 2870 * "/bindings/*/role": "roles/owner" 2871 * "/bindings/*/condition" : null 2872 * } 2873 * ``` 2874 * * Example: 2875 * ``` 2876 * { 2877 * "/bindings/*/role": "roles/owner" 2878 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 2879 * } 2880 * ``` 2881 * When both path_filters and path_value_matchers are set, an implicit AND 2882 * must be performed. 2883 * </pre> 2884 * 2885 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 2886 */ 2887 @java.lang.Override getPathFiltersOrDefault( java.lang.String key, com.google.protobuf.Value defaultValue)2888 public /* nullable */ com.google.protobuf.Value getPathFiltersOrDefault( 2889 java.lang.String key, 2890 /* nullable */ 2891 com.google.protobuf.Value defaultValue) { 2892 if (key == null) { 2893 throw new NullPointerException("map key"); 2894 } 2895 java.util.Map<java.lang.String, com.google.protobuf.Value> map = 2896 internalGetPathFilters().getMap(); 2897 return map.containsKey(key) ? map.get(key) : defaultValue; 2898 } 2899 /** 2900 * 2901 * 2902 * <pre> 2903 * Set of filters to apply if `path` refers to array elements or nested array 2904 * elements in order to narrow down to a single unique element that is being 2905 * tested/modified. 2906 * This is intended to be an exact match per filter. To perform advanced 2907 * matching, use path_value_matchers. 2908 * * Example: 2909 * ``` 2910 * { 2911 * "/versions/*/name" : "it-123" 2912 * "/versions/*/targetSize/percent": 20 2913 * } 2914 * ``` 2915 * * Example: 2916 * ``` 2917 * { 2918 * "/bindings/*/role": "roles/owner" 2919 * "/bindings/*/condition" : null 2920 * } 2921 * ``` 2922 * * Example: 2923 * ``` 2924 * { 2925 * "/bindings/*/role": "roles/owner" 2926 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 2927 * } 2928 * ``` 2929 * When both path_filters and path_value_matchers are set, an implicit AND 2930 * must be performed. 2931 * </pre> 2932 * 2933 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 2934 */ 2935 @java.lang.Override getPathFiltersOrThrow(java.lang.String key)2936 public com.google.protobuf.Value getPathFiltersOrThrow(java.lang.String key) { 2937 if (key == null) { 2938 throw new NullPointerException("map key"); 2939 } 2940 java.util.Map<java.lang.String, com.google.protobuf.Value> map = 2941 internalGetPathFilters().getMap(); 2942 if (!map.containsKey(key)) { 2943 throw new java.lang.IllegalArgumentException(); 2944 } 2945 return map.get(key); 2946 } 2947 clearPathFilters()2948 public Builder clearPathFilters() { 2949 bitField0_ = (bitField0_ & ~0x00000100); 2950 internalGetMutablePathFilters().getMutableMap().clear(); 2951 return this; 2952 } 2953 /** 2954 * 2955 * 2956 * <pre> 2957 * Set of filters to apply if `path` refers to array elements or nested array 2958 * elements in order to narrow down to a single unique element that is being 2959 * tested/modified. 2960 * This is intended to be an exact match per filter. To perform advanced 2961 * matching, use path_value_matchers. 2962 * * Example: 2963 * ``` 2964 * { 2965 * "/versions/*/name" : "it-123" 2966 * "/versions/*/targetSize/percent": 20 2967 * } 2968 * ``` 2969 * * Example: 2970 * ``` 2971 * { 2972 * "/bindings/*/role": "roles/owner" 2973 * "/bindings/*/condition" : null 2974 * } 2975 * ``` 2976 * * Example: 2977 * ``` 2978 * { 2979 * "/bindings/*/role": "roles/owner" 2980 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 2981 * } 2982 * ``` 2983 * When both path_filters and path_value_matchers are set, an implicit AND 2984 * must be performed. 2985 * </pre> 2986 * 2987 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 2988 */ removePathFilters(java.lang.String key)2989 public Builder removePathFilters(java.lang.String key) { 2990 if (key == null) { 2991 throw new NullPointerException("map key"); 2992 } 2993 internalGetMutablePathFilters().getMutableMap().remove(key); 2994 return this; 2995 } 2996 /** Use alternate mutation accessors instead. */ 2997 @java.lang.Deprecated getMutablePathFilters()2998 public java.util.Map<java.lang.String, com.google.protobuf.Value> getMutablePathFilters() { 2999 bitField0_ |= 0x00000100; 3000 return internalGetMutablePathFilters().getMutableMap(); 3001 } 3002 /** 3003 * 3004 * 3005 * <pre> 3006 * Set of filters to apply if `path` refers to array elements or nested array 3007 * elements in order to narrow down to a single unique element that is being 3008 * tested/modified. 3009 * This is intended to be an exact match per filter. To perform advanced 3010 * matching, use path_value_matchers. 3011 * * Example: 3012 * ``` 3013 * { 3014 * "/versions/*/name" : "it-123" 3015 * "/versions/*/targetSize/percent": 20 3016 * } 3017 * ``` 3018 * * Example: 3019 * ``` 3020 * { 3021 * "/bindings/*/role": "roles/owner" 3022 * "/bindings/*/condition" : null 3023 * } 3024 * ``` 3025 * * Example: 3026 * ``` 3027 * { 3028 * "/bindings/*/role": "roles/owner" 3029 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 3030 * } 3031 * ``` 3032 * When both path_filters and path_value_matchers are set, an implicit AND 3033 * must be performed. 3034 * </pre> 3035 * 3036 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 3037 */ putPathFilters(java.lang.String key, com.google.protobuf.Value value)3038 public Builder putPathFilters(java.lang.String key, com.google.protobuf.Value value) { 3039 if (key == null) { 3040 throw new NullPointerException("map key"); 3041 } 3042 if (value == null) { 3043 throw new NullPointerException("map value"); 3044 } 3045 internalGetMutablePathFilters().getMutableMap().put(key, value); 3046 bitField0_ |= 0x00000100; 3047 return this; 3048 } 3049 /** 3050 * 3051 * 3052 * <pre> 3053 * Set of filters to apply if `path` refers to array elements or nested array 3054 * elements in order to narrow down to a single unique element that is being 3055 * tested/modified. 3056 * This is intended to be an exact match per filter. To perform advanced 3057 * matching, use path_value_matchers. 3058 * * Example: 3059 * ``` 3060 * { 3061 * "/versions/*/name" : "it-123" 3062 * "/versions/*/targetSize/percent": 20 3063 * } 3064 * ``` 3065 * * Example: 3066 * ``` 3067 * { 3068 * "/bindings/*/role": "roles/owner" 3069 * "/bindings/*/condition" : null 3070 * } 3071 * ``` 3072 * * Example: 3073 * ``` 3074 * { 3075 * "/bindings/*/role": "roles/owner" 3076 * "/bindings/*/members/*" : ["x@example.com", "y@example.com"] 3077 * } 3078 * ``` 3079 * When both path_filters and path_value_matchers are set, an implicit AND 3080 * must be performed. 3081 * </pre> 3082 * 3083 * <code>map<string, .google.protobuf.Value> path_filters = 8;</code> 3084 */ putAllPathFilters( java.util.Map<java.lang.String, com.google.protobuf.Value> values)3085 public Builder putAllPathFilters( 3086 java.util.Map<java.lang.String, com.google.protobuf.Value> values) { 3087 internalGetMutablePathFilters().getMutableMap().putAll(values); 3088 bitField0_ |= 0x00000100; 3089 return this; 3090 } 3091 3092 private com.google.protobuf.MapField< 3093 java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> 3094 pathValueMatchers_; 3095 3096 private com.google.protobuf.MapField< 3097 java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> internalGetPathValueMatchers()3098 internalGetPathValueMatchers() { 3099 if (pathValueMatchers_ == null) { 3100 return com.google.protobuf.MapField.emptyMapField( 3101 PathValueMatchersDefaultEntryHolder.defaultEntry); 3102 } 3103 return pathValueMatchers_; 3104 } 3105 3106 private com.google.protobuf.MapField< 3107 java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> internalGetMutablePathValueMatchers()3108 internalGetMutablePathValueMatchers() { 3109 if (pathValueMatchers_ == null) { 3110 pathValueMatchers_ = 3111 com.google.protobuf.MapField.newMapField( 3112 PathValueMatchersDefaultEntryHolder.defaultEntry); 3113 } 3114 if (!pathValueMatchers_.isMutable()) { 3115 pathValueMatchers_ = pathValueMatchers_.copy(); 3116 } 3117 bitField0_ |= 0x00000200; 3118 onChanged(); 3119 return pathValueMatchers_; 3120 } 3121 getPathValueMatchersCount()3122 public int getPathValueMatchersCount() { 3123 return internalGetPathValueMatchers().getMap().size(); 3124 } 3125 /** 3126 * 3127 * 3128 * <pre> 3129 * Similar to path_filters, this contains set of filters to apply if `path` 3130 * field refers to array elements. This is meant to support value matching 3131 * beyond exact match. To perform exact match, use path_filters. 3132 * When both path_filters and path_value_matchers are set, an implicit AND 3133 * must be performed. 3134 * </pre> 3135 * 3136 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 3137 * </code> 3138 */ 3139 @java.lang.Override containsPathValueMatchers(java.lang.String key)3140 public boolean containsPathValueMatchers(java.lang.String key) { 3141 if (key == null) { 3142 throw new NullPointerException("map key"); 3143 } 3144 return internalGetPathValueMatchers().getMap().containsKey(key); 3145 } 3146 /** Use {@link #getPathValueMatchersMap()} instead. */ 3147 @java.lang.Override 3148 @java.lang.Deprecated 3149 public java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> getPathValueMatchers()3150 getPathValueMatchers() { 3151 return getPathValueMatchersMap(); 3152 } 3153 /** 3154 * 3155 * 3156 * <pre> 3157 * Similar to path_filters, this contains set of filters to apply if `path` 3158 * field refers to array elements. This is meant to support value matching 3159 * beyond exact match. To perform exact match, use path_filters. 3160 * When both path_filters and path_value_matchers are set, an implicit AND 3161 * must be performed. 3162 * </pre> 3163 * 3164 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 3165 * </code> 3166 */ 3167 @java.lang.Override 3168 public java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> getPathValueMatchersMap()3169 getPathValueMatchersMap() { 3170 return internalGetPathValueMatchers().getMap(); 3171 } 3172 /** 3173 * 3174 * 3175 * <pre> 3176 * Similar to path_filters, this contains set of filters to apply if `path` 3177 * field refers to array elements. This is meant to support value matching 3178 * beyond exact match. To perform exact match, use path_filters. 3179 * When both path_filters and path_value_matchers are set, an implicit AND 3180 * must be performed. 3181 * </pre> 3182 * 3183 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 3184 * </code> 3185 */ 3186 @java.lang.Override 3187 public /* nullable */ com.google.cloud.recommender.v1.ValueMatcher getPathValueMatchersOrDefault( java.lang.String key, com.google.cloud.recommender.v1.ValueMatcher defaultValue)3188 getPathValueMatchersOrDefault( 3189 java.lang.String key, 3190 /* nullable */ 3191 com.google.cloud.recommender.v1.ValueMatcher defaultValue) { 3192 if (key == null) { 3193 throw new NullPointerException("map key"); 3194 } 3195 java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> map = 3196 internalGetPathValueMatchers().getMap(); 3197 return map.containsKey(key) ? map.get(key) : defaultValue; 3198 } 3199 /** 3200 * 3201 * 3202 * <pre> 3203 * Similar to path_filters, this contains set of filters to apply if `path` 3204 * field refers to array elements. This is meant to support value matching 3205 * beyond exact match. To perform exact match, use path_filters. 3206 * When both path_filters and path_value_matchers are set, an implicit AND 3207 * must be performed. 3208 * </pre> 3209 * 3210 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 3211 * </code> 3212 */ 3213 @java.lang.Override getPathValueMatchersOrThrow( java.lang.String key)3214 public com.google.cloud.recommender.v1.ValueMatcher getPathValueMatchersOrThrow( 3215 java.lang.String key) { 3216 if (key == null) { 3217 throw new NullPointerException("map key"); 3218 } 3219 java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> map = 3220 internalGetPathValueMatchers().getMap(); 3221 if (!map.containsKey(key)) { 3222 throw new java.lang.IllegalArgumentException(); 3223 } 3224 return map.get(key); 3225 } 3226 clearPathValueMatchers()3227 public Builder clearPathValueMatchers() { 3228 bitField0_ = (bitField0_ & ~0x00000200); 3229 internalGetMutablePathValueMatchers().getMutableMap().clear(); 3230 return this; 3231 } 3232 /** 3233 * 3234 * 3235 * <pre> 3236 * Similar to path_filters, this contains set of filters to apply if `path` 3237 * field refers to array elements. This is meant to support value matching 3238 * beyond exact match. To perform exact match, use path_filters. 3239 * When both path_filters and path_value_matchers are set, an implicit AND 3240 * must be performed. 3241 * </pre> 3242 * 3243 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 3244 * </code> 3245 */ removePathValueMatchers(java.lang.String key)3246 public Builder removePathValueMatchers(java.lang.String key) { 3247 if (key == null) { 3248 throw new NullPointerException("map key"); 3249 } 3250 internalGetMutablePathValueMatchers().getMutableMap().remove(key); 3251 return this; 3252 } 3253 /** Use alternate mutation accessors instead. */ 3254 @java.lang.Deprecated 3255 public java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> getMutablePathValueMatchers()3256 getMutablePathValueMatchers() { 3257 bitField0_ |= 0x00000200; 3258 return internalGetMutablePathValueMatchers().getMutableMap(); 3259 } 3260 /** 3261 * 3262 * 3263 * <pre> 3264 * Similar to path_filters, this contains set of filters to apply if `path` 3265 * field refers to array elements. This is meant to support value matching 3266 * beyond exact match. To perform exact match, use path_filters. 3267 * When both path_filters and path_value_matchers are set, an implicit AND 3268 * must be performed. 3269 * </pre> 3270 * 3271 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 3272 * </code> 3273 */ putPathValueMatchers( java.lang.String key, com.google.cloud.recommender.v1.ValueMatcher value)3274 public Builder putPathValueMatchers( 3275 java.lang.String key, com.google.cloud.recommender.v1.ValueMatcher value) { 3276 if (key == null) { 3277 throw new NullPointerException("map key"); 3278 } 3279 if (value == null) { 3280 throw new NullPointerException("map value"); 3281 } 3282 internalGetMutablePathValueMatchers().getMutableMap().put(key, value); 3283 bitField0_ |= 0x00000200; 3284 return this; 3285 } 3286 /** 3287 * 3288 * 3289 * <pre> 3290 * Similar to path_filters, this contains set of filters to apply if `path` 3291 * field refers to array elements. This is meant to support value matching 3292 * beyond exact match. To perform exact match, use path_filters. 3293 * When both path_filters and path_value_matchers are set, an implicit AND 3294 * must be performed. 3295 * </pre> 3296 * 3297 * <code>map<string, .google.cloud.recommender.v1.ValueMatcher> path_value_matchers = 11; 3298 * </code> 3299 */ putAllPathValueMatchers( java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> values)3300 public Builder putAllPathValueMatchers( 3301 java.util.Map<java.lang.String, com.google.cloud.recommender.v1.ValueMatcher> values) { 3302 internalGetMutablePathValueMatchers().getMutableMap().putAll(values); 3303 bitField0_ |= 0x00000200; 3304 return this; 3305 } 3306 3307 @java.lang.Override setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)3308 public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { 3309 return super.setUnknownFields(unknownFields); 3310 } 3311 3312 @java.lang.Override mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)3313 public final Builder mergeUnknownFields( 3314 final com.google.protobuf.UnknownFieldSet unknownFields) { 3315 return super.mergeUnknownFields(unknownFields); 3316 } 3317 3318 // @@protoc_insertion_point(builder_scope:google.cloud.recommender.v1.Operation) 3319 } 3320 3321 // @@protoc_insertion_point(class_scope:google.cloud.recommender.v1.Operation) 3322 private static final com.google.cloud.recommender.v1.Operation DEFAULT_INSTANCE; 3323 3324 static { 3325 DEFAULT_INSTANCE = new com.google.cloud.recommender.v1.Operation(); 3326 } 3327 getDefaultInstance()3328 public static com.google.cloud.recommender.v1.Operation getDefaultInstance() { 3329 return DEFAULT_INSTANCE; 3330 } 3331 3332 private static final com.google.protobuf.Parser<Operation> PARSER = 3333 new com.google.protobuf.AbstractParser<Operation>() { 3334 @java.lang.Override 3335 public Operation parsePartialFrom( 3336 com.google.protobuf.CodedInputStream input, 3337 com.google.protobuf.ExtensionRegistryLite extensionRegistry) 3338 throws com.google.protobuf.InvalidProtocolBufferException { 3339 Builder builder = newBuilder(); 3340 try { 3341 builder.mergeFrom(input, extensionRegistry); 3342 } catch (com.google.protobuf.InvalidProtocolBufferException e) { 3343 throw e.setUnfinishedMessage(builder.buildPartial()); 3344 } catch (com.google.protobuf.UninitializedMessageException e) { 3345 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); 3346 } catch (java.io.IOException e) { 3347 throw new com.google.protobuf.InvalidProtocolBufferException(e) 3348 .setUnfinishedMessage(builder.buildPartial()); 3349 } 3350 return builder.buildPartial(); 3351 } 3352 }; 3353 parser()3354 public static com.google.protobuf.Parser<Operation> parser() { 3355 return PARSER; 3356 } 3357 3358 @java.lang.Override getParserForType()3359 public com.google.protobuf.Parser<Operation> getParserForType() { 3360 return PARSER; 3361 } 3362 3363 @java.lang.Override getDefaultInstanceForType()3364 public com.google.cloud.recommender.v1.Operation getDefaultInstanceForType() { 3365 return DEFAULT_INSTANCE; 3366 } 3367 } 3368