001// *************************************************************************************************************************** 002// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * 003// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * 004// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * 005// * with the License. You may obtain a copy of the License at * 006// * * 007// * http://www.apache.org/licenses/LICENSE-2.0 * 008// * * 009// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * 010// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * 011// * specific language governing permissions and limitations under the License. * 012// *************************************************************************************************************************** 013package org.apache.juneau.parser; 014 015import static org.apache.juneau.internal.CollectionUtils.*; 016import static org.apache.juneau.parser.InputStreamParser.*; 017import static org.apache.juneau.parser.ReaderParser.*; 018 019import java.lang.annotation.*; 020import java.lang.reflect.*; 021import java.nio.charset.*; 022import java.util.*; 023 024import org.apache.juneau.*; 025import org.apache.juneau.http.*; 026import org.apache.juneau.internal.*; 027import org.apache.juneau.reflect.*; 028import org.apache.juneau.svl.*; 029 030/** 031 * Builder class for creating instances of {@link ParserGroup}. 032 */ 033public class ParserGroupBuilder extends BeanContextBuilder { 034 035 private final List<Object> parsers; 036 037 /** 038 * Create an empty parser group builder. 039 */ 040 public ParserGroupBuilder() { 041 this.parsers = new ArrayList<>(); 042 } 043 044 /** 045 * Clone an existing parser group builder. 046 * 047 * @param copyFrom The parser group that we're copying settings and parsers from. 048 */ 049 public ParserGroupBuilder(ParserGroup copyFrom) { 050 super(copyFrom.getPropertyStore()); 051 this.parsers = new ArrayList<>(); 052 addReverse(parsers, copyFrom.getParsers()); 053 } 054 055 /** 056 * Registers the specified parsers with this group. 057 * 058 * @param p The parsers to append to this group. 059 * @return This object (for method chaining). 060 */ 061 public ParserGroupBuilder append(Class<?>...p) { 062 addReverse(parsers, p); 063 return this; 064 } 065 066 /** 067 * Registers the specified parsers with this group. 068 * 069 * <p> 070 * When passing in pre-instantiated parsers to this group, applying properties and transforms to the group 071 * do not affect them. 072 * 073 * @param p The parsers to append to this group. 074 * @return This object (for method chaining). 075 */ 076 public ParserGroupBuilder append(Parser...p) { 077 addReverse(parsers, p); 078 return this; 079 } 080 081 /** 082 * Registers the specified parsers with this group. 083 * 084 * <p> 085 * Objects can either be instances of parsers or parser classes. 086 * 087 * @param p The parsers to append to this group. 088 * @return This object (for method chaining). 089 */ 090 public ParserGroupBuilder append(List<Object> p) { 091 addReverse(parsers, p); 092 return this; 093 } 094 095 /** 096 * Registers the specified parsers with this group. 097 * 098 * <p> 099 * Objects can either be instances of parsers or parser classes. 100 * 101 * @param p The parsers to append to this group. 102 * @return This object (for method chaining). 103 */ 104 public ParserGroupBuilder append(Object...p) { 105 addReverse(parsers, p); 106 return this; 107 } 108 109 /** 110 * Creates a new {@link ParserGroup} object using a snapshot of the settings defined in this builder. 111 * 112 * <p> 113 * This method can be called multiple times to produce multiple parser groups. 114 * 115 * @return A new {@link ParserGroup} object. 116 */ 117 @Override /* Context */ 118 @SuppressWarnings("unchecked") 119 public ParserGroup build() { 120 List<Parser> l = new ArrayList<>(); 121 for (Object p : parsers) { 122 Class<? extends Parser> c = null; 123 PropertyStore ps = getPropertyStore(); 124 if (p instanceof Class) { 125 c = (Class<? extends Parser>)p; 126 l.add(ContextCache.INSTANCE.create(c, ps)); 127 } else { 128 l.add((Parser)p); 129 } 130 } 131 return new ParserGroup(getPropertyStore(), ArrayUtils.toReverseArray(Parser.class, l)); 132 } 133 134 //----------------------------------------------------------------------------------------------------------------- 135 // Properties 136 //----------------------------------------------------------------------------------------------------------------- 137 138 /** 139 * Configuration property: Auto-close streams. 140 * 141 * <p> 142 * If <jk>true</jk>, <l>InputStreams</l> and <l>Readers</l> passed into parsers will be closed 143 * after parsing is complete. 144 * 145 * <ul class='seealso'> 146 * <li class='jf'>{@link Parser#PARSER_autoCloseStreams} 147 * </ul> 148 * 149 * @param value 150 * The new value for this property. 151 * <br>The default value is <jk>false</jk>. 152 * @return This object (for method chaining). 153 */ 154 public ParserGroupBuilder autoCloseStreams(boolean value) { 155 return set(PARSER_autoCloseStreams, value); 156 } 157 158 /** 159 * Configuration property: Auto-close streams. 160 * <p> 161 * Shortcut for calling <code>autoCloseStreams(<jk>true</jk>)</code>. 162 * 163 * <ul class='seealso'> 164 * <li class='jf'>{@link Parser#PARSER_autoCloseStreams} 165 * </ul> 166 * 167 * @return This object (for method chaining). 168 */ 169 public ParserGroupBuilder autoCloseStreams() { 170 return set(PARSER_autoCloseStreams, true); 171 } 172 173 /** 174 * Configuration property: Debug output lines. 175 * 176 * When parse errors occur, this specifies the number of lines of input before and after the 177 * error location to be printed as part of the exception message. 178 * 179 * <ul class='seealso'> 180 * <li class='jf'>{@link Parser#PARSER_debugOutputLines} 181 * </ul> 182 * 183 * @param value 184 * The new value for this property. 185 * <br>The default value is <c>5</c>. 186 * @return This object (for method chaining). 187 */ 188 public ParserGroupBuilder debugOutputLines(int value) { 189 set(PARSER_debugOutputLines, value); 190 return this; 191 } 192 193 /** 194 * Configuration property: Parser listener. 195 * 196 * <p> 197 * Class used to listen for errors and warnings that occur during parsing. 198 * 199 * <ul class='seealso'> 200 * <li class='jf'>{@link Parser#PARSER_listener} 201 * </ul> 202 * 203 * @param value The new value for this property. 204 * @return This object (for method chaining). 205 */ 206 public ParserGroupBuilder listener(Class<? extends ParserListener> value) { 207 return set(PARSER_listener, value); 208 } 209 210 /** 211 * Configuration property: Strict mode. 212 * 213 * <p> 214 * If <jk>true</jk>, strict mode for the parsers are enabled. 215 * 216 * <ul class='seealso'> 217 * <li class='jf'>{@link Parser#PARSER_strict} 218 * </ul> 219 * 220 * @param value 221 * The new value for this property. 222 * <br>The default value is <jk>false</jk>. 223 * @return This object (for method chaining). 224 */ 225 public ParserGroupBuilder strict(boolean value) { 226 return set(PARSER_strict, value); 227 } 228 229 /** 230 * Configuration property: Strict mode. 231 * 232 * <p> 233 * Shortcut for calling <code>strict(<jk>true</jk>)</code>. 234 * 235 * <ul class='seealso'> 236 * <li class='jf'>{@link Parser#PARSER_strict} 237 * </ul> 238 * 239 * @return This object (for method chaining). 240 */ 241 public ParserGroupBuilder strict() { 242 return set(PARSER_strict, true); 243 } 244 245 /** 246 * Configuration property: Trim parsed strings. 247 * 248 * <p> 249 * If <jk>true</jk>, string values will be trimmed of whitespace using {@link String#trim()} before being added to 250 * the POJO. 251 * 252 * <ul class='seealso'> 253 * <li class='jf'>{@link Parser#PARSER_trimStrings} 254 * </ul> 255 * 256 * @param value 257 * The new value for this property. 258 * <br>The default value is <jk>false</jk>. 259 * @return This object (for method chaining). 260 */ 261 public ParserGroupBuilder trimStrings(boolean value) { 262 return set(PARSER_trimStrings, value); 263 } 264 265 /** 266 * Configuration property: Trim parsed strings. 267 * 268 * <p> 269 * Shortcut for calling <code>trimStrings(<jk>true</jk>)</code>. 270 * 271 * <ul class='seealso'> 272 * <li class='jf'>{@link Parser#PARSER_trimStrings} 273 * </ul> 274 * 275 * @return This object (for method chaining). 276 */ 277 public ParserGroupBuilder trimStrings() { 278 return set(PARSER_trimStrings, true); 279 } 280 281 /** 282 * Configuration property: Unbuffered. 283 * 284 * <p> 285 * If <jk>true</jk>, don't use internal buffering during parsing. 286 * 287 * <ul class='seealso'> 288 * <li class='jf'>{@link Parser#PARSER_unbuffered} 289 * </ul> 290 * 291 * @param value 292 * The new value for this property. 293 * <br>The default value is <jk>false</jk>. 294 * @return This object (for method chaining). 295 */ 296 public ParserGroupBuilder unbuffered(boolean value) { 297 return set(PARSER_unbuffered, value); 298 } 299 300 /** 301 * Configuration property: Unbuffered. 302 * 303 * <p> 304 * Shortcut for calling <code>unbuffered(<jk>true</jk>)</code>. 305 * 306 * <ul class='seealso'> 307 * <li class='jf'>{@link Parser#PARSER_unbuffered} 308 * </ul> 309 * 310 * @return This object (for method chaining). 311 */ 312 public ParserGroupBuilder unbuffered() { 313 return set(PARSER_unbuffered, true); 314 } 315 316 /** 317 * Configuration property: File charset. 318 * 319 * <p> 320 * The character set to use for reading <c>Files</c> from the file system. 321 * 322 * <ul class='seealso'> 323 * <li class='jf'>{@link ReaderParser#RPARSER_fileCharset} 324 * </ul> 325 * 326 * @param value 327 * The new value for this property. 328 * <br>The default value is <js>"DEFAULT"</js> which causes the system default to be used. 329 * @return This object (for method chaining). 330 */ 331 public ParserGroupBuilder fileCharset(Charset value) { 332 return set(RPARSER_fileCharset, value); 333 } 334 335 /** 336 * Configuration property: Input stream charset. 337 * 338 * <p> 339 * The character set to use for converting <c>InputStreams</c> and byte arrays to readers. 340 * 341 * <ul class='seealso'> 342 * <li class='jf'>{@link ReaderParser#RPARSER_streamCharset} 343 * </ul> 344 * 345 * @param value 346 * The new value for this property. 347 * <br>The default value is <js>"UTF-8"</js>. 348 * @return This object (for method chaining). 349 */ 350 public ParserGroupBuilder streamCharset(Charset value) { 351 return set(RPARSER_streamCharset, value); 352 } 353 354 /** 355 * Configuration property: Binary input format. 356 * 357 * <p> 358 * When using the {@link Parser#parse(Object,Class)} method on stream-based parsers and the input is a string, this defines the format to use 359 * when converting the string into a byte array. 360 * 361 * <ul class='seealso'> 362 * <li class='jf'>{@link InputStreamParser#ISPARSER_binaryFormat} 363 * </ul> 364 * 365 * @param value 366 * The new value for this property. 367 * <br>The default value is {@link BinaryFormat#HEX}. 368 * @return This object (for method chaining). 369 */ 370 public ParserGroupBuilder binaryFormat(BinaryFormat value) { 371 return set(ISPARSER_binaryFormat, value); 372 } 373 374 @Override /* BeanContextBuilder */ 375 public ParserGroupBuilder annotations(Annotation...values) { 376 super.annotations(values); 377 return this; 378 } 379 380 @Override /* BeanContextBuilder */ 381 public ParserGroupBuilder beanClassVisibility(Visibility value) { 382 super.beanClassVisibility(value); 383 return this; 384 } 385 386 @Override /* BeanContextBuilder */ 387 public ParserGroupBuilder beanConstructorVisibility(Visibility value) { 388 super.beanConstructorVisibility(value); 389 return this; 390 } 391 392 @Override /* BeanContextBuilder */ 393 @Deprecated 394 public ParserGroupBuilder beanDictionary(Class<?>...values) { 395 super.beanDictionary(values); 396 return this; 397 } 398 399 @Override /* BeanContextBuilder */ 400 @Deprecated 401 public ParserGroupBuilder beanDictionary(Object...values) { 402 super.beanDictionary(values); 403 return this; 404 } 405 406 @Override /* BeanContextBuilder */ 407 @Deprecated 408 public ParserGroupBuilder beanDictionaryReplace(Class<?>...values) { 409 super.beanDictionaryReplace(values); 410 return this; 411 } 412 413 @Override /* BeanContextBuilder */ 414 @Deprecated 415 public ParserGroupBuilder beanDictionaryReplace(Object...values) { 416 super.beanDictionaryReplace(values); 417 return this; 418 } 419 420 @Override /* BeanContextBuilder */ 421 @Deprecated 422 public ParserGroupBuilder beanDictionaryRemove(Class<?>...values) { 423 super.beanDictionaryRemove(values); 424 return this; 425 } 426 427 @Override /* BeanContextBuilder */ 428 @Deprecated 429 public ParserGroupBuilder beanDictionaryRemove(Object...values) { 430 super.beanDictionaryRemove(values); 431 return this; 432 } 433 434 @Override /* BeanContextBuilder */ 435 public ParserGroupBuilder beanFieldVisibility(Visibility value) { 436 super.beanFieldVisibility(value); 437 return this; 438 } 439 440 @Override /* BeanContextBuilder */ 441 public ParserGroupBuilder beanFilters(Class<?>...values) { 442 super.beanFilters(values); 443 return this; 444 } 445 446 @Override /* BeanContextBuilder */ 447 public ParserGroupBuilder beanFilters(Object...values) { 448 super.beanFilters(values); 449 return this; 450 } 451 452 @Override /* BeanContextBuilder */ 453 public ParserGroupBuilder beanFiltersReplace(Class<?>...values) { 454 super.beanFiltersReplace(values); 455 return this; 456 } 457 458 @Override /* BeanContextBuilder */ 459 public ParserGroupBuilder beanFiltersReplace(Object...values) { 460 super.beanFiltersReplace(values); 461 return this; 462 } 463 464 @Override /* BeanContextBuilder */ 465 public ParserGroupBuilder beanFiltersRemove(Class<?>...values) { 466 super.beanFiltersRemove(values); 467 return this; 468 } 469 470 @Override /* BeanContextBuilder */ 471 public ParserGroupBuilder beanFiltersRemove(Object...values) { 472 super.beanFiltersRemove(values); 473 return this; 474 } 475 476 @Override /* BeanContextBuilder */ 477 public ParserGroupBuilder beanMapPutReturnsOldValue(boolean value) { 478 super.beanMapPutReturnsOldValue(value); 479 return this; 480 } 481 482 @Override /* BeanContextBuilder */ 483 public ParserGroupBuilder beanMapPutReturnsOldValue() { 484 super.beanMapPutReturnsOldValue(); 485 return this; 486 } 487 488 @Override /* BeanContextBuilder */ 489 public ParserGroupBuilder beanMethodVisibility(Visibility value) { 490 super.beanMethodVisibility(value); 491 return this; 492 } 493 494 @Override /* BeanContextBuilder */ 495 public ParserGroupBuilder beansRequireDefaultConstructor(boolean value) { 496 super.beansRequireDefaultConstructor(value); 497 return this; 498 } 499 500 @Override /* BeanContextBuilder */ 501 public ParserGroupBuilder beansRequireDefaultConstructor() { 502 super.beansRequireDefaultConstructor(); 503 return this; 504 } 505 506 @Override /* BeanContextBuilder */ 507 public ParserGroupBuilder beansRequireSerializable(boolean value) { 508 super.beansRequireSerializable(value); 509 return this; 510 } 511 512 @Override /* BeanContextBuilder */ 513 public ParserGroupBuilder beansRequireSerializable() { 514 super.beansRequireSerializable(); 515 return this; 516 } 517 518 @Override /* BeanContextBuilder */ 519 public ParserGroupBuilder beansRequireSettersForGetters(boolean value) { 520 super.beansRequireSettersForGetters(value); 521 return this; 522 } 523 524 @Override /* BeanContextBuilder */ 525 public ParserGroupBuilder beansRequireSettersForGetters() { 526 super.beansRequireSettersForGetters(); 527 return this; 528 } 529 530 @Override /* BeanContextBuilder */ 531 public ParserGroupBuilder beansRequireSomeProperties(boolean value) { 532 super.beansRequireSomeProperties(value); 533 return this; 534 } 535 536 @Override /* BeanContextBuilder */ 537 public ParserGroupBuilder beanTypePropertyName(String value) { 538 super.beanTypePropertyName(value); 539 return this; 540 } 541 542 @Override /* BeanContextBuilder */ 543 public ParserGroupBuilder bpi(Class<?> beanClass, String value) { 544 super.bpi(beanClass, value); 545 return this; 546 } 547 548 @Override /* BeanContextBuilder */ 549 public ParserGroupBuilder bpi(Map<String,String> values) { 550 super.bpi(values); 551 return this; 552 } 553 554 @Override /* BeanContextBuilder */ 555 public ParserGroupBuilder bpi(String beanClassName, String value) { 556 super.bpi(beanClassName, value); 557 return this; 558 } 559 560 @Override /* BeanContextBuilder */ 561 public ParserGroupBuilder bpx(Class<?> beanClass, String properties) { 562 super.bpx(beanClass, properties); 563 return this; 564 } 565 566 @Override /* BeanContextBuilder */ 567 public ParserGroupBuilder bpx(Map<String,String> values) { 568 super.bpx(values); 569 return this; 570 } 571 572 @Override /* BeanContextBuilder */ 573 public ParserGroupBuilder bpx(String beanClassName, String value) { 574 super.bpx(beanClassName, value); 575 return this; 576 } 577 578 @Override /* BeanContextBuilder */ 579 public ParserGroupBuilder bpro(Class<?> beanClass, String value) { 580 super.bpro(beanClass, value); 581 return this; 582 } 583 584 @Override /* BeanContextBuilder */ 585 public ParserGroupBuilder bpro(Map<String,String> values) { 586 super.bpro(values); 587 return this; 588 } 589 590 @Override /* BeanContextBuilder */ 591 public ParserGroupBuilder bpro(String beanClassName, String value) { 592 super.bpro(beanClassName, value); 593 return this; 594 } 595 596 @Override /* BeanContextBuilder */ 597 public ParserGroupBuilder bpwo(Class<?> beanClass, String properties) { 598 super.bpwo(beanClass, properties); 599 return this; 600 } 601 602 @Override /* BeanContextBuilder */ 603 public ParserGroupBuilder bpwo(Map<String,String> values) { 604 super.bpwo(values); 605 return this; 606 } 607 608 @Override /* BeanContextBuilder */ 609 public ParserGroupBuilder bpwo(String beanClassName, String value) { 610 super.bpwo(beanClassName, value); 611 return this; 612 } 613 614 @Override /* BeanContextBuilder */ 615 public ParserGroupBuilder debug() { 616 super.debug(); 617 return this; 618 } 619 620 @Override /* BeanContextBuilder */ 621 public ParserGroupBuilder dictionary(Class<?>...values) { 622 super.dictionary(values); 623 return this; 624 } 625 626 @Override /* BeanContextBuilder */ 627 public ParserGroupBuilder dictionary(Object...values) { 628 super.dictionary(values); 629 return this; 630 } 631 632 @Override /* BeanContextBuilder */ 633 public ParserGroupBuilder dictionaryReplace(Class<?>...values) { 634 super.dictionaryReplace(values); 635 return this; 636 } 637 638 @Override /* BeanContextBuilder */ 639 public ParserGroupBuilder dictionaryReplace(Object...values) { 640 super.dictionaryReplace(values); 641 return this; 642 } 643 644 @Override /* BeanContextBuilder */ 645 public ParserGroupBuilder dictionaryRemove(Class<?>...values) { 646 super.dictionaryRemove(values); 647 return this; 648 } 649 650 @Override /* BeanContextBuilder */ 651 public ParserGroupBuilder dictionaryRemove(Object...values) { 652 super.dictionaryRemove(values); 653 return this; 654 } 655 656 @Override /* BeanContextBuilder */ 657 public <T> ParserGroupBuilder example(Class<T> c, T o) { 658 super.example(c, o); 659 return this; 660 } 661 662 @Override /* BeanContextBuilder */ 663 public <T> ParserGroupBuilder exampleJson(Class<T> c, String value) { 664 super.exampleJson(c, value); 665 return this; 666 } 667 668 @Override /* BeanContextBuilder */ 669 public ParserGroupBuilder ignoreInvocationExceptionsOnGetters(boolean value) { 670 super.ignoreInvocationExceptionsOnGetters(value); 671 return this; 672 } 673 674 @Override /* BeanContextBuilder */ 675 public ParserGroupBuilder ignoreInvocationExceptionsOnGetters() { 676 super.ignoreInvocationExceptionsOnGetters(); 677 return this; 678 } 679 680 @Override /* BeanContextBuilder */ 681 public ParserGroupBuilder ignoreInvocationExceptionsOnSetters(boolean value) { 682 super.ignoreInvocationExceptionsOnSetters(value); 683 return this; 684 } 685 686 @Override /* BeanContextBuilder */ 687 public ParserGroupBuilder ignoreInvocationExceptionsOnSetters() { 688 super.ignoreInvocationExceptionsOnSetters(); 689 return this; 690 } 691 692 @Override /* BeanContextBuilder */ 693 public ParserGroupBuilder ignorePropertiesWithoutSetters(boolean value) { 694 super.ignorePropertiesWithoutSetters(value); 695 return this; 696 } 697 698 @Override /* BeanContextBuilder */ 699 public ParserGroupBuilder ignoreUnknownBeanProperties(boolean value) { 700 super.ignoreUnknownBeanProperties(value); 701 return this; 702 } 703 704 @Override /* BeanContextBuilder */ 705 public ParserGroupBuilder ignoreUnknownBeanProperties() { 706 super.ignoreUnknownBeanProperties(); 707 return this; 708 } 709 710 @Override /* BeanContextBuilder */ 711 public ParserGroupBuilder ignoreUnknownNullBeanProperties(boolean value) { 712 super.ignoreUnknownNullBeanProperties(value); 713 return this; 714 } 715 716 @Override /* BeanContextBuilder */ 717 public ParserGroupBuilder implClass(Class<?> interfaceClass, Class<?> implClass) { 718 super.implClass(interfaceClass, implClass); 719 return this; 720 } 721 722 @Override /* BeanContextBuilder */ 723 public ParserGroupBuilder implClasses(Map<String,Class<?>> values) { 724 super.implClasses(values); 725 return this; 726 } 727 728 @Override /* BeanContextBuilder */ 729 public ParserGroupBuilder locale(Locale value) { 730 super.locale(value); 731 return this; 732 } 733 734 @Override /* BeanContextBuilder */ 735 public ParserGroupBuilder mediaType(MediaType value) { 736 super.mediaType(value); 737 return this; 738 } 739 740 @Override /* BeanContextBuilder */ 741 public ParserGroupBuilder notBeanClasses(Class<?>...values) { 742 super.notBeanClasses(values); 743 return this; 744 } 745 746 @Override /* BeanContextBuilder */ 747 public ParserGroupBuilder notBeanClasses(Object...values) { 748 super.notBeanClasses(values); 749 return this; 750 } 751 752 @Override /* BeanContextBuilder */ 753 public ParserGroupBuilder notBeanClassesReplace(Class<?>...values) { 754 super.notBeanClassesReplace(values); 755 return this; 756 } 757 758 @Override /* BeanContextBuilder */ 759 public ParserGroupBuilder notBeanClassesReplace(Object...values) { 760 super.notBeanClassesReplace(values); 761 return this; 762 } 763 764 @Override /* BeanContextBuilder */ 765 public ParserGroupBuilder notBeanClassesRemove(Class<?>...values) { 766 super.notBeanClassesRemove(values); 767 return this; 768 } 769 770 @Override /* BeanContextBuilder */ 771 public ParserGroupBuilder notBeanClassesRemove(Object...values) { 772 super.notBeanClassesRemove(values); 773 return this; 774 } 775 776 @Override /* BeanContextBuilder */ 777 public ParserGroupBuilder notBeanPackages(Object...values) { 778 super.notBeanPackages(values); 779 return this; 780 } 781 782 @Override /* BeanContextBuilder */ 783 public ParserGroupBuilder notBeanPackages(String...values) { 784 super.notBeanPackages(values); 785 return this; 786 } 787 788 @Override /* BeanContextBuilder */ 789 public ParserGroupBuilder notBeanPackagesReplace(String...values) { 790 super.notBeanPackagesReplace(values); 791 return this; 792 } 793 794 @Override /* BeanContextBuilder */ 795 public ParserGroupBuilder notBeanPackagesReplace(Object...values) { 796 super.notBeanPackagesReplace(values); 797 return this; 798 } 799 800 @Override /* BeanContextBuilder */ 801 public ParserGroupBuilder notBeanPackagesRemove(String...values) { 802 super.notBeanPackagesRemove(values); 803 return this; 804 } 805 806 @Override /* BeanContextBuilder */ 807 public ParserGroupBuilder notBeanPackagesRemove(Object...values) { 808 super.notBeanPackagesRemove(values); 809 return this; 810 } 811 812 @Override /* BeanContextBuilder */ 813 public ParserGroupBuilder pojoSwaps(Class<?>...values) { 814 super.pojoSwaps(values); 815 return this; 816 } 817 818 @Override /* BeanContextBuilder */ 819 public ParserGroupBuilder pojoSwaps(Object...values) { 820 super.pojoSwaps(values); 821 return this; 822 } 823 824 @Override /* BeanContextBuilder */ 825 public ParserGroupBuilder pojoSwapsReplace(Class<?>...values) { 826 super.pojoSwapsReplace(values); 827 return this; 828 } 829 830 @Override /* BeanContextBuilder */ 831 public ParserGroupBuilder pojoSwapsReplace(Object...values) { 832 super.pojoSwapsReplace(values); 833 return this; 834 } 835 836 @Override /* BeanContextBuilder */ 837 public ParserGroupBuilder pojoSwapsRemove(Class<?>...values) { 838 super.pojoSwapsRemove(values); 839 return this; 840 } 841 842 @Override /* BeanContextBuilder */ 843 public ParserGroupBuilder pojoSwapsRemove(Object...values) { 844 super.pojoSwapsRemove(values); 845 return this; 846 } 847 848 @Override /* BeanContextBuilder */ 849 public ParserGroupBuilder sortProperties(boolean value) { 850 super.sortProperties(value); 851 return this; 852 } 853 854 @Override /* BeanContextBuilder */ 855 public ParserGroupBuilder sortProperties() { 856 super.sortProperties(); 857 return this; 858 } 859 860 @Override /* BeanContextBuilder */ 861 public ParserGroupBuilder timeZone(TimeZone value) { 862 super.timeZone(value); 863 return this; 864 } 865 866 @Override /* BeanContextBuilder */ 867 public ParserGroupBuilder useEnumNames(boolean value) { 868 super.useEnumNames(value); 869 return this; 870 } 871 872 @Override /* BeanContextBuilder */ 873 public ParserGroupBuilder useEnumNames() { 874 super.useEnumNames(); 875 return this; 876 } 877 878 @Override /* BeanContextBuilder */ 879 public ParserGroupBuilder useInterfaceProxies(boolean value) { 880 super.useInterfaceProxies(value); 881 return this; 882 } 883 884 @Override /* BeanContextBuilder */ 885 public ParserGroupBuilder useJavaBeanIntrospector(boolean value) { 886 super.useJavaBeanIntrospector(value); 887 return this; 888 } 889 890 @Override /* BeanContextBuilder */ 891 public ParserGroupBuilder useJavaBeanIntrospector() { 892 super.useJavaBeanIntrospector(); 893 return this; 894 } 895 896 @Override /* ContextBuilder */ 897 public ParserGroupBuilder set(String name, Object value) { 898 super.set(name, value); 899 return this; 900 } 901 902 @Override /* ContextBuilder */ 903 public ParserGroupBuilder set(Map<String,Object> properties) { 904 super.set(properties); 905 return this; 906 } 907 908 @Override /* ContextBuilder */ 909 public ParserGroupBuilder add(Map<String,Object> properties) { 910 super.add(properties); 911 return this; 912 } 913 914 @Override /* ContextBuilder */ 915 public ParserGroupBuilder addTo(String name, Object value) { 916 super.addTo(name, value); 917 return this; 918 } 919 920 @Override /* ContextBuilder */ 921 public ParserGroupBuilder addTo(String name, String key, Object value) { 922 super.addTo(name, key, value); 923 return this; 924 } 925 926 @Override /* ContextBuilder */ 927 public ParserGroupBuilder removeFrom(String name, Object value) { 928 super.removeFrom(name, value); 929 return this; 930 } 931 932 @Override /* ContextBuilder */ 933 public ParserGroupBuilder apply(PropertyStore copyFrom) { 934 super.apply(copyFrom); 935 return this; 936 } 937 938 @Override /* ContextBuilder */ 939 public ParserGroupBuilder applyAnnotations(AnnotationList al, VarResolverSession vrs) { 940 super.applyAnnotations(al, vrs); 941 return this; 942 } 943 944 @Override /* ContextBuilder */ 945 public ParserGroupBuilder applyAnnotations(Class<?>...fromClasses) { 946 super.applyAnnotations(fromClasses); 947 return this; 948 } 949 950 @Override /* ContextBuilder */ 951 public ParserGroupBuilder applyAnnotations(Method...fromMethods) { 952 super.applyAnnotations(fromMethods); 953 return this; 954 } 955}