calabash-android 0.4.7.pre4 → 0.4.7.pre6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (446) hide show
  1. checksums.yaml +4 -4
  2. data/lib/calabash-android/helpers.rb +22 -1
  3. data/lib/calabash-android/lib/TestServer.apk +0 -0
  4. data/lib/calabash-android/lib/apktool-cli-1.5.3-SNAPSHOT.jar +0 -0
  5. data/lib/calabash-android/version.rb +1 -1
  6. data/test-server/instrumentation-backend/.classpath +4 -1
  7. data/test-server/instrumentation-backend/libs/jackson-annotations-2.2.0-rc2-20130418.042013-1.jar +0 -0
  8. data/test-server/instrumentation-backend/libs/jackson-core-2.2.0-rc2-20130420.041001-2.jar +0 -0
  9. data/test-server/instrumentation-backend/libs/jackson-databind-2.2.0-rc2-20130422.041053-3.jar +0 -0
  10. data/test-server/instrumentation-backend/libs/robotium-solo-4.1.jar +0 -0
  11. data/test-server/instrumentation-backend/src/org/antlr/runtime/LegacyCommonTokenStream.java +6 -1
  12. data/test-server/instrumentation-backend/src/org/antlr/runtime/debug/DebugTokenStream.java +3 -3
  13. data/test-server/instrumentation-backend/src/org/antlr/runtime/misc/FastQueue.java +1 -1
  14. data/test-server/instrumentation-backend/src/org/antlr/runtime/tree/BaseTreeAdaptor.java +4 -4
  15. data/test-server/instrumentation-backend/src/org/antlr/runtime/tree/CommonErrorNode.java +8 -1
  16. data/test-server/instrumentation-backend/src/org/antlr/runtime/tree/TreeIterator.java +2 -3
  17. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/CalabashInstrumentationTestRunner.java +1 -1
  18. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/InstrumentationBackend.java +2 -2
  19. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/HttpServer.java +21 -11
  20. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/NanoHTTPD.java +127 -68
  21. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/button/PressButtonText.java +2 -2
  22. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/button/PressImageButtonDescription.java +2 -3
  23. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/gestures/Swipe.java +0 -1
  24. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/list/GetListData.java +1 -1
  25. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/list/GetListItemProperties.java +1 -1
  26. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/list/GetListItemText.java +1 -1
  27. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/text/AssertGridViewContainsNoDuplicates.java +4 -4
  28. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/view/Press.java +1 -1
  29. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/view/SelectTab.java +4 -4
  30. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/wait/WaitForProgress.java +1 -1
  31. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/wait/WaitForTab.java +4 -4
  32. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/webview/QueryHelper.java +2 -1
  33. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/json/JSONUtils.java +1 -1
  34. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/QueryResult.java +2 -2
  35. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/UIQueryASTClassName.java +0 -2
  36. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/UIQueryUtils.java +3 -2
  37. metadata +7 -411
  38. data/test-server/instrumentation-backend/libs/robotium-solo-3.6.jar +0 -0
  39. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/activity/GetOpenedActivities.java +0 -31
  40. data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/activity/GoBackToActivity.java +0 -67
  41. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/Base64Variant.java +0 -413
  42. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/Base64Variants.java +0 -90
  43. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/FormatSchema.java +0 -29
  44. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonEncoding.java +0 -47
  45. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonFactory.java +0 -937
  46. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonGenerationException.java +0 -28
  47. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonGenerator.java +0 -1197
  48. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonLocation.java +0 -141
  49. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonNode.java +0 -879
  50. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonParseException.java +0 -23
  51. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonParser.java +0 -1434
  52. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonProcessingException.java +0 -80
  53. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonStreamContext.java +0 -122
  54. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/JsonToken.java +0 -161
  55. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/ObjectCodec.java +0 -157
  56. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/PrettyPrinter.java +0 -166
  57. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/SerializableString.java +0 -54
  58. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/Version.java +0 -90
  59. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/Versioned.java +0 -20
  60. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JacksonAnnotation.java +0 -20
  61. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonAnyGetter.java +0 -25
  62. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonAnySetter.java +0 -24
  63. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonAutoDetect.java +0 -148
  64. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonBackReference.java +0 -41
  65. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonCreator.java +0 -19
  66. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonGetter.java +0 -35
  67. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonIgnore.java +0 -57
  68. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonIgnoreProperties.java +0 -48
  69. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonIgnoreType.java +0 -33
  70. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonManagedReference.java +0 -41
  71. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonMethod.java +0 -90
  72. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonProperty.java +0 -38
  73. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonPropertyOrder.java +0 -46
  74. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonRawValue.java +0 -33
  75. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonSetter.java +0 -33
  76. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonSubTypes.java +0 -44
  77. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonTypeInfo.java +0 -236
  78. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonTypeName.java +0 -28
  79. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonUnwrapped.java +0 -76
  80. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonValue.java +0 -46
  81. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/JsonWriteNullProperties.java +0 -34
  82. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/annotate/package-info.java +0 -16
  83. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/format/DataFormatDetector.java +0 -176
  84. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/format/DataFormatMatcher.java +0 -117
  85. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/format/InputAccessor.java +0 -130
  86. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/format/MatchStrength.java +0 -64
  87. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/format/package-info.java +0 -8
  88. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/ByteSourceBootstrapper.java +0 -518
  89. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/DefaultPrettyPrinter.java +0 -13
  90. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/Indenter.java +0 -23
  91. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/JsonGeneratorBase.java +0 -570
  92. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/JsonNumericParserBase.java +0 -20
  93. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/JsonParserBase.java +0 -1067
  94. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/JsonParserMinimalBase.java +0 -539
  95. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/JsonReadContext.java +0 -188
  96. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/JsonWriteContext.java +0 -178
  97. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/ReaderBasedParser.java +0 -1815
  98. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/ReaderBasedParserBase.java +0 -228
  99. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/StreamBasedParserBase.java +0 -197
  100. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/Utf8Generator.java +0 -1757
  101. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/Utf8StreamParser.java +0 -2966
  102. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/WriterBasedGenerator.java +0 -1815
  103. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/impl/package-info.java +0 -6
  104. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/BaseReader.java +0 -117
  105. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/CharacterEscapes.java +0 -73
  106. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/IOContext.java +0 -239
  107. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/InputDecorator.java +0 -67
  108. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/JsonStringEncoder.java +0 -408
  109. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/MergedStream.java +0 -145
  110. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/NumberInput.java +0 -303
  111. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/NumberOutput.java +0 -398
  112. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/OutputDecorator.java +0 -40
  113. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/SegmentedStringWriter.java +0 -104
  114. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/SerializedString.java +0 -114
  115. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/UTF32Reader.java +0 -214
  116. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/UTF8Writer.java +0 -387
  117. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/io/package.html +0 -4
  118. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/AbstractTypeResolver.java +0 -63
  119. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/AnnotationIntrospector.java +0 -1485
  120. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/BeanDescription.java +0 -171
  121. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/BeanProperty.java +0 -123
  122. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/BeanPropertyDefinition.java +0 -66
  123. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ClassIntrospector.java +0 -117
  124. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ContextualDeserializer.java +0 -38
  125. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ContextualKeyDeserializer.java +0 -33
  126. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ContextualSerializer.java +0 -38
  127. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/DeserializationConfig.java +0 -926
  128. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/DeserializationContext.java +0 -262
  129. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/DeserializationProblemHandler.java +0 -56
  130. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/DeserializerFactory.java +0 -356
  131. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/DeserializerProvider.java +0 -185
  132. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/Deserializers.java +0 -339
  133. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/HandlerInstantiator.java +0 -115
  134. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/InjectableValues.java +0 -85
  135. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/JsonDeserializer.java +0 -166
  136. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/JsonMappingException.java +0 -335
  137. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/JsonSerializable.java +0 -34
  138. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/JsonSerializableWithType.java +0 -22
  139. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/JsonSerializer.java +0 -138
  140. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/KeyDeserializer.java +0 -31
  141. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/KeyDeserializers.java +0 -21
  142. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/MapperConfig.java +0 -1154
  143. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/MappingIterator.java +0 -190
  144. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/MappingJsonFactory.java +0 -81
  145. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/Module.java +0 -255
  146. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ObjectMapper.java +0 -2885
  147. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ObjectReader.java +0 -958
  148. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ObjectWriter.java +0 -554
  149. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/PropertyNamingStrategy.java +0 -258
  150. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ResolvableDeserializer.java +0 -23
  151. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ResolvableSerializer.java +0 -23
  152. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/RuntimeJsonMappingException.java +0 -21
  153. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/SerializationConfig.java +0 -1041
  154. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/SerializerFactory.java +0 -198
  155. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/SerializerProvider.java +0 -552
  156. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/Serializers.java +0 -137
  157. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/TypeDeserializer.java +0 -118
  158. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/TypeSerializer.java +0 -164
  159. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JacksonInject.java +0 -30
  160. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JacksonStdImpl.java +0 -25
  161. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonCachable.java +0 -32
  162. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonDeserialize.java +0 -109
  163. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonFilter.java +0 -31
  164. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonRootName.java +0 -29
  165. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonSerialize.java +0 -216
  166. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonTypeIdResolver.java +0 -35
  167. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonTypeResolver.java +0 -28
  168. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonValueInstantiator.java +0 -26
  169. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/JsonView.java +0 -37
  170. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/NoClass.java +0 -19
  171. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/annotate/package-info.java +0 -5
  172. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/AbstractDeserializer.java +0 -102
  173. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/ArrayDeserializer.java +0 -28
  174. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/ArrayDeserializers.java +0 -11
  175. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/BasicDeserializerFactory.java +0 -894
  176. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/BeanDeserializer.java +0 -1537
  177. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/BeanDeserializerBuilder.java +0 -277
  178. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/BeanDeserializerFactory.java +0 -1474
  179. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/BeanDeserializerModifier.java +0 -58
  180. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/CollectionDeserializer.java +0 -47
  181. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/ContainerDeserializer.java +0 -14
  182. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/CustomDeserializerFactory.java +0 -227
  183. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/DateDeserializer.java +0 -9
  184. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/EnumDeserializer.java +0 -15
  185. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/EnumResolver.java +0 -17
  186. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/FromStringDeserializer.java +0 -13
  187. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/JsonNodeDeserializer.java +0 -54
  188. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/MapDeserializer.java +0 -44
  189. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/SettableAnyProperty.java +0 -177
  190. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/SettableBeanProperty.java +0 -827
  191. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/StdDeserializationContext.java +0 -326
  192. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/StdDeserializer.java +0 -94
  193. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/StdDeserializerProvider.java +0 -494
  194. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/StdDeserializers.java +0 -119
  195. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/StdKeyDeserializer.java +0 -12
  196. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/StdKeyDeserializers.java +0 -11
  197. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/StdScalarDeserializer.java +0 -13
  198. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/ThrowableDeserializer.java +0 -13
  199. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/UntypedObjectDeserializer.java +0 -9
  200. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/ValueInstantiator.java +0 -280
  201. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/ValueInstantiators.java +0 -52
  202. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/BeanPropertyMap.java +0 -257
  203. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/CreatorCollector.java +0 -141
  204. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/CreatorProperty.java +0 -152
  205. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/ExternalTypeHandler.java +0 -173
  206. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/PropertyBasedCreator.java +0 -117
  207. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/PropertyValue.java +0 -117
  208. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/PropertyValueBuffer.java +0 -102
  209. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/UnwrappedPropertyHandler.java +0 -41
  210. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/ValueInjector.java +0 -45
  211. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/impl/package-info.java +0 -9
  212. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/package-info.java +0 -5
  213. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/AtomicBooleanDeserializer.java +0 -22
  214. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/AtomicReferenceDeserializer.java +0 -47
  215. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/CalendarDeserializer.java +0 -47
  216. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/ClassDeserializer.java +0 -49
  217. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/CollectionDeserializer.java +0 -265
  218. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/ContainerDeserializerBase.java +0 -37
  219. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/DateDeserializer.java +0 -30
  220. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/EnumDeserializer.java +0 -139
  221. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/EnumMapDeserializer.java +0 -90
  222. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/EnumSetDeserializer.java +0 -89
  223. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/FromStringDeserializer.java +0 -265
  224. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/JavaTypeDeserializer.java +0 -38
  225. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/JsonNodeDeserializer.java +0 -314
  226. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/MapDeserializer.java +0 -412
  227. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/ObjectArrayDeserializer.java +0 -201
  228. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/PrimitiveArrayDeserializers.java +0 -583
  229. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/StdDeserializer.java +0 -1136
  230. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/StdKeyDeserializer.java +0 -340
  231. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/StdKeyDeserializers.java +0 -108
  232. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/StdScalarDeserializer.java +0 -34
  233. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/StdValueInstantiator.java +0 -392
  234. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/StringCollectionDeserializer.java +0 -227
  235. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/StringDeserializer.java +0 -55
  236. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/ThrowableDeserializer.java +0 -164
  237. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/TimestampDeserializer.java +0 -30
  238. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/TokenBufferDeserializer.java +0 -36
  239. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/UntypedObjectDeserializer.java +0 -248
  240. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/package-info.java +0 -15
  241. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/exc/UnrecognizedPropertyException.java +0 -75
  242. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ext/DOMDeserializer.java +0 -65
  243. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ext/OptionalHandlerFactory.java +0 -217
  244. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ext/package-info.java +0 -23
  245. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/Annotated.java +0 -85
  246. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotatedClass.java +0 -980
  247. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotatedConstructor.java +0 -143
  248. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotatedField.java +0 -119
  249. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotatedMember.java +0 -56
  250. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotatedMethod.java +0 -188
  251. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotatedMethodMap.java +0 -85
  252. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotatedParameter.java +0 -191
  253. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotatedWithParams.java +0 -195
  254. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/AnnotationMap.java +0 -101
  255. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/BasicBeanDescription.java +0 -615
  256. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/BasicClassIntrospector.java +0 -364
  257. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/JacksonAnnotationIntrospector.java +0 -813
  258. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/MemberKey.java +0 -83
  259. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/MethodFilter.java +0 -12
  260. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/NopAnnotationIntrospector.java +0 -209
  261. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/POJOPropertiesCollector.java +0 -713
  262. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/POJOPropertyBuilder.java +0 -648
  263. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/VisibilityChecker.java +0 -424
  264. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/introspect/package-info.java +0 -12
  265. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/NamedType.java +0 -53
  266. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/SubtypeResolver.java +0 -39
  267. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/TypeIdResolver.java +0 -74
  268. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/TypeResolverBuilder.java +0 -151
  269. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/AsArrayTypeDeserializer.java +0 -126
  270. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/AsArrayTypeSerializer.java +0 -110
  271. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/AsExternalTypeDeserializer.java +0 -37
  272. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/AsExternalTypeSerializer.java +0 -129
  273. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/AsPropertyTypeDeserializer.java +0 -191
  274. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/AsPropertyTypeSerializer.java +0 -69
  275. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/AsWrapperTypeDeserializer.java +0 -103
  276. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/AsWrapperTypeSerializer.java +0 -121
  277. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/ClassNameIdResolver.java +0 -138
  278. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/MinimalClassNameIdResolver.java +0 -66
  279. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/StdSubtypeResolver.java +0 -151
  280. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/StdTypeResolverBuilder.java +0 -202
  281. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/TypeDeserializerBase.java +0 -154
  282. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/TypeIdResolverBase.java +0 -37
  283. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/TypeNameIdResolver.java +0 -154
  284. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/TypeSerializerBase.java +0 -31
  285. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/impl/package-info.java +0 -9
  286. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/jsontype/package-info.java +0 -10
  287. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/module/SimpleAbstractTypeResolver.java +0 -86
  288. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/module/SimpleDeserializers.java +0 -130
  289. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/module/SimpleKeyDeserializers.java +0 -59
  290. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/module/SimpleModule.java +0 -265
  291. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/module/SimpleSerializers.java +0 -206
  292. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/module/SimpleValueInstantiators.java +0 -45
  293. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/module/package-info.java +0 -16
  294. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/package-info.java +0 -34
  295. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/AnyGetterWriter.java +0 -48
  296. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/ArraySerializers.java +0 -7
  297. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/BasicSerializerFactory.java +0 -806
  298. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/BeanPropertyFilter.java +0 -30
  299. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/BeanPropertyWriter.java +0 -512
  300. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/BeanSerializer.java +0 -126
  301. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/BeanSerializerBuilder.java +0 -140
  302. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/BeanSerializerFactory.java +0 -780
  303. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/BeanSerializerModifier.java +0 -95
  304. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/ContainerSerializers.java +0 -8
  305. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/CustomSerializerFactory.java +0 -293
  306. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/EnumSerializer.java +0 -17
  307. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/FilterProvider.java +0 -23
  308. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/FilteredBeanPropertyWriter.java +0 -96
  309. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/JdkSerializers.java +0 -11
  310. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/MapSerializer.java +0 -58
  311. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/PropertyBuilder.java +0 -372
  312. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/ScalarSerializerBase.java +0 -18
  313. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/SerializerBase.java +0 -23
  314. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/StdKeySerializer.java +0 -10
  315. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/StdSerializerProvider.java +0 -852
  316. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/StdSerializers.java +0 -372
  317. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/ToStringSerializer.java +0 -14
  318. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/FailingSerializer.java +0 -43
  319. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/JsonSerializerMap.java +0 -93
  320. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/PropertySerializerMap.java +0 -231
  321. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/ReadOnlyClassToSerializerMap.java +0 -73
  322. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/SerializerCache.java +0 -304
  323. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/SimpleBeanPropertyFilter.java +0 -109
  324. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/SimpleFilterProvider.java +0 -114
  325. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/UnknownSerializer.java +0 -54
  326. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/UnwrappingBeanPropertyWriter.java +0 -99
  327. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/UnwrappingBeanSerializer.java +0 -76
  328. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/impl/package-info.java +0 -5
  329. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/package-info.java +0 -5
  330. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/AsArraySerializerBase.java +0 -185
  331. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/BeanSerializerBase.java +0 -340
  332. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/CalendarSerializer.java +0 -43
  333. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/CollectionSerializer.java +0 -113
  334. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/ContainerSerializerBase.java +0 -51
  335. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/DateSerializer.java +0 -42
  336. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/EnumMapSerializer.java +0 -218
  337. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/EnumSerializer.java +0 -84
  338. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/EnumSetSerializer.java +0 -47
  339. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/IndexedStringListSerializer.java +0 -116
  340. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/InetAddressSerializer.java +0 -51
  341. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/IterableSerializer.java +0 -63
  342. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/JsonValueSerializer.java +0 -233
  343. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/MapSerializer.java +0 -422
  344. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/NonTypedScalarSerializerBase.java +0 -34
  345. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/NullSerializer.java +0 -38
  346. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/ObjectArraySerializer.java +0 -281
  347. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/RawSerializer.java +0 -52
  348. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/ScalarSerializerBase.java +0 -52
  349. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/SerializableSerializer.java +0 -99
  350. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/SerializableWithTypeSerializer.java +0 -90
  351. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/SerializerBase.java +0 -184
  352. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/StaticListSerializerBase.java +0 -46
  353. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/StdArraySerializers.java +0 -476
  354. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/StdContainerSerializers.java +0 -249
  355. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/StdJdkSerializers.java +0 -195
  356. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/StdKeySerializer.java +0 -43
  357. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/StdKeySerializers.java +0 -95
  358. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/StringCollectionSerializer.java +0 -119
  359. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/StringSerializer.java +0 -36
  360. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/TimeZoneSerializer.java +0 -38
  361. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/ToStringSerializer.java +0 -73
  362. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ser/std/TokenBufferSerializer.java +0 -66
  363. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/ArrayType.java +0 -260
  364. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/ClassKey.java +0 -94
  365. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/CollectionLikeType.java +0 -204
  366. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/CollectionType.java +0 -94
  367. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/HierarchicType.java +0 -88
  368. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/MapLikeType.java +0 -265
  369. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/MapType.java +0 -146
  370. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/SimpleType.java +0 -250
  371. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/TypeBase.java +0 -148
  372. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/TypeBindings.java +0 -351
  373. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/TypeFactory.java +0 -1165
  374. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/TypeModifier.java +0 -38
  375. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/TypeParser.java +0 -134
  376. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/type/package-info.java +0 -10
  377. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/Annotations.java +0 -23
  378. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/ArrayBuilders.java +0 -293
  379. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/BeanUtil.java +0 -260
  380. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/ClassUtil.java +0 -645
  381. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/Comparators.java +0 -48
  382. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/EnumResolver.java +0 -108
  383. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/EnumValues.java +0 -82
  384. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/ISO8601DateFormat.java +0 -52
  385. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/ISO8601Utils.java +0 -230
  386. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/JSONPObject.java +0 -105
  387. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/JSONWrappedObject.java +0 -117
  388. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/LRUMap.java +0 -28
  389. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/LinkedNode.java +0 -45
  390. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/Named.java +0 -10
  391. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/ObjectBuffer.java +0 -257
  392. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/PrimitiveArrayBuilder.java +0 -180
  393. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/Provider.java +0 -21
  394. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/RootNameLookup.java +0 -54
  395. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/StdDateFormat.java +0 -348
  396. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/util/package-info.java +0 -4
  397. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/ArrayNode.java +0 -758
  398. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/BaseJsonNode.java +0 -122
  399. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/BigIntegerNode.java +0 -104
  400. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/BinaryNode.java +0 -136
  401. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/BooleanNode.java +0 -84
  402. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/ContainerNode.java +0 -185
  403. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/DecimalNode.java +0 -96
  404. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/DoubleNode.java +0 -106
  405. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/IntNode.java +0 -122
  406. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/JsonNodeFactory.java +0 -222
  407. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/LongNode.java +0 -99
  408. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/MissingNode.java +0 -97
  409. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/NodeCursor.java +0 -222
  410. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/NullNode.java +0 -58
  411. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/NumericNode.java +0 -72
  412. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/ObjectNode.java +0 -696
  413. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/POJONode.java +0 -145
  414. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/TextNode.java +0 -299
  415. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/TreeTraversingParser.java +0 -383
  416. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/ValueNode.java +0 -58
  417. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/node/package-info.java +0 -8
  418. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/package-info.java +0 -30
  419. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/schema/JsonSchema.java +0 -82
  420. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/schema/JsonSerializableSchema.java +0 -46
  421. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/schema/SchemaAware.java +0 -25
  422. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/schema/package-info.java +0 -5
  423. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/sym/BytesToNameCanonicalizer.java +0 -969
  424. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/sym/CharsToNameCanonicalizer.java +0 -578
  425. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/sym/Name.java +0 -50
  426. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/sym/Name1.java +0 -44
  427. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/sym/Name2.java +0 -40
  428. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/sym/Name3.java +0 -39
  429. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/sym/NameN.java +0 -68
  430. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/sym/package-info.java +0 -5
  431. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/type/JavaType.java +0 -503
  432. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/type/TypeReference.java +0 -60
  433. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/type/package-info.java +0 -8
  434. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/BufferRecycler.java +0 -109
  435. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/ByteArrayBuilder.java +0 -294
  436. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/CharTypes.java +0 -237
  437. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/DefaultPrettyPrinter.java +0 -282
  438. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/InternCache.java +0 -49
  439. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/JsonGeneratorDelegate.java +0 -273
  440. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/JsonParserDelegate.java +0 -251
  441. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/JsonParserSequence.java +0 -150
  442. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/MinimalPrettyPrinter.java +0 -152
  443. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/TextBuffer.java +0 -707
  444. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/TokenBuffer.java +0 -1233
  445. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/VersionUtil.java +0 -79
  446. data/test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/util/package-info.java +0 -4
