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.html;
014
015import static org.apache.juneau.html.HtmlSerializer.*;
016
017import java.util.*;
018
019import org.apache.juneau.*;
020import org.apache.juneau.http.*;
021import org.apache.juneau.serializer.*;
022import org.apache.juneau.xml.*;
023
024/**
025 * Builder class for building instances of HTML serializers.
026 */
027public class HtmlSerializerBuilder extends XmlSerializerBuilder {
028
029   /**
030    * Constructor, default settings.
031    */
032   public HtmlSerializerBuilder() {
033      super();
034   }
035
036   /**
037    * Constructor.
038    *
039    * @param ps The initial configuration settings for this builder.
040    */
041   public HtmlSerializerBuilder(PropertyStore ps) {
042      super(ps);
043   }
044
045   @Override /* ContextBuilder */
046   public HtmlSerializer build() {
047      return build(HtmlSerializer.class);
048   }
049
050
051   //-----------------------------------------------------------------------------------------------------------------
052   // Properties
053   //-----------------------------------------------------------------------------------------------------------------
054
055   /**
056    * Configuration property:  Add key/value headers on bean/map tables.
057    *
058    * <h5 class='section'>See Also:</h5>
059    * <ul>
060    *    <li class='jf'>{@link HtmlSerializer#HTML_addKeyValueTableHeaders}
061    * </ul>
062    *
063    * @param value
064    *    The new value for this property.
065    *    <br>The default is <jk>false</jk>.
066    * @return This object (for method chaining).
067    */
068   public HtmlSerializerBuilder addKeyValueTableHeaders(boolean value) {
069      return set(HTML_addKeyValueTableHeaders, value);
070   }
071
072   /**
073    * Configuration property:  Add key/value headers on bean/map tables.
074    *
075    * <p>
076    * Shortcut for calling <code>addKeyValueTableHeaders(<jk>true</jk>)</code>.
077    *
078    * <h5 class='section'>See Also:</h5>
079    * <ul>
080    *    <li class='jf'>{@link HtmlSerializer#HTML_addKeyValueTableHeaders}
081    * </ul>
082    *
083    * @return This object (for method chaining).
084    */
085   public HtmlSerializerBuilder addKeyValueTableHeaders() {
086      return set(HTML_addKeyValueTableHeaders, true);
087   }
088
089   /**
090    * Configuration property:  Look for URLs in {@link String Strings}.
091    *
092    * <p>
093    * If a string looks like a URL (e.g. starts with <js>"http://"</js> or <js>"https://"</js>), then treat it like a URL
094    * and make it into a hyperlink based on the rules specified by {@link HtmlSerializer#HTML_uriAnchorText}.
095    *
096    * <h5 class='section'>See Also:</h5>
097    * <ul>
098    *    <li class='jf'>{@link HtmlSerializer#HTML_detectLinksInStrings}
099    * </ul>
100    *
101    * @param value
102    *    The new value for this property.
103    *    <br>The default is <jk>true</jk>.
104    * @return This object (for method chaining).
105    */
106   public HtmlSerializerBuilder detectLinksInStrings(boolean value) {
107      return set(HTML_detectLinksInStrings, value);
108   }
109
110   /**
111    * Configuration property:  Link label parameter name.
112    *
113    * <p>
114    * The parameter name to look for when resolving link labels via {@link HtmlSerializer#HTML_detectLabelParameters}.
115    *
116    * <h5 class='section'>See Also:</h5>
117    * <ul>
118    *    <li class='jf'>{@link HtmlSerializer#HTML_labelParameter}
119    * </ul>
120    *
121    * @param value
122    *    The new value for this property.
123    *    <br>The default is <js>"label"</js>.
124    * @return This object (for method chaining).
125    */
126   public HtmlSerializerBuilder labelParameter(String value) {
127      return set(HTML_labelParameter, value);
128   }
129
130   /**
131    * Configuration property:  Look for link labels in URIs.
132    *
133    * <p>
134    * If the URL has a label parameter (e.g. <js>"?label=foobar"</js>), then use that as the anchor text of the link.
135    *
136    * <h5 class='section'>See Also:</h5>
137    * <ul>
138    *    <li class='jf'>{@link HtmlSerializer#HTML_detectLabelParameters}
139    * </ul>
140    *
141    * @param value
142    *    The new value for this property.
143    *    <br>The default is <jk>true</jk>.
144    * @return This object (for method chaining).
145    */
146   public HtmlSerializerBuilder detectLabelParameters(boolean value) {
147      return set(HTML_detectLabelParameters, value);
148   }
149
150   /**
151    * Configuration property:  Anchor text source.
152    *
153    * <p>
154    * When creating anchor tags (e.g. <code><xt>&lt;a</xt> <xa>href</xa>=<xs>'...'</xs><xt>&gt;</xt>text<xt>&lt;/a&gt;</xt></code>)
155    * in HTML, this setting defines what to set the inner text to.
156    *
157    * <h5 class='section'>See Also:</h5>
158    * <ul>
159    *    <li class='jf'>{@link HtmlSerializer#HTML_uriAnchorText}
160    * </ul>
161    *
162    * @param value
163    *    The new value for this property.
164    *    <br>The default is {@link AnchorText#TO_STRING}.
165    * @return This object (for method chaining).
166    */
167   public HtmlSerializerBuilder uriAnchorText(AnchorText value) {
168      return set(HTML_uriAnchorText, value);
169   }
170
171   /**
172    * Configuration property:  Anchor text source.
173    *
174    * <p>
175    * Same as {@link #uriAnchorText(AnchorText)} but takes in a string.
176    *
177    * <h5 class='section'>See Also:</h5>
178    * <ul>
179    *    <li class='jf'>{@link HtmlSerializer#HTML_uriAnchorText}
180    * </ul>
181    *
182    * @param value
183    *    The new value for this property.
184    *    <br>The default is {@link AnchorText#TO_STRING}.
185    * @return This object (for method chaining).
186    */
187   public HtmlSerializerBuilder uriAnchorText(String value) {
188      return set(HTML_uriAnchorText, value);
189   }
190
191   @Override /* XmlSerializerBuilder */
192   public HtmlSerializerBuilder addNamespaceUrisToRoot(boolean value) {
193      super.addNamespaceUrisToRoot(value);
194      return this;
195   }
196
197   @Override /* XmlSerializerBuilder */
198   public HtmlSerializerBuilder addNamespaceUrisToRoot() {
199      super.addNamespaceUrisToRoot();
200      return this;
201   }
202
203   @Override /* XmlSerializerBuilder */
204   public HtmlSerializerBuilder autoDetectNamespaces(boolean value) {
205      super.autoDetectNamespaces(value);
206      return this;
207   }
208
209   @Override /* XmlSerializerBuilder */
210   public HtmlSerializerBuilder defaultNamespace(String value) {
211      super.defaultNamespace(value);
212      return this;
213   }
214
215   @Override /* XmlSerializerBuilder */
216   public HtmlSerializerBuilder enableNamespaces(boolean value) {
217      super.enableNamespaces(value);
218      return this;
219   }
220
221   @Override /* XmlSerializerBuilder */
222   public HtmlSerializerBuilder namespaces(Namespace...values) {
223      super.namespaces(values);
224      return this;
225   }
226
227   @Override /* XmlSerializerBuilder */
228   public HtmlSerializerBuilder xsNamespace(Namespace value) {
229      super.xsNamespace(value);
230      return this;
231   }
232
233   @Override /* SerializerBuilder */
234   public HtmlSerializerBuilder addBeanTypes(boolean value) {
235      super.addBeanTypes(value);
236      return this;
237   }
238
239   @Override /* SerializerBuilder */
240   public HtmlSerializerBuilder addBeanTypes() {
241      super.addBeanTypes();
242      return this;
243   }
244
245   @Override /* SerializerBuilder */
246   public HtmlSerializerBuilder addRootType(boolean value) {
247      super.addRootType(value);
248      return this;
249   }
250
251   @Override /* SerializerBuilder */
252   public HtmlSerializerBuilder addRootType() {
253      super.addRootType();
254      return this;
255   }
256
257   @Override /* SerializerBuilder */
258   public HtmlSerializerBuilder detectRecursions(boolean value) {
259      super.detectRecursions(value);
260      return this;
261   }
262
263   @Override /* SerializerBuilder */
264   public HtmlSerializerBuilder detectRecursions() {
265      super.detectRecursions();
266      return this;
267   }
268
269   @Override /* SerializerBuilder */
270   public HtmlSerializerBuilder ignoreRecursions(boolean value) {
271      super.ignoreRecursions(value);
272      return this;
273   }
274
275   @Override /* SerializerBuilder */
276   public HtmlSerializerBuilder ignoreRecursions() {
277      super.ignoreRecursions();
278      return this;
279   }
280   @Override /* SerializerBuilder */
281   public HtmlSerializerBuilder initialDepth(int value) {
282      super.initialDepth(value);
283      return this;
284   }
285
286   @Override /* SerializerBuilder */
287   public HtmlSerializerBuilder listener(Class<? extends SerializerListener> value) {
288      super.listener(value);
289      return this;
290   }
291
292   @Override /* SerializerBuilder */
293   public HtmlSerializerBuilder maxDepth(int value) {
294      super.maxDepth(value);
295      return this;
296   }
297
298   @Override /* SerializerBuilder */
299   public HtmlSerializerBuilder maxIndent(int value) {
300      super.maxIndent(value);
301      return this;
302   }
303
304   @Override /* SerializerBuilder */
305   public HtmlSerializerBuilder quoteChar(char value) {
306      super.quoteChar(value);
307      return this;
308   }
309
310   @Override /* SerializerBuilder */
311   public HtmlSerializerBuilder sortCollections(boolean value) {
312      super.sortCollections(value);
313      return this;
314   }
315
316   @Override /* SerializerBuilder */
317   public HtmlSerializerBuilder sortCollections() {
318      super.sortCollections();
319      return this;
320   }
321
322   @Override /* SerializerBuilder */
323   public HtmlSerializerBuilder sortMaps(boolean value) {
324      super.sortMaps(value);
325      return this;
326   }
327
328   @Override /* SerializerBuilder */
329   public HtmlSerializerBuilder sortMaps() {
330      super.sortMaps();
331      return this;
332   }
333
334   @Override /* SerializerBuilder */
335   public HtmlSerializerBuilder sq() {
336      super.sq();
337      return this;
338   }
339
340   @Override /* SerializerBuilder */
341   public HtmlSerializerBuilder trimEmptyCollections(boolean value) {
342      super.trimEmptyCollections(value);
343      return this;
344   }
345
346   @Override /* SerializerBuilder */
347   public HtmlSerializerBuilder trimEmptyCollections() {
348      super.trimEmptyCollections();
349      return this;
350   }
351
352   @Override /* SerializerBuilder */
353   public HtmlSerializerBuilder trimEmptyMaps(boolean value) {
354      super.trimEmptyMaps(value);
355      return this;
356   }
357
358   @Override /* SerializerBuilder */
359   public HtmlSerializerBuilder trimEmptyMaps() {
360      super.trimEmptyMaps();
361      return this;
362   }
363
364   @Override /* SerializerBuilder */
365   public HtmlSerializerBuilder trimNullProperties(boolean value) {
366      super.trimNullProperties(value);
367      return this;
368   }
369
370   @Override /* SerializerBuilder */
371   public HtmlSerializerBuilder trimStrings(boolean value) {
372      super.trimStrings(value);
373      return this;
374   }
375
376   @Override /* SerializerBuilder */
377   public HtmlSerializerBuilder trimStrings() {
378      super.trimStrings();
379      return this;
380   }
381
382   @Override /* SerializerBuilder */
383   public HtmlSerializerBuilder uriContext(UriContext value) {
384      super.uriContext(value);
385      return this;
386   }
387
388   @Override /* SerializerBuilder */
389   public HtmlSerializerBuilder uriRelativity(UriRelativity value) {
390      super.uriRelativity(value);
391      return this;
392   }
393
394   @Override /* SerializerBuilder */
395   public HtmlSerializerBuilder uriResolution(UriResolution value) {
396      super.uriResolution(value);
397      return this;
398   }
399
400   @Override /* SerializerBuilder */
401   public HtmlSerializerBuilder useWhitespace(boolean value) {
402      super.useWhitespace(value);
403      return this;
404   }
405
406   @Override /* SerializerBuilder */
407   public HtmlSerializerBuilder useWhitespace() {
408      super.useWhitespace();
409      return this;
410   }
411
412   @Override /* SerializerBuilder */
413   public HtmlSerializerBuilder ws() {
414      super.ws();
415      return this;
416   }
417
418   @Override /* BeanContextBuilder */
419   public HtmlSerializerBuilder beanClassVisibility(Visibility value) {
420      super.beanClassVisibility(value);
421      return this;
422   }
423
424   @Override /* BeanContextBuilder */
425   public HtmlSerializerBuilder beanConstructorVisibility(Visibility value) {
426      super.beanConstructorVisibility(value);
427      return this;
428   }
429
430   @Override /* BeanContextBuilder */
431   public HtmlSerializerBuilder beanDictionary(boolean append, Object...values) {
432      super.beanDictionary(append, values);
433      return this;
434   }
435
436   @Override /* BeanContextBuilder */
437   public HtmlSerializerBuilder beanDictionary(Class<?>...values) {
438      super.beanDictionary(values);
439      return this;
440   }
441
442   @Override /* BeanContextBuilder */
443   public HtmlSerializerBuilder beanDictionary(Object...values) {
444      super.beanDictionary(values);
445      return this;
446   }
447
448   @Override /* BeanContextBuilder */
449   public HtmlSerializerBuilder beanDictionaryRemove(Object...values) {
450      super.beanDictionaryRemove(values);
451      return this;
452   }
453
454   @Override /* BeanContextBuilder */
455   public HtmlSerializerBuilder beanFieldVisibility(Visibility value) {
456      super.beanFieldVisibility(value);
457      return this;
458   }
459
460   @Override /* BeanContextBuilder */
461   public HtmlSerializerBuilder beanFilters(boolean append, Object...values) {
462      super.beanFilters(append, values);
463      return this;
464   }
465
466   @Override /* BeanContextBuilder */
467   public HtmlSerializerBuilder beanFilters(Class<?>...values) {
468      super.beanFilters(values);
469      return this;
470   }
471
472   @Override /* BeanContextBuilder */
473   public HtmlSerializerBuilder beanFilters(Object...values) {
474      super.beanFilters(values);
475      return this;
476   }
477
478   @Override /* BeanContextBuilder */
479   public HtmlSerializerBuilder beanFiltersRemove(Object...values) {
480      super.beanFiltersRemove(values);
481      return this;
482   }
483
484   @Override /* BeanContextBuilder */
485   public HtmlSerializerBuilder beanMapPutReturnsOldValue(boolean value) {
486      super.beanMapPutReturnsOldValue(value);
487      return this;
488   }
489
490   @Override /* BeanContextBuilder */
491   public HtmlSerializerBuilder beanMapPutReturnsOldValue() {
492      super.beanMapPutReturnsOldValue();
493      return this;
494   }
495
496   @Override /* BeanContextBuilder */
497   public HtmlSerializerBuilder beanMethodVisibility(Visibility value) {
498      super.beanMethodVisibility(value);
499      return this;
500   }
501
502   @Override /* BeanContextBuilder */
503   public HtmlSerializerBuilder beansRequireDefaultConstructor(boolean value) {
504      super.beansRequireDefaultConstructor(value);
505      return this;
506   }
507
508   @Override /* BeanContextBuilder */
509   public HtmlSerializerBuilder beansRequireDefaultConstructor() {
510      super.beansRequireDefaultConstructor();
511      return this;
512   }
513
514   @Override /* BeanContextBuilder */
515   public HtmlSerializerBuilder beansRequireSerializable(boolean value) {
516      super.beansRequireSerializable(value);
517      return this;
518   }
519
520   @Override /* BeanContextBuilder */
521   public HtmlSerializerBuilder beansRequireSerializable() {
522      super.beansRequireSerializable();
523      return this;
524   }
525
526   @Override /* BeanContextBuilder */
527   public HtmlSerializerBuilder beansRequireSettersForGetters(boolean value) {
528      super.beansRequireSettersForGetters(value);
529      return this;
530   }
531
532   @Override /* BeanContextBuilder */
533   public HtmlSerializerBuilder beansRequireSettersForGetters() {
534      super.beansRequireSettersForGetters();
535      return this;
536   }
537
538   @Override /* BeanContextBuilder */
539   public HtmlSerializerBuilder beansRequireSomeProperties(boolean value) {
540      super.beansRequireSomeProperties(value);
541      return this;
542   }
543
544   @Override /* BeanContextBuilder */
545   public HtmlSerializerBuilder beanTypePropertyName(String value) {
546      super.beanTypePropertyName(value);
547      return this;
548   }
549
550   @Override /* BeanContextBuilder */
551   public HtmlSerializerBuilder debug() {
552      super.debug();
553      return this;
554   }
555
556   @Override /* BeanContextBuilder */
557   public <T> HtmlSerializerBuilder example(Class<T> c, T o) {
558      super.example(c, o);
559      return this;
560   }
561
562   @Override /* BeanContextBuilder */
563   public HtmlSerializerBuilder ignoreInvocationExceptionsOnGetters(boolean value) {
564      super.ignoreInvocationExceptionsOnGetters(value);
565      return this;
566   }
567
568   @Override /* BeanContextBuilder */
569   public HtmlSerializerBuilder ignoreInvocationExceptionsOnGetters() {
570      super.ignoreInvocationExceptionsOnGetters();
571      return this;
572   }
573
574   @Override /* BeanContextBuilder */
575   public HtmlSerializerBuilder ignoreInvocationExceptionsOnSetters(boolean value) {
576      super.ignoreInvocationExceptionsOnSetters(value);
577      return this;
578   }
579
580   @Override /* BeanContextBuilder */
581   public HtmlSerializerBuilder ignoreInvocationExceptionsOnSetters() {
582      super.ignoreInvocationExceptionsOnSetters();
583      return this;
584   }
585
586   @Override /* BeanContextBuilder */
587   public HtmlSerializerBuilder ignorePropertiesWithoutSetters(boolean value) {
588      super.ignorePropertiesWithoutSetters(value);
589      return this;
590   }
591
592   @Override /* BeanContextBuilder */
593   public HtmlSerializerBuilder ignoreUnknownBeanProperties(boolean value) {
594      super.ignoreUnknownBeanProperties(value);
595      return this;
596   }
597
598   @Override /* BeanContextBuilder */
599   public HtmlSerializerBuilder ignoreUnknownBeanProperties() {
600      super.ignoreUnknownBeanProperties();
601      return this;
602   }
603
604   @Override /* BeanContextBuilder */
605   public HtmlSerializerBuilder ignoreUnknownNullBeanProperties(boolean value) {
606      super.ignoreUnknownNullBeanProperties(value);
607      return this;
608   }
609
610   @Override /* BeanContextBuilder */
611   public <T> HtmlSerializerBuilder implClass(Class<T> interfaceClass, Class<? extends T> implClass) {
612      super.implClass(interfaceClass, implClass);
613      return this;
614   }
615
616   @Override /* BeanContextBuilder */
617   public HtmlSerializerBuilder implClasses(Map<String,Class<?>> values) {
618      super.implClasses(values);
619      return this;
620   }
621
622   @Override /* BeanContextBuilder */
623   public HtmlSerializerBuilder locale(Locale value) {
624      super.locale(value);
625      return this;
626   }
627
628   @Override /* BeanContextBuilder */
629   public HtmlSerializerBuilder mediaType(MediaType value) {
630      super.mediaType(value);
631      return this;
632   }
633
634   @Override /* BeanContextBuilder */
635   public HtmlSerializerBuilder notBeanClasses(boolean append, Object...values) {
636      super.notBeanClasses(append, values);
637      return this;
638   }
639
640   @Override /* BeanContextBuilder */
641   public HtmlSerializerBuilder notBeanClasses(Class<?>...values) {
642      super.notBeanClasses(values);
643      return this;
644   }
645
646   @Override /* BeanContextBuilder */
647   public HtmlSerializerBuilder notBeanClasses(Object...values) {
648      super.notBeanClasses(values);
649      return this;
650   }
651
652   @Override /* BeanContextBuilder */
653   public HtmlSerializerBuilder notBeanClassesRemove(Object...values) {
654      super.notBeanClassesRemove(values);
655      return this;
656   }
657
658   @Override /* BeanContextBuilder */
659   public HtmlSerializerBuilder notBeanPackages(boolean append, Object...values) {
660      super.notBeanPackages(append, values);
661      return this;
662   }
663
664   @Override /* BeanContextBuilder */
665   public HtmlSerializerBuilder notBeanPackages(Object...values) {
666      super.notBeanPackages(values);
667      return this;
668   }
669
670   @Override /* BeanContextBuilder */
671   public HtmlSerializerBuilder notBeanPackages(String...values) {
672      super.notBeanPackages(values);
673      return this;
674   }
675
676   @Override /* BeanContextBuilder */
677   public HtmlSerializerBuilder notBeanPackagesRemove(Object...values) {
678      super.notBeanPackagesRemove(values);
679      return this;
680   }
681
682   @Override /* BeanContextBuilder */
683   public HtmlSerializerBuilder pojoSwaps(boolean append, Object...values) {
684      super.pojoSwaps(append, values);
685      return this;
686   }
687
688   @Override /* BeanContextBuilder */
689   public HtmlSerializerBuilder pojoSwaps(Class<?>...values) {
690      super.pojoSwaps(values);
691      return this;
692   }
693
694   @Override /* BeanContextBuilder */
695   public HtmlSerializerBuilder pojoSwaps(Object...values) {
696      super.pojoSwaps(values);
697      return this;
698   }
699
700   @Override /* BeanContextBuilder */
701   public HtmlSerializerBuilder pojoSwapsRemove(Object...values) {
702      super.pojoSwapsRemove(values);
703      return this;
704   }
705
706   @Override /* BeanContextBuilder */
707   public HtmlSerializerBuilder sortProperties(boolean value) {
708      super.sortProperties(value);
709      return this;
710   }
711
712   @Override /* BeanContextBuilder */
713   public HtmlSerializerBuilder sortProperties() {
714      super.sortProperties();
715      return this;
716   }
717
718   @Override /* BeanContextBuilder */
719   public HtmlSerializerBuilder timeZone(TimeZone value) {
720      super.timeZone(value);
721      return this;
722   }
723
724   @Override /* BeanContextBuilder */
725   public HtmlSerializerBuilder useEnumNames() {
726      super.useEnumNames();
727      return this;
728   }
729
730   @Override /* BeanContextBuilder */
731   public HtmlSerializerBuilder useInterfaceProxies(boolean value) {
732      super.useInterfaceProxies(value);
733      return this;
734   }
735
736   @Override /* BeanContextBuilder */
737   public HtmlSerializerBuilder useJavaBeanIntrospector(boolean value) {
738      super.useJavaBeanIntrospector(value);
739      return this;
740   }
741
742   @Override /* BeanContextBuilder */
743   public HtmlSerializerBuilder useJavaBeanIntrospector() {
744      super.useJavaBeanIntrospector();
745      return this;
746   }
747
748   @Override /* ContextBuilder */
749   public HtmlSerializerBuilder set(String name, Object value) {
750      super.set(name, value);
751      return this;
752   }
753
754   @Override /* ContextBuilder */
755   public HtmlSerializerBuilder set(boolean append, String name, Object value) {
756      super.set(append, name, value);
757      return this;
758   }
759
760   @Override /* ContextBuilder */
761   public HtmlSerializerBuilder set(Map<String,Object> properties) {
762      super.set(properties);
763      return this;
764   }
765
766   @Override /* ContextBuilder */
767   public HtmlSerializerBuilder add(Map<String,Object> properties) {
768      super.add(properties);
769      return this;
770   }
771
772   @Override /* ContextBuilder */
773   public HtmlSerializerBuilder addTo(String name, Object value) {
774      super.addTo(name, value);
775      return this;
776   }
777
778   @Override /* ContextBuilder */
779   public HtmlSerializerBuilder addTo(String name, String key, Object value) {
780      super.addTo(name, key, value);
781      return this;
782   }
783
784   @Override /* ContextBuilder */
785   public HtmlSerializerBuilder removeFrom(String name, Object value) {
786      super.removeFrom(name, value);
787      return this;
788   }
789
790   @Override /* ContextBuilder */
791   public HtmlSerializerBuilder apply(PropertyStore copyFrom) {
792      super.apply(copyFrom);
793      return this;
794   }
795
796   /**
797    * @deprecated Use {@link Serializer#SERIALIZER_addRootType}.
798    */
799   @Override
800   @Deprecated
801   public HtmlSerializerBuilder abridged(boolean value) {
802      return this;
803   }
804
805   /**
806    * @deprecated Use {@link Serializer#SERIALIZER_addRootType}.
807    */
808   @Override
809   @Deprecated
810   public HtmlSerializerBuilder abridged() {
811      return this;
812   }
813
814   /**
815    * @deprecated {@link #addBeanTypes(boolean)}
816    */
817   @Override
818   @Deprecated
819   public HtmlSerializerBuilder addBeanTypeProperties(boolean value) {
820      this.addBeanTypes(value);
821      return this;
822   }
823}