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.msgpack;
014
015import java.util.*;
016
017import org.apache.juneau.*;
018import org.apache.juneau.http.*;
019import org.apache.juneau.serializer.*;
020
021/**
022 * Builder class for building instances of MessagePack serializers.
023 */
024public class MsgPackSerializerBuilder extends OutputStreamSerializerBuilder {
025
026   /**
027    * Constructor, default settings.
028    */
029   public MsgPackSerializerBuilder() {
030      super();
031   }
032
033   /**
034    * Constructor.
035    *
036    * @param ps The initial configuration settings for this builder.
037    */
038   public MsgPackSerializerBuilder(PropertyStore ps) {
039      super(ps);
040   }
041
042   @Override /* ContextBuilder */
043   public MsgPackSerializer build() {
044      return build(MsgPackSerializer.class);
045   }
046
047
048   //-----------------------------------------------------------------------------------------------------------------
049   // Properties
050   //-----------------------------------------------------------------------------------------------------------------
051
052   @Override /* OutputStreamSerializerBuilder */
053   public MsgPackSerializerBuilder binaryFormat(BinaryFormat value) {
054      super.binaryFormat(value);
055      return this;
056   }
057
058   @Override /* SerializerBuilder */
059   public MsgPackSerializerBuilder addBeanTypes(boolean value) {
060      super.addBeanTypes(value);
061      return this;
062   }
063
064   @Override /* SerializerBuilder */
065   public MsgPackSerializerBuilder addBeanTypes() {
066      super.addBeanTypes();
067      return this;
068   }
069
070   @Override /* SerializerBuilder */
071   public MsgPackSerializerBuilder addRootType(boolean value) {
072      super.addRootType(value);
073      return this;
074   }
075
076   @Override /* SerializerBuilder */
077   public MsgPackSerializerBuilder addRootType() {
078      super.addRootType();
079      return this;
080   }
081
082   @Override /* SerializerBuilder */
083   public MsgPackSerializerBuilder detectRecursions(boolean value) {
084      super.detectRecursions(value);
085      return this;
086   }
087
088   @Override /* SerializerBuilder */
089   public MsgPackSerializerBuilder detectRecursions() {
090      super.detectRecursions();
091      return this;
092   }
093
094   @Override /* SerializerBuilder */
095   public MsgPackSerializerBuilder ignoreRecursions(boolean value) {
096      super.ignoreRecursions(value);
097      return this;
098   }
099
100   @Override /* SerializerBuilder */
101   public MsgPackSerializerBuilder ignoreRecursions() {
102      super.ignoreRecursions();
103      return this;
104   }
105   @Override /* SerializerBuilder */
106   public MsgPackSerializerBuilder initialDepth(int value) {
107      super.initialDepth(value);
108      return this;
109   }
110
111   @Override /* SerializerBuilder */
112   public MsgPackSerializerBuilder listener(Class<? extends SerializerListener> value) {
113      super.listener(value);
114      return this;
115   }
116
117   @Override /* SerializerBuilder */
118   public MsgPackSerializerBuilder maxDepth(int value) {
119      super.maxDepth(value);
120      return this;
121   }
122
123   @Override /* SerializerBuilder */
124   public MsgPackSerializerBuilder sortCollections(boolean value) {
125      super.sortCollections(value);
126      return this;
127   }
128
129   @Override /* SerializerBuilder */
130   public MsgPackSerializerBuilder sortCollections() {
131      super.sortCollections();
132      return this;
133   }
134
135   @Override /* SerializerBuilder */
136   public MsgPackSerializerBuilder sortMaps(boolean value) {
137      super.sortMaps(value);
138      return this;
139   }
140
141   @Override /* SerializerBuilder */
142   public MsgPackSerializerBuilder sortMaps() {
143      super.sortMaps();
144      return this;
145   }
146
147   @Override /* SerializerBuilder */
148   public MsgPackSerializerBuilder trimEmptyCollections(boolean value) {
149      super.trimEmptyCollections(value);
150      return this;
151   }
152
153   @Override /* SerializerBuilder */
154   public MsgPackSerializerBuilder trimEmptyCollections() {
155      super.trimEmptyCollections();
156      return this;
157   }
158
159   @Override /* SerializerBuilder */
160   public MsgPackSerializerBuilder trimEmptyMaps(boolean value) {
161      super.trimEmptyMaps(value);
162      return this;
163   }
164
165   @Override /* SerializerBuilder */
166   public MsgPackSerializerBuilder trimEmptyMaps() {
167      super.trimEmptyMaps();
168      return this;
169   }
170
171   @Override /* SerializerBuilder */
172   public MsgPackSerializerBuilder trimNullProperties(boolean value) {
173      super.trimNullProperties(value);
174      return this;
175   }
176
177   @Override /* SerializerBuilder */
178   public MsgPackSerializerBuilder trimStrings(boolean value) {
179      super.trimStrings(value);
180      return this;
181   }
182
183   @Override /* SerializerBuilder */
184   public MsgPackSerializerBuilder trimStrings() {
185      super.trimStrings();
186      return this;
187   }
188
189   @Override /* SerializerBuilder */
190   public MsgPackSerializerBuilder uriContext(UriContext value) {
191      super.uriContext(value);
192      return this;
193   }
194
195   @Override /* SerializerBuilder */
196   public MsgPackSerializerBuilder uriRelativity(UriRelativity value) {
197      super.uriRelativity(value);
198      return this;
199   }
200
201   @Override /* SerializerBuilder */
202   public MsgPackSerializerBuilder uriResolution(UriResolution value) {
203      super.uriResolution(value);
204      return this;
205   }
206
207   @Override /* BeanContextBuilder */
208   public MsgPackSerializerBuilder beanClassVisibility(Visibility value) {
209      super.beanClassVisibility(value);
210      return this;
211   }
212
213   @Override /* BeanContextBuilder */
214   public MsgPackSerializerBuilder beanConstructorVisibility(Visibility value) {
215      super.beanConstructorVisibility(value);
216      return this;
217   }
218
219   @Override /* BeanContextBuilder */
220   public MsgPackSerializerBuilder beanDictionary(boolean append, Object...values) {
221      super.beanDictionary(append, values);
222      return this;
223   }
224
225   @Override /* BeanContextBuilder */
226   public MsgPackSerializerBuilder beanDictionary(Class<?>...values) {
227      super.beanDictionary(values);
228      return this;
229   }
230
231   @Override /* BeanContextBuilder */
232   public MsgPackSerializerBuilder beanDictionary(Object...values) {
233      super.beanDictionary(values);
234      return this;
235   }
236
237   @Override /* BeanContextBuilder */
238   public MsgPackSerializerBuilder beanDictionaryRemove(Object...values) {
239      super.beanDictionaryRemove(values);
240      return this;
241   }
242
243   @Override /* BeanContextBuilder */
244   public MsgPackSerializerBuilder beanFieldVisibility(Visibility value) {
245      super.beanFieldVisibility(value);
246      return this;
247   }
248
249   @Override /* BeanContextBuilder */
250   public MsgPackSerializerBuilder beanFilters(boolean append, Object...values) {
251      super.beanFilters(append, values);
252      return this;
253   }
254
255   @Override /* BeanContextBuilder */
256   public MsgPackSerializerBuilder beanFilters(Class<?>...values) {
257      super.beanFilters(values);
258      return this;
259   }
260
261   @Override /* BeanContextBuilder */
262   public MsgPackSerializerBuilder beanFilters(Object...values) {
263      super.beanFilters(values);
264      return this;
265   }
266
267   @Override /* BeanContextBuilder */
268   public MsgPackSerializerBuilder beanFiltersRemove(Object...values) {
269      super.beanFiltersRemove(values);
270      return this;
271   }
272
273   @Override /* BeanContextBuilder */
274   public MsgPackSerializerBuilder beanMapPutReturnsOldValue(boolean value) {
275      super.beanMapPutReturnsOldValue(value);
276      return this;
277   }
278
279   @Override /* BeanContextBuilder */
280   public MsgPackSerializerBuilder beanMapPutReturnsOldValue() {
281      super.beanMapPutReturnsOldValue();
282      return this;
283   }
284
285   @Override /* BeanContextBuilder */
286   public MsgPackSerializerBuilder beanMethodVisibility(Visibility value) {
287      super.beanMethodVisibility(value);
288      return this;
289   }
290
291   @Override /* BeanContextBuilder */
292   public MsgPackSerializerBuilder beansRequireDefaultConstructor(boolean value) {
293      super.beansRequireDefaultConstructor(value);
294      return this;
295   }
296
297   @Override /* BeanContextBuilder */
298   public MsgPackSerializerBuilder beansRequireDefaultConstructor() {
299      super.beansRequireDefaultConstructor();
300      return this;
301   }
302
303   @Override /* BeanContextBuilder */
304   public MsgPackSerializerBuilder beansRequireSerializable(boolean value) {
305      super.beansRequireSerializable(value);
306      return this;
307   }
308
309   @Override /* BeanContextBuilder */
310   public MsgPackSerializerBuilder beansRequireSerializable() {
311      super.beansRequireSerializable();
312      return this;
313   }
314
315   @Override /* BeanContextBuilder */
316   public MsgPackSerializerBuilder beansRequireSettersForGetters(boolean value) {
317      super.beansRequireSettersForGetters(value);
318      return this;
319   }
320
321   @Override /* BeanContextBuilder */
322   public MsgPackSerializerBuilder beansRequireSettersForGetters() {
323      super.beansRequireSettersForGetters();
324      return this;
325   }
326
327   @Override /* BeanContextBuilder */
328   public MsgPackSerializerBuilder beansRequireSomeProperties(boolean value) {
329      super.beansRequireSomeProperties(value);
330      return this;
331   }
332
333   @Override /* BeanContextBuilder */
334   public MsgPackSerializerBuilder beanTypePropertyName(String value) {
335      super.beanTypePropertyName(value);
336      return this;
337   }
338
339   @Override /* BeanContextBuilder */
340   public MsgPackSerializerBuilder debug() {
341      super.debug();
342      return this;
343   }
344
345   @Override /* BeanContextBuilder */
346   public <T> MsgPackSerializerBuilder example(Class<T> c, T o) {
347      super.example(c, o);
348      return this;
349   }
350
351   @Override /* BeanContextBuilder */
352   public MsgPackSerializerBuilder ignoreInvocationExceptionsOnGetters(boolean value) {
353      super.ignoreInvocationExceptionsOnGetters(value);
354      return this;
355   }
356
357   @Override /* BeanContextBuilder */
358   public MsgPackSerializerBuilder ignoreInvocationExceptionsOnGetters() {
359      super.ignoreInvocationExceptionsOnGetters();
360      return this;
361   }
362
363   @Override /* BeanContextBuilder */
364   public MsgPackSerializerBuilder ignoreInvocationExceptionsOnSetters(boolean value) {
365      super.ignoreInvocationExceptionsOnSetters(value);
366      return this;
367   }
368
369   @Override /* BeanContextBuilder */
370   public MsgPackSerializerBuilder ignoreInvocationExceptionsOnSetters() {
371      super.ignoreInvocationExceptionsOnSetters();
372      return this;
373   }
374
375   @Override /* BeanContextBuilder */
376   public MsgPackSerializerBuilder ignorePropertiesWithoutSetters(boolean value) {
377      super.ignorePropertiesWithoutSetters(value);
378      return this;
379   }
380
381   @Override /* BeanContextBuilder */
382   public MsgPackSerializerBuilder ignoreUnknownBeanProperties(boolean value) {
383      super.ignoreUnknownBeanProperties(value);
384      return this;
385   }
386
387   @Override /* BeanContextBuilder */
388   public MsgPackSerializerBuilder ignoreUnknownBeanProperties() {
389      super.ignoreUnknownBeanProperties();
390      return this;
391   }
392
393   @Override /* BeanContextBuilder */
394   public MsgPackSerializerBuilder ignoreUnknownNullBeanProperties(boolean value) {
395      super.ignoreUnknownNullBeanProperties(value);
396      return this;
397   }
398
399   @Override /* BeanContextBuilder */
400   public <T> MsgPackSerializerBuilder implClass(Class<T> interfaceClass, Class<? extends T> implClass) {
401      super.implClass(interfaceClass, implClass);
402      return this;
403   }
404
405   @Override /* BeanContextBuilder */
406   public MsgPackSerializerBuilder implClasses(Map<String,Class<?>> values) {
407      super.implClasses(values);
408      return this;
409   }
410
411   @Override /* BeanContextBuilder */
412   public MsgPackSerializerBuilder locale(Locale value) {
413      super.locale(value);
414      return this;
415   }
416
417   @Override /* BeanContextBuilder */
418   public MsgPackSerializerBuilder mediaType(MediaType value) {
419      super.mediaType(value);
420      return this;
421   }
422
423   @Override /* BeanContextBuilder */
424   public MsgPackSerializerBuilder notBeanClasses(boolean append, Object...values) {
425      super.notBeanClasses(append, values);
426      return this;
427   }
428
429   @Override /* BeanContextBuilder */
430   public MsgPackSerializerBuilder notBeanClasses(Class<?>...values) {
431      super.notBeanClasses(values);
432      return this;
433   }
434
435   @Override /* BeanContextBuilder */
436   public MsgPackSerializerBuilder notBeanClasses(Object...values) {
437      super.notBeanClasses(values);
438      return this;
439   }
440
441   @Override /* BeanContextBuilder */
442   public MsgPackSerializerBuilder notBeanClassesRemove(Object...values) {
443      super.notBeanClassesRemove(values);
444      return this;
445   }
446
447   @Override /* BeanContextBuilder */
448   public MsgPackSerializerBuilder notBeanPackages(boolean append, Object...values) {
449      super.notBeanPackages(append, values);
450      return this;
451   }
452
453   @Override /* BeanContextBuilder */
454   public MsgPackSerializerBuilder notBeanPackages(Object...values) {
455      super.notBeanPackages(values);
456      return this;
457   }
458
459   @Override /* BeanContextBuilder */
460   public MsgPackSerializerBuilder notBeanPackages(String...values) {
461      super.notBeanPackages(values);
462      return this;
463   }
464
465   @Override /* BeanContextBuilder */
466   public MsgPackSerializerBuilder notBeanPackagesRemove(Object...values) {
467      super.notBeanPackagesRemove(values);
468      return this;
469   }
470
471   @Override /* BeanContextBuilder */
472   public MsgPackSerializerBuilder pojoSwaps(boolean append, Object...values) {
473      super.pojoSwaps(append, values);
474      return this;
475   }
476
477   @Override /* BeanContextBuilder */
478   public MsgPackSerializerBuilder pojoSwaps(Class<?>...values) {
479      super.pojoSwaps(values);
480      return this;
481   }
482
483   @Override /* BeanContextBuilder */
484   public MsgPackSerializerBuilder pojoSwaps(Object...values) {
485      super.pojoSwaps(values);
486      return this;
487   }
488
489   @Override /* BeanContextBuilder */
490   public MsgPackSerializerBuilder pojoSwapsRemove(Object...values) {
491      super.pojoSwapsRemove(values);
492      return this;
493   }
494
495   @Override /* BeanContextBuilder */
496   public MsgPackSerializerBuilder sortProperties(boolean value) {
497      super.sortProperties(value);
498      return this;
499   }
500
501   @Override /* BeanContextBuilder */
502   public MsgPackSerializerBuilder sortProperties() {
503      super.sortProperties();
504      return this;
505   }
506
507   @Override /* BeanContextBuilder */
508   public MsgPackSerializerBuilder timeZone(TimeZone value) {
509      super.timeZone(value);
510      return this;
511   }
512
513   @Override /* BeanContextBuilder */
514   public MsgPackSerializerBuilder useEnumNames() {
515      super.useEnumNames();
516      return this;
517   }
518
519   @Override /* BeanContextBuilder */
520   public MsgPackSerializerBuilder useInterfaceProxies(boolean value) {
521      super.useInterfaceProxies(value);
522      return this;
523   }
524
525   @Override /* BeanContextBuilder */
526   public MsgPackSerializerBuilder useJavaBeanIntrospector(boolean value) {
527      super.useJavaBeanIntrospector(value);
528      return this;
529   }
530
531   @Override /* BeanContextBuilder */
532   public MsgPackSerializerBuilder useJavaBeanIntrospector() {
533      super.useJavaBeanIntrospector();
534      return this;
535   }
536
537   @Override /* ContextBuilder */
538   public MsgPackSerializerBuilder set(String name, Object value) {
539      super.set(name, value);
540      return this;
541   }
542
543   @Override /* ContextBuilder */
544   public MsgPackSerializerBuilder set(boolean append, String name, Object value) {
545      super.set(append, name, value);
546      return this;
547   }
548
549   @Override /* ContextBuilder */
550   public MsgPackSerializerBuilder set(Map<String,Object> properties) {
551      super.set(properties);
552      return this;
553   }
554
555   @Override /* ContextBuilder */
556   public MsgPackSerializerBuilder add(Map<String,Object> properties) {
557      super.add(properties);
558      return this;
559   }
560
561   @Override /* ContextBuilder */
562   public MsgPackSerializerBuilder addTo(String name, Object value) {
563      super.addTo(name, value);
564      return this;
565   }
566
567   @Override /* ContextBuilder */
568   public MsgPackSerializerBuilder addTo(String name, String key, Object value) {
569      super.addTo(name, key, value);
570      return this;
571   }
572
573   @Override /* ContextBuilder */
574   public MsgPackSerializerBuilder removeFrom(String name, Object value) {
575      super.removeFrom(name, value);
576      return this;
577   }
578
579   @Override /* ContextBuilder */
580   public MsgPackSerializerBuilder apply(PropertyStore copyFrom) {
581      super.apply(copyFrom);
582      return this;
583   }
584
585   /**
586    * @deprecated Use {@link Serializer#SERIALIZER_addRootType}.
587    */
588   @Override
589   @Deprecated
590   public MsgPackSerializerBuilder abridged(boolean value) {
591      return this;
592   }
593
594   /**
595    * @deprecated Use {@link Serializer#SERIALIZER_addRootType}.
596    */
597   @Override
598   @Deprecated
599   public MsgPackSerializerBuilder abridged() {
600      return this;
601   }
602
603   /**
604    * @deprecated {@link #addBeanTypes(boolean)}
605    */
606   @Override
607   @Deprecated
608   public MsgPackSerializerBuilder addBeanTypeProperties(boolean value) {
609      this.addBeanTypes(value);
610      return this;
611   }
612
613   /**
614    * @deprecated Unused.
615    */
616   @Override
617   @Deprecated
618   public MsgPackSerializerBuilder maxIndent(int value) {
619      return this;
620   }
621
622   /**
623    * @deprecated Unused.
624    */
625   @Override
626   @Deprecated
627   public MsgPackSerializerBuilder quoteChar(char value) {
628      return this;
629   }
630
631   /**
632    * @deprecated Unused.
633    */
634   @Override
635   @Deprecated
636   public MsgPackSerializerBuilder sq() {
637      return this;
638   }
639
640   /**
641    * @deprecated Unused.
642    */
643   @Override
644   @Deprecated
645   public MsgPackSerializerBuilder useWhitespace(boolean value) {
646      return this;
647   }
648
649   /**
650    * @deprecated Unused.
651    */
652   @Override
653   @Deprecated
654   public MsgPackSerializerBuilder useWhitespace() {
655      return this;
656   }
657
658   /**
659    * @deprecated Unused.
660    */
661   @Override
662   @Deprecated
663   public MsgPackSerializerBuilder ws() {
664      return this;
665   }
666}