@@ -1,206 +0,0 @@
1
- package sh.calaba.org.codehaus.jackson.map.module;
2
-
3
- import java.util.*;
4
-
5
- import sh.calaba.org.codehaus.jackson.map.*;
6
- import sh.calaba.org.codehaus.jackson.map.type.ArrayType;
7
- import sh.calaba.org.codehaus.jackson.map.type.ClassKey;
8
- import sh.calaba.org.codehaus.jackson.map.type.CollectionLikeType;
9
- import sh.calaba.org.codehaus.jackson.map.type.CollectionType;
10
- import sh.calaba.org.codehaus.jackson.map.type.MapLikeType;
11
- import sh.calaba.org.codehaus.jackson.map.type.MapType;
12
- import sh.calaba.org.codehaus.jackson.type.JavaType;
13
-
14
- /**
15
- * Simple implementation {@link Serializers} which allows registration of
16
- * serializers based on raw (type erased class).
17
- * It can work well for basic bean and scalar type serializers, but is not
18
- * a good fit for handling generic types (like {@link Map}s and {@link Collection}s).
19
- *<p>
20
- * Type registrations are assumed to be general; meaning that registration of serializer
21
- * for a super type will also be used for handling subtypes, unless an exact match
22
- * is found first. As an example, handler for {@link CharSequence} would also be used
23
- * serializing {@link StringBuilder} instances, unless a direct mapping was found.
24
- *
25
- * @since 1.7
26
- */
27
- public class SimpleSerializers extends Serializers.Base
28
- {
29
- /**
30
- * Class-based mappings that are used both for exact and
31
- * sub-class matches.
32
- */
33
- protected HashMap<ClassKey,JsonSerializer<?>> _classMappings = null;
34
-
35
- /**
36
- * Interface-based matches.
37
- */
38
- protected HashMap<ClassKey,JsonSerializer<?>> _interfaceMappings = null;
39
-
40
- /*
41
- /**********************************************************
42
- /* Life-cycle, construction and configuring
43
- /**********************************************************
44
- */
45
-
46
- public SimpleSerializers() { }
47
-
48
- /**
49
- * Method for adding given serializer for type that {@link JsonSerializer#handledType}
50
- * specifies (which MUST return a non-null class; and can NOT be {@link Object}, as a
51
- * sanity check).
52
- * For serializers that do not declare handled type, use the variant that takes
53
- * two arguments.
54
- *
55
- * @param ser
56
- */
57
- public void addSerializer(JsonSerializer<?> ser)
58
- {
59
- // Interface to match?
60
- Class<?> cls = ser.handledType();
61
- if (cls == null || cls == Object.class) {
62
- throw new IllegalArgumentException("JsonSerializer of type "+ser.getClass().getName()
63
- +" does not define valid handledType() -- must either register with method that takes type argument "
64
- +" or make serializer extend 'sh.calaba.org.codehaus.jackson.map.ser.std.SerializerBase'");
65
- }
66
- _addSerializer(cls, ser);
67
- }
68
-
69
- public <T> void addSerializer(Class<? extends T> type, JsonSerializer<T> ser)
70
- {
71
- _addSerializer(type, ser);
72
- }
73
-
74
- private void _addSerializer(Class<?> cls, JsonSerializer<?> ser)
75
- {
76
- ClassKey key = new ClassKey(cls);
77
- // Interface or class type?
78
- if (cls.isInterface()) {
79
- if (_interfaceMappings == null) {
80
- _interfaceMappings = new HashMap<ClassKey,JsonSerializer<?>>();
81
- }
82
- _interfaceMappings.put(key, ser);
83
- } else { // nope, class:
84
- if (_classMappings == null) {
85
- _classMappings = new HashMap<ClassKey,JsonSerializer<?>>();
86
- }
87
- _classMappings.put(key, ser);
88
- }
89
- }
90
-
91
- /*
92
- /**********************************************************
93
- /* Serializers implementation
94
- /**********************************************************
95
- */
96
-
97
- @Override
98
- public JsonSerializer<?> findSerializer(SerializationConfig config, JavaType type,
99
- BeanDescription beanDesc, BeanProperty property)
100
- {
101
- Class<?> cls = type.getRawClass();
102
- ClassKey key = new ClassKey(cls);
103
- JsonSerializer<?> ser = null;
104
-
105
- // First: direct match?
106
- if (cls.isInterface()) {
107
- if (_interfaceMappings != null) {
108
- ser = _interfaceMappings.get(key);
109
- if (ser != null) {
110
- return ser;
111
- }
112
- }
113
- } else {
114
- if (_classMappings != null) {
115
- ser = _classMappings.get(key);
116
- if (ser != null) {
117
- return ser;
118
- }
119
- // If not direct match, maybe super-class match?
120
- for (Class<?> curr = cls; (curr != null); curr = curr.getSuperclass()) {
121
- key.reset(curr);
122
- ser = _classMappings.get(key);
123
- if (ser != null) {
124
- return ser;
125
- }
126
- }
127
- }
128
- }
129
- // No direct match? How about super-interfaces?
130
- if (_interfaceMappings != null) {
131
- ser = _findInterfaceMapping(cls, key);
132
- if (ser != null) {
133
- return ser;
134
- }
135
- // still no matches? Maybe interfaces of super classes
136
- if (!cls.isInterface()) {
137
- while ((cls = cls.getSuperclass()) != null) {
138
- ser = _findInterfaceMapping(cls, key);
139
- if (ser != null) {
140
- return ser;
141
- }
142
- }
143
- }
144
- }
145
- return null;
146
- }
147
-
148
- @Override
149
- public JsonSerializer<?> findArraySerializer(SerializationConfig config,
150
- ArrayType type, BeanDescription beanDesc, BeanProperty property,
151
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer) {
152
- return findSerializer(config, type, beanDesc, property);
153
- }
154
-
155
- @Override
156
- public JsonSerializer<?> findCollectionSerializer(SerializationConfig config,
157
- CollectionType type, BeanDescription beanDesc, BeanProperty property,
158
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer) {
159
- return findSerializer(config, type, beanDesc, property);
160
- }
161
-
162
- @Override
163
- public JsonSerializer<?> findCollectionLikeSerializer(SerializationConfig config,
164
- CollectionLikeType type, BeanDescription beanDesc, BeanProperty property,
165
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer) {
166
- return findSerializer(config, type, beanDesc, property);
167
- }
168
-
169
- @Override
170
- public JsonSerializer<?> findMapSerializer(SerializationConfig config,
171
- MapType type, BeanDescription beanDesc, BeanProperty property,
172
- JsonSerializer<Object> keySerializer,
173
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer) {
174
- return findSerializer(config, type, beanDesc, property);
175
- }
176
-
177
- @Override
178
- public JsonSerializer<?> findMapLikeSerializer(SerializationConfig config,
179
- MapLikeType type, BeanDescription beanDesc, BeanProperty property,
180
- JsonSerializer<Object> keySerializer,
181
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer) {
182
- return findSerializer(config, type, beanDesc, property);
183
- }
184
-
185
- /*
186
- /**********************************************************
187
- /* Internal methods
188
- /**********************************************************
189
- */
190
-
191
- protected JsonSerializer<?> _findInterfaceMapping(Class<?> cls, ClassKey key)
192
- {
193
- for (Class<?> iface : cls.getInterfaces()) {
194
- key.reset(iface);
195
- JsonSerializer<?> ser = _interfaceMappings.get(key);
196
- if (ser != null) {
197
- return ser;
198
- }
199
- ser = _findInterfaceMapping(iface, key);
200
- if (ser != null) {
201
- return ser;
202
- }
203
- }
204
- return null;
205
- }
206
- }
@@ -1,45 +0,0 @@
1
- package sh.calaba.org.codehaus.jackson.map.module;
2
-
3
- import java.util.HashMap;
4
-
5
- import sh.calaba.org.codehaus.jackson.map.BeanDescription;
6
- import sh.calaba.org.codehaus.jackson.map.DeserializationConfig;
7
- import sh.calaba.org.codehaus.jackson.map.deser.ValueInstantiator;
8
- import sh.calaba.org.codehaus.jackson.map.deser.ValueInstantiators;
9
- import sh.calaba.org.codehaus.jackson.map.type.ClassKey;
10
-
11
- public class SimpleValueInstantiators
12
- extends ValueInstantiators.Base
13
- {
14
- /**
15
- * Mappings from raw (type-erased, i.e. non-generic) types
16
- * to matching {@link ValueInstantiator} instances.
17
- */
18
- protected HashMap<ClassKey,ValueInstantiator> _classMappings;
19
-
20
- /*
21
- /**********************************************************
22
- /* Life-cycle, construction and configuring
23
- /**********************************************************
24
- */
25
-
26
- public SimpleValueInstantiators()
27
- {
28
- _classMappings = new HashMap<ClassKey,ValueInstantiator>();
29
- }
30
-
31
- public SimpleValueInstantiators addValueInstantiator(Class<?> forType,
32
- ValueInstantiator inst)
33
- {
34
- _classMappings.put(new ClassKey(forType), inst);
35
- return this;
36
- }
37
-
38
- @Override
39
- public ValueInstantiator findValueInstantiator(DeserializationConfig config,
40
- BeanDescription beanDesc, ValueInstantiator defaultInstantiator)
41
- {
42
- ValueInstantiator inst = _classMappings.get(new ClassKey(beanDesc.getBeanClass()));
43
- return (inst == null) ? defaultInstantiator : inst;
44
- }
45
- }
@@ -1,16 +0,0 @@
1
- /**
2
- * Package that contains classes and interfaces to help implement
3
- * custom extension {@link sh.calaba.org.codehaus.jackson.map.Module}s
4
- * (which are registered using
5
- * {@link sh.calaba.org.codehaus.jackson.map.ObjectMapper#registerModule}.
6
- *<p>
7
- * Note that classes in the package only support registering
8
- * handlers for non-generic types (types without type
9
- * parameterization) -- hence "simple" -- which works for
10
- * many cases, but not all. So if you will need to register
11
- * handlers for generic types, you will usually need to either
12
- * sub-class handlers, or implement/extend base types directly.
13
- *
14
- * @since 1.7
15
- */
16
- package sh.calaba.org.codehaus.jackson.map.module;
@@ -1,34 +0,0 @@
1
- /**
2
- Contains basic mapper (conversion) functionality that
3
- allows for converting between regular streaming json content and
4
- Java objects (beans or Tree Model: support for both is via
5
- {@link sh.calaba.org.codehaus.jackson.map.ObjectMapper} class, as well
6
- as convenience methods included in
7
- {@link sh.calaba.org.codehaus.jackson.JsonParser}
8
- <p>
9
- Object mapper will convert Json content to ant from
10
- basic Java wrapper types (Integer, Boolean, Double),
11
- Collection types (List, Map), Java Beans,
12
- Strings and nulls.
13
- <p>
14
- Tree mapper builds dynamically typed tree of <code>JsonNode</code>s
15
- from Json content (and writes such trees as Json),
16
- similar to how DOM model works with xml.
17
- Main benefits over Object mapping are:
18
- <ul>
19
- <li>No null checks are needed (dummy
20
- nodes are created as necessary to represent "missing" Object fields
21
- and Array elements)
22
- </li>
23
- <li>No type casts are usually needed: all public access methods are defined
24
- in basic JsonNode class, and when "incompatible" method (such as Array
25
- element access on, say, Boolean node) is used, returned node is
26
- virtual "missing" node.
27
- </li>
28
- </ul>
29
- Because of its dynamic nature, Tree mapping is often convenient
30
- for basic path access and tree navigation, where structure of
31
- the resulting tree is known in advance.
32
- */
33
-
34
- package sh.calaba.org.codehaus.jackson.map;
@@ -1,48 +0,0 @@
1
- package sh.calaba.org.codehaus.jackson.map.ser;
2
-
3
- import java.lang.reflect.Method;
4
- import java.util.Map;
5
-
6
- import sh.calaba.org.codehaus.jackson.*;
7
- import sh.calaba.org.codehaus.jackson.map.*;
8
- import sh.calaba.org.codehaus.jackson.map.introspect.AnnotatedMethod;
9
- import sh.calaba.org.codehaus.jackson.map.ser.std.MapSerializer;
10
-
11
- /**
12
- * Class similar to {@link BeanPropertyWriter}, but that will be used
13
- * for serializing {@link sh.calaba.org.codehaus.jackson.annotate.JsonAnyGetter} annotated
14
- * (Map) properties
15
- *
16
- * @since 1.6
17
- */
18
- public class AnyGetterWriter
19
- {
20
- protected final Method _anyGetter;
21
-
22
- protected final MapSerializer _serializer;
23
-
24
- public AnyGetterWriter(AnnotatedMethod anyGetter, MapSerializer serializer)
25
- {
26
- _anyGetter = anyGetter.getAnnotated();
27
- _serializer = serializer;
28
- }
29
-
30
- public void getAndSerialize(Object bean, JsonGenerator jgen, SerializerProvider provider)
31
- throws Exception
32
- {
33
- Object value = _anyGetter.invoke(bean);
34
- if (value == null) {
35
- return;
36
- }
37
- if (!(value instanceof Map<?,?>)) {
38
- throw new JsonMappingException("Value returned by 'any-getter' ("+_anyGetter.getName()+"()) not java.util.Map but "
39
- +value.getClass().getName());
40
- }
41
- _serializer.serializeFields((Map<?,?>) value, jgen, provider);
42
- }
43
-
44
- public void resolve(SerializerProvider provider) throws JsonMappingException
45
- {
46
- _serializer.resolve(provider);
47
- }
48
- }
@@ -1,7 +0,0 @@
1
- package sh.calaba.org.codehaus.jackson.map.ser;
2
-
3
- /**
4
- * @deprecated Since 1.9 use {@link sh.calaba.org.codehaus.jackson.map.ser.std.StdArraySerializers}
5
- */
6
- @Deprecated
7
- public class ArraySerializers extends sh.calaba.org.codehaus.jackson.map.ser.std.StdArraySerializers { }
@@ -1,806 +0,0 @@
1
- package sh.calaba.org.codehaus.jackson.map.ser;
2
-
3
- import java.lang.reflect.Method;
4
- import java.math.BigDecimal;
5
- import java.math.BigInteger;
6
- import java.net.InetAddress;
7
- import java.util.*;
8
-
9
- import sh.calaba.org.codehaus.jackson.map.*;
10
- import sh.calaba.org.codehaus.jackson.map.annotate.JsonSerialize;
11
- import sh.calaba.org.codehaus.jackson.map.ext.OptionalHandlerFactory;
12
- import sh.calaba.org.codehaus.jackson.map.introspect.*;
13
- import sh.calaba.org.codehaus.jackson.map.jsontype.NamedType;
14
- import sh.calaba.org.codehaus.jackson.map.jsontype.TypeResolverBuilder;
15
- import sh.calaba.org.codehaus.jackson.map.ser.std.CalendarSerializer;
16
- import sh.calaba.org.codehaus.jackson.map.ser.std.DateSerializer;
17
- import sh.calaba.org.codehaus.jackson.map.ser.std.EnumMapSerializer;
18
- import sh.calaba.org.codehaus.jackson.map.ser.std.EnumSerializer;
19
- import sh.calaba.org.codehaus.jackson.map.ser.std.IndexedStringListSerializer;
20
- import sh.calaba.org.codehaus.jackson.map.ser.std.InetAddressSerializer;
21
- import sh.calaba.org.codehaus.jackson.map.ser.std.JsonValueSerializer;
22
- import sh.calaba.org.codehaus.jackson.map.ser.std.MapSerializer;
23
- import sh.calaba.org.codehaus.jackson.map.ser.std.NullSerializer;
24
- import sh.calaba.org.codehaus.jackson.map.ser.std.ObjectArraySerializer;
25
- import sh.calaba.org.codehaus.jackson.map.ser.std.SerializableSerializer;
26
- import sh.calaba.org.codehaus.jackson.map.ser.std.SerializableWithTypeSerializer;
27
- import sh.calaba.org.codehaus.jackson.map.ser.std.StdArraySerializers;
28
- import sh.calaba.org.codehaus.jackson.map.ser.std.StdContainerSerializers;
29
- import sh.calaba.org.codehaus.jackson.map.ser.std.StdJdkSerializers;
30
- import sh.calaba.org.codehaus.jackson.map.ser.std.StringCollectionSerializer;
31
- import sh.calaba.org.codehaus.jackson.map.ser.std.StringSerializer;
32
- import sh.calaba.org.codehaus.jackson.map.ser.std.TimeZoneSerializer;
33
- import sh.calaba.org.codehaus.jackson.map.ser.std.ToStringSerializer;
34
- import sh.calaba.org.codehaus.jackson.map.ser.std.TokenBufferSerializer;
35
- import sh.calaba.org.codehaus.jackson.map.type.*;
36
- import sh.calaba.org.codehaus.jackson.map.util.ClassUtil;
37
- import sh.calaba.org.codehaus.jackson.map.util.EnumValues;
38
- import sh.calaba.org.codehaus.jackson.type.JavaType;
39
- import sh.calaba.org.codehaus.jackson.util.TokenBuffer;
40
-
41
- /**
42
- * Factory class that can provide serializers for standard JDK classes,
43
- * as well as custom classes that extend standard classes or implement
44
- * one of "well-known" interfaces (such as {@link java.util.Collection}).
45
- *<p>
46
- * Since all the serializers are eagerly instantiated, and there is
47
- * no additional introspection or customizability of these types,
48
- * this factory is essentially stateless.
49
- */
50
- public abstract class BasicSerializerFactory
51
- extends SerializerFactory
52
- {
53
-
54
- /*
55
- /**********************************************************
56
- /* Configuration, lookup tables/maps
57
- /**********************************************************
58
- */
59
-
60
- /**
61
- * Since these are all JDK classes, we shouldn't have to worry
62
- * about ClassLoader used to load them. Rather, we can just
63
- * use the class name, and keep things simple and efficient.
64
- */
65
- protected final static HashMap<String, JsonSerializer<?>> _concrete =
66
- new HashMap<String, JsonSerializer<?>>();
67
-
68
- /**
69
- * Actually it may not make much sense to eagerly instantiate all
70
- * kinds of serializers: so this Map actually contains class references,
71
- * not instances
72
- *
73
- * @since 1.6
74
- */
75
- protected final static HashMap<String, Class<? extends JsonSerializer<?>>> _concreteLazy =
76
- new HashMap<String, Class<? extends JsonSerializer<?>>>();
77
-
78
- static {
79
- /* String and string-like types (note: date types explicitly
80
- * not included -- can use either textual or numeric serialization)
81
- */
82
- _concrete.put(String.class.getName(), new StringSerializer());
83
- final ToStringSerializer sls = ToStringSerializer.instance;
84
- _concrete.put(StringBuffer.class.getName(), sls);
85
- _concrete.put(StringBuilder.class.getName(), sls);
86
- _concrete.put(Character.class.getName(), sls);
87
- _concrete.put(Character.TYPE.getName(), sls);
88
-
89
- // Primitives/wrappers for primitives (primitives needed for Beans)
90
- _concrete.put(Boolean.TYPE.getName(), new StdSerializers.BooleanSerializer(true));
91
- _concrete.put(Boolean.class.getName(), new StdSerializers.BooleanSerializer(false));
92
- final JsonSerializer<?> intS = new StdSerializers.IntegerSerializer();
93
- _concrete.put(Integer.class.getName(), intS);
94
- _concrete.put(Integer.TYPE.getName(), intS);
95
- _concrete.put(Long.class.getName(), StdSerializers.LongSerializer.instance);
96
- _concrete.put(Long.TYPE.getName(), StdSerializers.LongSerializer.instance);
97
- _concrete.put(Byte.class.getName(), StdSerializers.IntLikeSerializer.instance);
98
- _concrete.put(Byte.TYPE.getName(), StdSerializers.IntLikeSerializer.instance);
99
- _concrete.put(Short.class.getName(), StdSerializers.IntLikeSerializer.instance);
100
- _concrete.put(Short.TYPE.getName(), StdSerializers.IntLikeSerializer.instance);
101
-
102
- // Numbers, limited length floating point
103
- _concrete.put(Float.class.getName(), StdSerializers.FloatSerializer.instance);
104
- _concrete.put(Float.TYPE.getName(), StdSerializers.FloatSerializer.instance);
105
- _concrete.put(Double.class.getName(), StdSerializers.DoubleSerializer.instance);
106
- _concrete.put(Double.TYPE.getName(), StdSerializers.DoubleSerializer.instance);
107
-
108
- // Other numbers, more complicated
109
- final JsonSerializer<?> ns = new StdSerializers.NumberSerializer();
110
- _concrete.put(BigInteger.class.getName(), ns);
111
- _concrete.put(BigDecimal.class.getName(), ns);
112
-
113
- // Other discrete non-container types:
114
- // First, Date/Time zoo:
115
- _concrete.put(Calendar.class.getName(), CalendarSerializer.instance);
116
- DateSerializer dateSer = DateSerializer.instance;
117
- _concrete.put(java.util.Date.class.getName(), dateSer);
118
- // note: timestamps are very similar to java.util.Date, thus serialized as such
119
- _concrete.put(java.sql.Timestamp.class.getName(), dateSer);
120
- _concrete.put(java.sql.Date.class.getName(), new StdSerializers.SqlDateSerializer());
121
- _concrete.put(java.sql.Time.class.getName(), new StdSerializers.SqlTimeSerializer());
122
-
123
- // And then other standard non-structured JDK types
124
- for (Map.Entry<Class<?>,Object> en : new StdJdkSerializers().provide()) {
125
- Object value = en.getValue();
126
- if (value instanceof JsonSerializer<?>) {
127
- _concrete.put(en.getKey().getName(), (JsonSerializer<?>) value);
128
- } else if (value instanceof Class<?>) {
129
- @SuppressWarnings("unchecked")
130
- Class<? extends JsonSerializer<?>> cls = (Class<? extends JsonSerializer<?>>) value;
131
- _concreteLazy.put(en.getKey().getName(), cls);
132
- } else { // should never happen, but:
133
- throw new IllegalStateException("Internal error: unrecognized value of type "+en.getClass().getName());
134
- }
135
- }
136
-
137
- // Jackson-specific type(s)
138
- // (Q: can this ever be sub-classed?)
139
- _concreteLazy.put(TokenBuffer.class.getName(), TokenBufferSerializer.class);
140
- }
141
-
142
- protected final static HashMap<String, JsonSerializer<?>> _arraySerializers =
143
- new HashMap<String, JsonSerializer<?>>();
144
- static {
145
- // Arrays of various types (including common object types)
146
- _arraySerializers.put(boolean[].class.getName(), new StdArraySerializers.BooleanArraySerializer());
147
- _arraySerializers.put(byte[].class.getName(), new StdArraySerializers.ByteArraySerializer());
148
- _arraySerializers.put(char[].class.getName(), new StdArraySerializers.CharArraySerializer());
149
- _arraySerializers.put(short[].class.getName(), new StdArraySerializers.ShortArraySerializer());
150
- _arraySerializers.put(int[].class.getName(), new StdArraySerializers.IntArraySerializer());
151
- _arraySerializers.put(long[].class.getName(), new StdArraySerializers.LongArraySerializer());
152
- _arraySerializers.put(float[].class.getName(), new StdArraySerializers.FloatArraySerializer());
153
- _arraySerializers.put(double[].class.getName(), new StdArraySerializers.DoubleArraySerializer());
154
- }
155
-
156
- /**
157
- * Helper object used to deal with serializers for optional JDK types (like ones
158
- * omitted from GAE, Android)
159
- */
160
- protected OptionalHandlerFactory optionalHandlers = OptionalHandlerFactory.instance;
161
-
162
- /*
163
- /**********************************************************
164
- /* Life cycle
165
- /**********************************************************
166
- */
167
-
168
- /**
169
- * We will provide default constructor to allow sub-classing,
170
- * but make it protected so that no non-singleton instances of
171
- * the class will be instantiated.
172
- */
173
- protected BasicSerializerFactory() { }
174
-
175
- /*
176
- /**********************************************************
177
- /* SerializerFactory impl
178
- /**********************************************************
179
- */
180
-
181
- // Implemented by sub-classes
182
- @Override
183
- public abstract JsonSerializer<Object> createSerializer(SerializationConfig config, JavaType type,
184
- BeanProperty property)
185
- throws JsonMappingException;
186
-
187
- /**
188
- * Method called to construct a type serializer for values with given declared
189
- * base type. This is called for values other than those of bean property
190
- * types.
191
- */
192
- @Override
193
- public TypeSerializer createTypeSerializer(SerializationConfig config, JavaType baseType,
194
- BeanProperty property)
195
- {
196
- BasicBeanDescription bean = config.introspectClassAnnotations(baseType.getRawClass());
197
- AnnotatedClass ac = bean.getClassInfo();
198
- AnnotationIntrospector ai = config.getAnnotationIntrospector();
199
- TypeResolverBuilder<?> b = ai.findTypeResolver(config, ac, baseType);
200
- /* Ok: if there is no explicit type info handler, we may want to
201
- * use a default. If so, config object knows what to use.
202
- */
203
- Collection<NamedType> subtypes = null;
204
- if (b == null) {
205
- b = config.getDefaultTyper(baseType);
206
- } else {
207
- subtypes = config.getSubtypeResolver().collectAndResolveSubtypes(ac, config, ai);
208
- }
209
- return (b == null) ? null : b.buildTypeSerializer(config, baseType, subtypes, property);
210
- }
211
-
212
-
213
- /*
214
- /**********************************************************
215
- /* Additional API for other core classes
216
- /**********************************************************
217
- */
218
-
219
- public final JsonSerializer<?> getNullSerializer() {
220
- return NullSerializer.instance;
221
- }
222
-
223
- protected abstract Iterable<Serializers> customSerializers();
224
-
225
- /*
226
- /**********************************************************
227
- /* Overridable secondary serializer accessor methods
228
- /**********************************************************
229
- */
230
-
231
- /**
232
- * Method that will use fast lookup (and identity comparison) methods to
233
- * see if we know serializer to use for given type.
234
- */
235
- public final JsonSerializer<?> findSerializerByLookup(JavaType type, SerializationConfig config,
236
- BasicBeanDescription beanDesc, BeanProperty property,
237
- boolean staticTyping)
238
- {
239
- Class<?> raw = type.getRawClass();
240
- String clsName = raw.getName();
241
- JsonSerializer<?> ser = _concrete.get(clsName);
242
- if (ser != null) {
243
- return ser;
244
- }
245
- Class<? extends JsonSerializer<?>> serClass = _concreteLazy.get(clsName);
246
- if (serClass != null) {
247
- try {
248
- return serClass.newInstance();
249
- } catch (Exception e) {
250
- throw new IllegalStateException("Failed to instantiate standard serializer (of type "+serClass.getName()+"): "
251
- +e.getMessage(), e);
252
- }
253
- }
254
- return null;
255
- }
256
-
257
- /**
258
- * Method for checking if we can determine serializer to use based on set of
259
- * known primary types, checking for set of known base types (exact matches
260
- * having been compared against with <code>findSerializerByLookup</code>).
261
- * This does not include "secondary" interfaces, but
262
- * mostly concrete or abstract base classes.
263
- */
264
- @SuppressWarnings("deprecation")
265
- public final JsonSerializer<?> findSerializerByPrimaryType(JavaType type, SerializationConfig config,
266
- BasicBeanDescription beanDesc, BeanProperty property,
267
- boolean staticTyping)
268
- throws JsonMappingException
269
- {
270
- Class<?> raw = type.getRawClass();
271
- // First: JsonSerializable and related
272
- if (JsonSerializable.class.isAssignableFrom(raw)) {
273
- if (JsonSerializableWithType.class.isAssignableFrom(raw)) {
274
- return SerializableWithTypeSerializer.instance;
275
- }
276
- return SerializableSerializer.instance;
277
- }
278
- // Second: as per [JACKSON-193] consider @JsonValue for any types:
279
- AnnotatedMethod valueMethod = beanDesc.findJsonValueMethod();
280
- if (valueMethod != null) {
281
- // [JACKSON-586]: need to ensure accessibility of method
282
- Method m = valueMethod.getAnnotated();
283
- if (config.isEnabled(SerializationConfig.Feature.CAN_OVERRIDE_ACCESS_MODIFIERS)) {
284
- ClassUtil.checkAndFixAccess(m);
285
- }
286
- JsonSerializer<Object> ser = findSerializerFromAnnotation(config, valueMethod, property);
287
- return new JsonValueSerializer(m, ser, property);
288
- }
289
-
290
- // One unfortunate special case, as per [JACKSON-484]
291
- if (InetAddress.class.isAssignableFrom(raw)) {
292
- return InetAddressSerializer.instance;
293
- }
294
- // ... and another one, [JACKSON-522], for TimeZone
295
- if (TimeZone.class.isAssignableFrom(raw)) {
296
- return TimeZoneSerializer.instance;
297
- }
298
- // and yet one more [JACKSON-789]
299
- if (java.nio.charset.Charset.class.isAssignableFrom(raw)) {
300
- return ToStringSerializer.instance;
301
- }
302
-
303
- // Then check for optional/external serializers [JACKSON-386]
304
- JsonSerializer<?> ser = optionalHandlers.findSerializer(config, type);
305
- if (ser != null) {
306
- return ser;
307
- }
308
-
309
- if (Number.class.isAssignableFrom(raw)) {
310
- return StdSerializers.NumberSerializer.instance;
311
- }
312
- if (Enum.class.isAssignableFrom(raw)) {
313
- @SuppressWarnings("unchecked")
314
- Class<Enum<?>> enumClass = (Class<Enum<?>>) raw;
315
- return EnumSerializer.construct(enumClass, config, beanDesc);
316
- }
317
- if (Calendar.class.isAssignableFrom(raw)) {
318
- return CalendarSerializer.instance;
319
- }
320
- if (java.util.Date.class.isAssignableFrom(raw)) {
321
- return DateSerializer.instance;
322
- }
323
- return null;
324
- }
325
-
326
- /**
327
- * Reflection-based serialized find method, which checks if
328
- * given class implements one of recognized "add-on" interfaces.
329
- * Add-on here means a role that is usually or can be a secondary
330
- * trait: for example,
331
- * bean classes may implement {@link Iterable}, but their main
332
- * function is usually something else. The reason for
333
- */
334
- public final JsonSerializer<?> findSerializerByAddonType(SerializationConfig config, JavaType javaType,
335
- BasicBeanDescription beanDesc, BeanProperty property,
336
- boolean staticTyping)
337
- throws JsonMappingException
338
- {
339
- Class<?> type = javaType.getRawClass();
340
-
341
- // These need to be in decreasing order of specificity...
342
- if (Iterator.class.isAssignableFrom(type)) {
343
- return buildIteratorSerializer(config, javaType, beanDesc, property, staticTyping);
344
- }
345
- if (Iterable.class.isAssignableFrom(type)) {
346
- return buildIterableSerializer(config, javaType, beanDesc, property, staticTyping);
347
- }
348
- if (CharSequence.class.isAssignableFrom(type)) {
349
- return ToStringSerializer.instance;
350
- }
351
- return null;
352
- }
353
-
354
- /**
355
- * Helper method called to check if a class or method
356
- * has an annotation
357
- * (@link sh.calaba.org.codehaus.jackson.map.ser.JsonSerialize#using)
358
- * that tells the class to use for serialization.
359
- * Returns null if no such annotation found.
360
- */
361
- @SuppressWarnings("unchecked")
362
- protected JsonSerializer<Object> findSerializerFromAnnotation(SerializationConfig config, Annotated a,
363
- BeanProperty property)
364
- throws JsonMappingException
365
- {
366
- Object serDef = config.getAnnotationIntrospector().findSerializer(a);
367
- if (serDef == null) {
368
- return null;
369
- }
370
- if (serDef instanceof JsonSerializer) {
371
- JsonSerializer<Object> ser = (JsonSerializer<Object>) serDef;
372
- if (ser instanceof ContextualSerializer<?>) {
373
- return ((ContextualSerializer<Object>) ser).createContextual(config, property);
374
- }
375
- return ser;
376
- }
377
- /* Alas, there's no way to force return type of "either class
378
- * X or Y" -- need to throw an exception after the fact
379
- */
380
- if (!(serDef instanceof Class)) {
381
- throw new IllegalStateException("AnnotationIntrospector returned value of type "+serDef.getClass().getName()+"; expected type JsonSerializer or Class<JsonSerializer> instead");
382
- }
383
- Class<?> cls = (Class<?>) serDef;
384
- if (!JsonSerializer.class.isAssignableFrom(cls)) {
385
- throw new IllegalStateException("AnnotationIntrospector returned Class "+cls.getName()+"; expected Class<JsonSerializer>");
386
- }
387
- JsonSerializer<Object> ser = config.serializerInstance(a, (Class<? extends JsonSerializer<?>>) cls);
388
- if (ser instanceof ContextualSerializer<?>) {
389
- return ((ContextualSerializer<Object>) ser).createContextual(config, property);
390
- }
391
- return ser;
392
- }
393
-
394
- /*
395
- /**********************************************************
396
- /* Factory methods, container types:
397
- /**********************************************************
398
- */
399
-
400
- public JsonSerializer<?> buildContainerSerializer(SerializationConfig config, JavaType type,
401
- BasicBeanDescription beanDesc, BeanProperty property, boolean staticTyping)
402
- {
403
- // Let's see what we can learn about element/content/value type, type serializer for it:
404
- JavaType elementType = type.getContentType();
405
- TypeSerializer elementTypeSerializer = createTypeSerializer(config, elementType, property);
406
-
407
- // if elements have type serializer, can not force static typing:
408
- if (elementTypeSerializer != null) {
409
- staticTyping = false;
410
- } else if (!staticTyping) {
411
- staticTyping = usesStaticTyping(config, beanDesc, elementTypeSerializer, property);
412
- }
413
- JsonSerializer<Object> elementValueSerializer = findContentSerializer(config,
414
- beanDesc.getClassInfo(), property);
415
-
416
- if (type.isMapLikeType()) { // implements java.util.Map
417
- MapLikeType mlt = (MapLikeType) type;
418
- JsonSerializer<Object> keySerializer = findKeySerializer(config, beanDesc.getClassInfo(), property);
419
- if (mlt.isTrueMapType()) {
420
- return buildMapSerializer(config, (MapType) mlt, beanDesc, property, staticTyping,
421
- keySerializer, elementTypeSerializer, elementValueSerializer);
422
- }
423
- return buildMapLikeSerializer(config, mlt, beanDesc, property, staticTyping,
424
- keySerializer, elementTypeSerializer, elementValueSerializer);
425
- }
426
- if (type.isCollectionLikeType()) {
427
- CollectionLikeType clt = (CollectionLikeType) type;
428
- if (clt.isTrueCollectionType()) {
429
- return buildCollectionSerializer(config, (CollectionType) clt, beanDesc, property, staticTyping,
430
- elementTypeSerializer, elementValueSerializer);
431
- }
432
- return buildCollectionLikeSerializer(config, clt, beanDesc, property, staticTyping,
433
- elementTypeSerializer, elementValueSerializer);
434
- }
435
- if (type.isArrayType()) {
436
- return buildArraySerializer(config, (ArrayType) type, beanDesc, property, staticTyping,
437
- elementTypeSerializer, elementValueSerializer);
438
- }
439
- return null;
440
- }
441
-
442
- /**
443
- * Helper method that handles configuration details when constructing serializers for
444
- * Collection and Collection-like types.
445
- *
446
- * @since 1.8
447
- */
448
- protected JsonSerializer<?> buildCollectionLikeSerializer(SerializationConfig config,
449
- CollectionLikeType type,
450
- BasicBeanDescription beanDesc, BeanProperty property,
451
- boolean staticTyping,
452
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
453
- {
454
- for (Serializers serializers : customSerializers()) {
455
- JsonSerializer<?> ser = serializers.findCollectionLikeSerializer(config, type, beanDesc, property,
456
- elementTypeSerializer, elementValueSerializer);
457
- if (ser != null) {
458
- return ser;
459
- }
460
- }
461
- return null;
462
- }
463
-
464
- /**
465
- * Helper method that handles configuration details when constructing serializers for
466
- * {@link java.util.List} types that support efficient by-index access
467
- *<p>
468
- * Note: signature changed in 1.8, to take 'staticTyping' argument
469
- */
470
- protected JsonSerializer<?> buildCollectionSerializer(SerializationConfig config,
471
- CollectionType type,
472
- BasicBeanDescription beanDesc, BeanProperty property,
473
- boolean staticTyping,
474
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
475
- {
476
- // Module-provided custom collection serializers?
477
- for (Serializers serializers : customSerializers()) {
478
- JsonSerializer<?> ser = serializers.findCollectionSerializer(config, type, beanDesc, property,
479
- elementTypeSerializer, elementValueSerializer);
480
- if (ser != null) {
481
- return ser;
482
- }
483
- }
484
- Class<?> raw = type.getRawClass();
485
- if (EnumSet.class.isAssignableFrom(raw)) {
486
- return buildEnumSetSerializer(config, type, beanDesc, property, staticTyping,
487
- elementTypeSerializer, elementValueSerializer);
488
- }
489
- Class<?> elementRaw = type.getContentType().getRawClass();
490
- if (isIndexedList(raw)) {
491
- if (elementRaw == String.class) {
492
- return new IndexedStringListSerializer(property);
493
- }
494
- return StdContainerSerializers.indexedListSerializer(type.getContentType(), staticTyping,
495
- elementTypeSerializer, property, elementValueSerializer);
496
- }
497
- if (elementRaw == String.class) {
498
- return new StringCollectionSerializer(property);
499
- }
500
- return StdContainerSerializers.collectionSerializer(type.getContentType(), staticTyping,
501
- elementTypeSerializer, property, elementValueSerializer);
502
- }
503
-
504
- protected JsonSerializer<?> buildEnumSetSerializer(SerializationConfig config, JavaType type,
505
- BasicBeanDescription beanDesc, BeanProperty property,
506
- boolean staticTyping,
507
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
508
- {
509
- // this may or may not be available (Class doesn't; type of field/method does)
510
- JavaType enumType = type.getContentType();
511
- // and even if nominally there is something, only use if it really is enum
512
- if (!enumType.isEnumType()) {
513
- enumType = null;
514
- }
515
- return StdContainerSerializers.enumSetSerializer(enumType, property);
516
- }
517
-
518
- /**
519
- * @since 1.8
520
- */
521
- protected boolean isIndexedList(Class<?> cls)
522
- {
523
- return RandomAccess.class.isAssignableFrom(cls);
524
- }
525
-
526
- /*
527
- /**********************************************************
528
- /* Factory methods, for Maps
529
- /**********************************************************
530
- */
531
-
532
- /**
533
- * Helper method that handles configuration details when constructing serializers for
534
- * all "Map-like" types; both ones that implement {@link java.util.Map} and
535
- * ones that do not (but that have been indicated to behave like Maps).
536
- *
537
- * @since 1.8
538
- */
539
- protected JsonSerializer<?> buildMapLikeSerializer(SerializationConfig config, MapLikeType type,
540
- BasicBeanDescription beanDesc, BeanProperty property,
541
- boolean staticTyping,
542
- JsonSerializer<Object> keySerializer,
543
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
544
- {
545
- for (Serializers serializers : customSerializers()) {
546
- JsonSerializer<?> ser = serializers.findMapLikeSerializer(config, type, beanDesc, property,
547
- keySerializer, elementTypeSerializer, elementValueSerializer);
548
- if (ser != null) {
549
- return ser;
550
- }
551
- }
552
- return null;
553
- }
554
-
555
- /**
556
- * Helper method that handles configuration details when constructing serializers for
557
- * {@link java.util.Map} types.
558
- *<p>
559
- * Note: signature changed in 1.8, to take 'staticTyping' argument
560
- */
561
- protected JsonSerializer<?> buildMapSerializer(SerializationConfig config, MapType type,
562
- BasicBeanDescription beanDesc, BeanProperty property,
563
- boolean staticTyping,
564
- JsonSerializer<Object> keySerializer,
565
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
566
- {
567
- for (Serializers serializers : customSerializers()) {
568
- JsonSerializer<?> ser = serializers.findMapSerializer(config, type, beanDesc, property,
569
- keySerializer, elementTypeSerializer, elementValueSerializer);
570
- if (ser != null) {
571
- return ser;
572
- }
573
- }
574
- if (EnumMap.class.isAssignableFrom(type.getRawClass())) {
575
- return buildEnumMapSerializer(config, type, beanDesc, property, staticTyping,
576
- elementTypeSerializer, elementValueSerializer);
577
- }
578
- return MapSerializer.construct(config.getAnnotationIntrospector().findPropertiesToIgnore(beanDesc.getClassInfo()),
579
- type, staticTyping, elementTypeSerializer, property,
580
- keySerializer, elementValueSerializer);
581
- }
582
-
583
- /**
584
- * Helper method that handles configuration details when constructing serializers for
585
- * {@link java.util.EnumMap} types.
586
- *<p>
587
- * Note: signature changed in 1.8, to take 'staticTyping' argument
588
- */
589
- protected JsonSerializer<?> buildEnumMapSerializer(SerializationConfig config, JavaType type,
590
- BasicBeanDescription beanDesc, BeanProperty property,
591
- boolean staticTyping,
592
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
593
- {
594
- JavaType keyType = type.getKeyType();
595
- // Need to find key enum values...
596
- EnumValues enums = null;
597
- if (keyType.isEnumType()) { // non-enum if we got it as type erased class (from instance)
598
- @SuppressWarnings("unchecked")
599
- Class<Enum<?>> enumClass = (Class<Enum<?>>) keyType.getRawClass();
600
- enums = EnumValues.construct(enumClass, config.getAnnotationIntrospector());
601
- }
602
- return new EnumMapSerializer(type.getContentType(), staticTyping, enums,
603
- elementTypeSerializer, property, elementValueSerializer);
604
- }
605
-
606
- /*
607
- /**********************************************************
608
- /* Factory methods, for Arrays
609
- /**********************************************************
610
- */
611
-
612
- /**
613
- * Helper method that handles configuration details when constructing serializers for
614
- * <code>Object[]</code> (and subtypes, except for String).
615
- */
616
- protected JsonSerializer<?> buildArraySerializer(SerializationConfig config, ArrayType type,
617
- BasicBeanDescription beanDesc, BeanProperty property,
618
- boolean staticTyping,
619
- TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
620
- {
621
- Class<?> raw = type.getRawClass();
622
- if (String[].class == raw) {
623
- return new StdArraySerializers.StringArraySerializer(property);
624
- }
625
- // other standard types?
626
- JsonSerializer<?> ser = _arraySerializers.get(raw.getName());
627
- if (ser != null) {
628
- return ser;
629
- }
630
- return new ObjectArraySerializer(type.getContentType(), staticTyping, elementTypeSerializer,
631
- property, elementValueSerializer);
632
- }
633
-
634
- /*
635
- /**********************************************************
636
- /* Factory methods, for non-container types
637
- /**********************************************************
638
- */
639
-
640
- protected JsonSerializer<?> buildIteratorSerializer(SerializationConfig config, JavaType type,
641
- BasicBeanDescription beanDesc, BeanProperty property,
642
- boolean staticTyping)
643
- {
644
- // if there's generic type, it'll be the first contained type
645
- JavaType valueType = type.containedType(0);
646
- if (valueType == null) {
647
- valueType = TypeFactory.unknownType();
648
- }
649
- TypeSerializer vts = createTypeSerializer(config, valueType, property);
650
- return StdContainerSerializers.iteratorSerializer(valueType,
651
- usesStaticTyping(config, beanDesc, vts, property), vts, property);
652
- }
653
-
654
- protected JsonSerializer<?> buildIterableSerializer(SerializationConfig config, JavaType type,
655
- BasicBeanDescription beanDesc, BeanProperty property,
656
- boolean staticTyping)
657
- {
658
- // if there's generic type, it'll be the first contained type
659
- JavaType valueType = type.containedType(0);
660
- if (valueType == null) {
661
- valueType = TypeFactory.unknownType();
662
- }
663
- TypeSerializer vts = createTypeSerializer(config, valueType, property);
664
- return StdContainerSerializers.iterableSerializer(valueType,
665
- usesStaticTyping(config, beanDesc, vts, property), vts, property);
666
- }
667
-
668
- /*
669
- /**********************************************************
670
- /* Other helper methods
671
- /**********************************************************
672
- */
673
-
674
- /**
675
- * Helper method used to encapsulate details of annotation-based type
676
- * coercion
677
- *
678
- * @since 1.8
679
- */
680
- @SuppressWarnings("unchecked")
681
- protected <T extends JavaType> T modifyTypeByAnnotation(SerializationConfig config, Annotated a, T type)
682
- {
683
- // first: let's check class for the instance itself:
684
- Class<?> superclass = config.getAnnotationIntrospector().findSerializationType(a);
685
- if (superclass != null) {
686
- try {
687
- type = (T) type.widenBy(superclass);
688
- } catch (IllegalArgumentException iae) {
689
- throw new IllegalArgumentException("Failed to widen type "+type+" with concrete-type annotation (value "+superclass.getName()+"), method '"+a.getName()+"': "+iae.getMessage());
690
- }
691
- }
692
- return modifySecondaryTypesByAnnotation(config, a, type);
693
- }
694
-
695
- /**
696
- * @since 1.8
697
- */
698
- @SuppressWarnings("unchecked")
699
- protected static <T extends JavaType> T modifySecondaryTypesByAnnotation(SerializationConfig config, Annotated a, T type)
700
- {
701
- AnnotationIntrospector intr = config.getAnnotationIntrospector();
702
- // then key class
703
- if (type.isContainerType()) {
704
- Class<?> keyClass = intr.findSerializationKeyType(a, type.getKeyType());
705
- if (keyClass != null) {
706
- // illegal to use on non-Maps
707
- if (!(type instanceof MapType)) {
708
- throw new IllegalArgumentException("Illegal key-type annotation: type "+type+" is not a Map type");
709
- }
710
- try {
711
- type = (T) ((MapType) type).widenKey(keyClass);
712
- } catch (IllegalArgumentException iae) {
713
- throw new IllegalArgumentException("Failed to narrow key type "+type+" with key-type annotation ("+keyClass.getName()+"): "+iae.getMessage());
714
- }
715
- }
716
-
717
- // and finally content class; only applicable to structured types
718
- Class<?> cc = intr.findSerializationContentType(a, type.getContentType());
719
- if (cc != null) {
720
- try {
721
- type = (T) type.widenContentsBy(cc);
722
- } catch (IllegalArgumentException iae) {
723
- throw new IllegalArgumentException("Failed to narrow content type "+type+" with content-type annotation ("+cc.getName()+"): "+iae.getMessage());
724
- }
725
- }
726
- }
727
- return type;
728
- }
729
-
730
- protected static JsonSerializer<Object> findKeySerializer(SerializationConfig config,
731
- Annotated a, BeanProperty property)
732
- {
733
- AnnotationIntrospector intr = config.getAnnotationIntrospector();
734
- Class<? extends JsonSerializer<?>> serClass = intr.findKeySerializer(a);
735
- if (serClass == null || serClass == JsonSerializer.None.class) {
736
- if (property != null) {
737
- serClass = intr.findKeySerializer(property.getMember());
738
- }
739
- }
740
- if (serClass != null && serClass != JsonSerializer.None.class) {
741
- return config.serializerInstance(a, serClass);
742
- }
743
- return null;
744
- }
745
-
746
- protected static JsonSerializer<Object> findContentSerializer(SerializationConfig config,
747
- Annotated a, BeanProperty property)
748
- {
749
- AnnotationIntrospector intr = config.getAnnotationIntrospector();
750
- Class<? extends JsonSerializer<?>> serClass = intr.findContentSerializer(a);
751
- if (serClass == null || serClass == JsonSerializer.None.class) {
752
- if (property != null) {
753
- serClass = intr.findContentSerializer(property.getMember());
754
- }
755
- }
756
- if (serClass != null && serClass != JsonSerializer.None.class) {
757
- return config.serializerInstance(a, serClass);
758
- }
759
- return null;
760
- }
761
-
762
- /**
763
- * Helper method to check whether global settings and/or class
764
- * annotations for the bean class indicate that static typing
765
- * (declared types) should be used for properties.
766
- * (instead of dynamic runtime types).
767
- */
768
- protected boolean usesStaticTyping(SerializationConfig config, BasicBeanDescription beanDesc,
769
- TypeSerializer typeSer, BeanProperty property)
770
- {
771
- /* 16-Aug-2010, tatu: If there is a (value) type serializer, we can not force
772
- * static typing; that would make it impossible to handle expected subtypes
773
- */
774
- if (typeSer != null) {
775
- return false;
776
- }
777
- AnnotationIntrospector intr = config.getAnnotationIntrospector();
778
- JsonSerialize.Typing t = intr.findSerializationTyping(beanDesc.getClassInfo());
779
- if (t != null) {
780
- if (t == JsonSerialize.Typing.STATIC) {
781
- return true;
782
- }
783
- } else {
784
- if (config.isEnabled(SerializationConfig.Feature.USE_STATIC_TYPING)) {
785
- return true;
786
- }
787
- }
788
- /* 11-Mar-2011, tatu: Ok. This is bit hacky, but we really need to be able to find cases
789
- * where key and/or value serializers were specified, to force use of static typing
790
- */
791
- if (property != null) {
792
- JavaType type = property.getType();
793
- if (type.isContainerType()) {
794
- if (intr.findSerializationContentType(property.getMember(), property.getType()) != null) {
795
- return true;
796
- }
797
- if (type instanceof MapType) {
798
- if (intr.findSerializationKeyType(property.getMember(), property.getType()) != null) {
799
- return true;
800
- }
801
- }
802
- }
803
- }
804
- return false;
805
- }
806
- }