protected CreatorContainer findDeserializerCreators(DeserializationConfig paramDeserializationConfig, BasicBeanDescription paramBasicBeanDescription) throws JsonMappingException { boolean bool = paramDeserializationConfig.isEnabled(DeserializationConfig.Feature.CAN_OVERRIDE_ACCESS_MODIFIERS); CreatorContainer localCreatorContainer = new CreatorContainer(paramBasicBeanDescription, bool); AnnotationIntrospector localAnnotationIntrospector = paramDeserializationConfig.getAnnotationIntrospector(); if (paramBasicBeanDescription.getType().isConcrete()) { Constructor localConstructor = paramBasicBeanDescription.findDefaultConstructor(); if (localConstructor != null) { if (bool) ClassUtil.checkAndFixAccess(localConstructor); localCreatorContainer.setDefaultConstructor(localConstructor); } } VisibilityChecker localVisibilityChecker1 = paramDeserializationConfig.getDefaultVisibilityChecker(); if (!paramDeserializationConfig.isEnabled(DeserializationConfig.Feature.AUTO_DETECT_CREATORS)) localVisibilityChecker1 = localVisibilityChecker1.withCreatorVisibility(JsonAutoDetect.Visibility.NONE); VisibilityChecker localVisibilityChecker2 = paramDeserializationConfig.getAnnotationIntrospector().findAutoDetectVisibility(paramBasicBeanDescription.getClassInfo(), localVisibilityChecker1); _addDeserializerConstructors(paramDeserializationConfig, paramBasicBeanDescription, localVisibilityChecker2, localAnnotationIntrospector, localCreatorContainer); _addDeserializerFactoryMethods(paramDeserializationConfig, paramBasicBeanDescription, localVisibilityChecker2, localAnnotationIntrospector, localCreatorContainer); return localCreatorContainer; }
protected ValueInstantiator constructDefaultValueInstantiator(DeserializationConfig paramDeserializationConfig, BasicBeanDescription paramBasicBeanDescription) { boolean bool = paramDeserializationConfig.isEnabled(DeserializationConfig.Feature.CAN_OVERRIDE_ACCESS_MODIFIERS); CreatorCollector localCreatorCollector = new CreatorCollector(paramBasicBeanDescription, bool); AnnotationIntrospector localAnnotationIntrospector = paramDeserializationConfig.getAnnotationIntrospector(); if (paramBasicBeanDescription.getType().isConcrete()) { AnnotatedConstructor localAnnotatedConstructor = paramBasicBeanDescription.findDefaultConstructor(); if (localAnnotatedConstructor != null) { if (bool) ClassUtil.checkAndFixAccess(localAnnotatedConstructor.getAnnotated()); localCreatorCollector.setDefaultConstructor(localAnnotatedConstructor); } } VisibilityChecker localVisibilityChecker1 = paramDeserializationConfig.getDefaultVisibilityChecker(); VisibilityChecker localVisibilityChecker2 = paramDeserializationConfig.getAnnotationIntrospector().findAutoDetectVisibility(paramBasicBeanDescription.getClassInfo(), localVisibilityChecker1); _addDeserializerFactoryMethods(paramDeserializationConfig, paramBasicBeanDescription, localVisibilityChecker2, localAnnotationIntrospector, localCreatorCollector); _addDeserializerConstructors(paramDeserializationConfig, paramBasicBeanDescription, localVisibilityChecker2, localAnnotationIntrospector, localCreatorCollector); return localCreatorCollector.constructValueInstantiator(paramDeserializationConfig); }
@Override public VisibilityChecker<?> findAutoDetectVisibility(AnnotatedClass ac, VisibilityChecker<?> checker) { return checker.withFieldVisibility(Visibility.NONE) .withSetterVisibility(Visibility.PUBLIC_ONLY) .withGetterVisibility(Visibility.PUBLIC_ONLY) .withIsGetterVisibility(Visibility.PUBLIC_ONLY) ; }
public void fromAnnotations(Class<?> paramClass) { AnnotationIntrospector localAnnotationIntrospector = getAnnotationIntrospector(); AnnotatedClass localAnnotatedClass = AnnotatedClass.construct(paramClass, localAnnotationIntrospector, null); VisibilityChecker localVisibilityChecker = getDefaultVisibilityChecker(); this._base = this._base.withVisibilityChecker(localAnnotationIntrospector.findAutoDetectVisibility(localAnnotatedClass, localVisibilityChecker)); }
public Base(ClassIntrospector<? extends BeanDescription> paramClassIntrospector, AnnotationIntrospector paramAnnotationIntrospector, VisibilityChecker<?> paramVisibilityChecker, PropertyNamingStrategy paramPropertyNamingStrategy, TypeFactory paramTypeFactory, TypeResolverBuilder<?> paramTypeResolverBuilder, DateFormat paramDateFormat, HandlerInstantiator paramHandlerInstantiator) { this._classIntrospector = paramClassIntrospector; this._annotationIntrospector = paramAnnotationIntrospector; this._visibilityChecker = paramVisibilityChecker; this._propertyNamingStrategy = paramPropertyNamingStrategy; this._typeFactory = paramTypeFactory; this._typeResolverBuilder = paramTypeResolverBuilder; this._dateFormat = paramDateFormat; this._handlerInstantiator = paramHandlerInstantiator; }
public SerializationConfig(ClassIntrospector<? extends BeanDescription> intr, AnnotationIntrospector annIntr, VisibilityChecker<?> vc) { _classIntrospector = intr; _annotationIntrospector = annIntr; _typer = null; _visibilityChecker = vc; }
protected SerializationConfig(SerializationConfig src, HashMap<ClassKey,Class<?>> mixins, TypeResolverBuilder<?> typer, VisibilityChecker<?> vc) { _classIntrospector = src._classIntrospector; _annotationIntrospector = src._annotationIntrospector; _featureFlags = src._featureFlags; _dateFormat = src._dateFormat; _serializationInclusion = src._serializationInclusion; _serializationView = src._serializationView; _mixInAnnotations = mixins; _typer = typer; _visibilityChecker = vc; }
/** * Method that is called to create a non-shared copy of the configuration * to be used for a serialization operation. * Note that if sub-classing * and sub-class has additional instance methods, * this method <b>must</b> be overridden to produce proper sub-class * instance. */ //@Override public SerializationConfig createUnshared(TypeResolverBuilder<?> typer, VisibilityChecker<?> vc) { HashMap<ClassKey,Class<?>> mixins = _mixInAnnotations; _mixInAnnotationsShared = true; return new SerializationConfig(this, mixins, typer, vc); }
public DeserializationConfig(ClassIntrospector<? extends BeanDescription> intr, AnnotationIntrospector annIntr, VisibilityChecker<?> vc) { _classIntrospector = intr; _annotationIntrospector = annIntr; _typer = null; _visibilityChecker = vc; }
protected DeserializationConfig(DeserializationConfig src, HashMap<ClassKey,Class<?>> mixins, TypeResolverBuilder<?> typer, VisibilityChecker<?> vc) { _classIntrospector = src._classIntrospector; _annotationIntrospector = src._annotationIntrospector; _featureFlags = src._featureFlags; _problemHandlers = src._problemHandlers; _dateFormat = src._dateFormat; _mixInAnnotations = mixins; _typer = typer; _visibilityChecker = vc; }
/** * Method that is called to create a non-shared copy of the configuration * to be used for a deserialization operation. * Note that if sub-classing * and sub-class has additional instance methods, * this method <b>must</b> be overridden to produce proper sub-class * instance. */ //@Override public DeserializationConfig createUnshared(TypeResolverBuilder<?> typer, VisibilityChecker<?> vc) { HashMap<ClassKey,Class<?>> mixins = _mixInAnnotations; _mixInAnnotationsShared = true; return new DeserializationConfig(this, mixins, typer, vc); }
public static ObjectMapper create() { final ObjectMapper mapper = new ObjectMapper(); mapper.configure(Feature.FAIL_ON_UNKNOWN_PROPERTIES, false); mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL); mapper.enableDefaultTyping(); mapper.setVisibilityChecker(VisibilityChecker.Std.defaultInstance() .withFieldVisibility(Visibility.ANY) .withGetterVisibility(Visibility.NONE)); return mapper; }
public JacksonObjectMapperWithOptions() { super(); this.getJsonFactory().setCharacterEscapes(new HTMLCharacterEscapes()); configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES, true); configure(JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES, true); configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false); configure(DeserializationConfig.Feature.CAN_OVERRIDE_ACCESS_MODIFIERS, true); configure(DeserializationConfig.Feature.AUTO_DETECT_FIELDS, true); setVisibilityChecker(VisibilityChecker.Std.defaultInstance().withFieldVisibility(JsonAutoDetect.Visibility.ANY)); }
public VisibilityChecker<?> getDefaultVisibilityChecker() { VisibilityChecker localVisibilityChecker = super.getDefaultVisibilityChecker(); if (!isEnabled(SerializationConfig.Feature.AUTO_DETECT_GETTERS)) localVisibilityChecker = localVisibilityChecker.withGetterVisibility(JsonAutoDetect.Visibility.NONE); if (!isEnabled(SerializationConfig.Feature.AUTO_DETECT_IS_GETTERS)) localVisibilityChecker = localVisibilityChecker.withIsGetterVisibility(JsonAutoDetect.Visibility.NONE); if (!isEnabled(SerializationConfig.Feature.AUTO_DETECT_FIELDS)) localVisibilityChecker = localVisibilityChecker.withFieldVisibility(JsonAutoDetect.Visibility.NONE); return localVisibilityChecker; }
protected void _addDeserializerFactoryMethods(DeserializationConfig paramDeserializationConfig, BasicBeanDescription paramBasicBeanDescription, VisibilityChecker<?> paramVisibilityChecker, AnnotationIntrospector paramAnnotationIntrospector, CreatorCollector paramCreatorCollector) { Iterator localIterator = paramBasicBeanDescription.getFactoryMethods().iterator(); while (localIterator.hasNext()) { AnnotatedMethod localAnnotatedMethod = (AnnotatedMethod)localIterator.next(); int i = localAnnotatedMethod.getParameterCount(); if (i > 0) { boolean bool = paramAnnotationIntrospector.hasCreatorAnnotation(localAnnotatedMethod); if (i == 1) { AnnotatedParameter localAnnotatedParameter2 = localAnnotatedMethod.getParameter(0); String str2 = paramAnnotationIntrospector.findPropertyNameForParam(localAnnotatedParameter2); if ((paramAnnotationIntrospector.findInjectableValueId(localAnnotatedParameter2) == null) && ((str2 == null) || (str2.length() == 0))) _handleSingleArgumentFactory(paramDeserializationConfig, paramBasicBeanDescription, paramVisibilityChecker, paramAnnotationIntrospector, paramCreatorCollector, localAnnotatedMethod, bool); } else if (paramAnnotationIntrospector.hasCreatorAnnotation(localAnnotatedMethod)) { CreatorProperty[] arrayOfCreatorProperty = new CreatorProperty[i]; for (int j = 0; j < i; j++) { AnnotatedParameter localAnnotatedParameter1 = localAnnotatedMethod.getParameter(j); String str1 = paramAnnotationIntrospector.findPropertyNameForParam(localAnnotatedParameter1); Object localObject = paramAnnotationIntrospector.findInjectableValueId(localAnnotatedParameter1); if (((str1 == null) || (str1.length() == 0)) && (localObject == null)) throw new IllegalArgumentException("Argument #" + j + " of factory method " + localAnnotatedMethod + " has no property name annotation; must have when multiple-paramater static method annotated as Creator"); arrayOfCreatorProperty[j] = constructCreatorProperty(paramDeserializationConfig, paramBasicBeanDescription, str1, j, localAnnotatedParameter1, localObject); } paramCreatorCollector.addPropertyCreator(localAnnotatedMethod, arrayOfCreatorProperty); } } } }
public VisibilityChecker<?> getDefaultVisibilityChecker() { VisibilityChecker localVisibilityChecker = super.getDefaultVisibilityChecker(); if (!isEnabled(DeserializationConfig.Feature.AUTO_DETECT_SETTERS)) localVisibilityChecker = localVisibilityChecker.withSetterVisibility(JsonAutoDetect.Visibility.NONE); if (!isEnabled(DeserializationConfig.Feature.AUTO_DETECT_CREATORS)) localVisibilityChecker = localVisibilityChecker.withCreatorVisibility(JsonAutoDetect.Visibility.NONE); if (!isEnabled(DeserializationConfig.Feature.AUTO_DETECT_FIELDS)) localVisibilityChecker = localVisibilityChecker.withFieldVisibility(JsonAutoDetect.Visibility.NONE); return localVisibilityChecker; }
public MapperConfig$Base(ClassIntrospector<? extends BeanDescription> paramClassIntrospector, AnnotationIntrospector paramAnnotationIntrospector, VisibilityChecker<?> paramVisibilityChecker, PropertyNamingStrategy paramPropertyNamingStrategy, TypeFactory paramTypeFactory, TypeResolverBuilder<?> paramTypeResolverBuilder, DateFormat paramDateFormat, HandlerInstantiator paramHandlerInstantiator) { this._classIntrospector = paramClassIntrospector; this._annotationIntrospector = paramAnnotationIntrospector; this._visibilityChecker = paramVisibilityChecker; this._propertyNamingStrategy = paramPropertyNamingStrategy; this._typeFactory = paramTypeFactory; this._typeResolverBuilder = paramTypeResolverBuilder; this._dateFormat = paramDateFormat; this._handlerInstantiator = paramHandlerInstantiator; }
protected List<BeanPropertyWriter> findBeanProperties(SerializationConfig paramSerializationConfig, BasicBeanDescription paramBasicBeanDescription) throws JsonMappingException { VisibilityChecker localVisibilityChecker1 = paramSerializationConfig.getDefaultVisibilityChecker(); if (!paramSerializationConfig.isEnabled(SerializationConfig.Feature.AUTO_DETECT_GETTERS)) { JsonAutoDetect.Visibility localVisibility3 = JsonAutoDetect.Visibility.NONE; localVisibilityChecker1 = localVisibilityChecker1.withGetterVisibility(localVisibility3); } if (!paramSerializationConfig.isEnabled(SerializationConfig.Feature.AUTO_DETECT_IS_GETTERS)) { JsonAutoDetect.Visibility localVisibility2 = JsonAutoDetect.Visibility.NONE; localVisibilityChecker1 = localVisibilityChecker1.withIsGetterVisibility(localVisibility2); } if (!paramSerializationConfig.isEnabled(SerializationConfig.Feature.AUTO_DETECT_FIELDS)) { JsonAutoDetect.Visibility localVisibility1 = JsonAutoDetect.Visibility.NONE; localVisibilityChecker1 = localVisibilityChecker1.withFieldVisibility(localVisibility1); } AnnotationIntrospector localAnnotationIntrospector = paramSerializationConfig.getAnnotationIntrospector(); VisibilityChecker localVisibilityChecker2 = localAnnotationIntrospector.findAutoDetectVisibility(paramBasicBeanDescription.getClassInfo(), localVisibilityChecker1); LinkedHashMap localLinkedHashMap1 = paramBasicBeanDescription.findGetters(localVisibilityChecker2, null); LinkedHashMap localLinkedHashMap2 = paramBasicBeanDescription.findSerializableFields(localVisibilityChecker2, localLinkedHashMap1.keySet()); removeIgnorableTypes(paramSerializationConfig, paramBasicBeanDescription, localLinkedHashMap1); removeIgnorableTypes(paramSerializationConfig, paramBasicBeanDescription, localLinkedHashMap2); ArrayList localArrayList; if ((localLinkedHashMap1.isEmpty()) && (localLinkedHashMap2.isEmpty())) localArrayList = null; while (true) { return localArrayList; boolean bool = usesStaticTyping(paramSerializationConfig, paramBasicBeanDescription, null, null); PropertyBuilder localPropertyBuilder = constructPropertyBuilder(paramSerializationConfig, paramBasicBeanDescription); int i = localLinkedHashMap1.size(); localArrayList = new ArrayList(i); TypeBindings localTypeBindings = paramBasicBeanDescription.bindingsForBeanType(); Iterator localIterator1 = localLinkedHashMap2.entrySet().iterator(); while (localIterator1.hasNext()) { Map.Entry localEntry2 = (Map.Entry)localIterator1.next(); AnnotationIntrospector.ReferenceProperty localReferenceProperty2 = localAnnotationIntrospector.findReferenceType((AnnotatedMember)localEntry2.getValue()); if ((localReferenceProperty2 != null) && (localReferenceProperty2.isBackReference())) continue; BeanPropertyWriter localBeanPropertyWriter2 = _constructWriter(paramSerializationConfig, localTypeBindings, localPropertyBuilder, bool, (String)localEntry2.getKey(), (AnnotatedMember)localEntry2.getValue()); localArrayList.add(localBeanPropertyWriter2); } Iterator localIterator2 = localLinkedHashMap1.entrySet().iterator(); while (localIterator2.hasNext()) { Map.Entry localEntry1 = (Map.Entry)localIterator2.next(); AnnotationIntrospector.ReferenceProperty localReferenceProperty1 = localAnnotationIntrospector.findReferenceType((AnnotatedMember)localEntry1.getValue()); if ((localReferenceProperty1 != null) && (localReferenceProperty1.isBackReference())) continue; BeanPropertyWriter localBeanPropertyWriter1 = _constructWriter(paramSerializationConfig, localTypeBindings, localPropertyBuilder, bool, (String)localEntry1.getKey(), (AnnotatedMember)localEntry1.getValue()); localArrayList.add(localBeanPropertyWriter1); } } }
public SerializationConfig(ClassIntrospector<? extends BeanDescription> paramClassIntrospector, AnnotationIntrospector paramAnnotationIntrospector, VisibilityChecker<?> paramVisibilityChecker, SubtypeResolver paramSubtypeResolver, PropertyNamingStrategy paramPropertyNamingStrategy, TypeFactory paramTypeFactory, HandlerInstantiator paramHandlerInstantiator) { super(paramClassIntrospector, paramAnnotationIntrospector, paramVisibilityChecker, paramSubtypeResolver, paramPropertyNamingStrategy, paramTypeFactory, paramHandlerInstantiator); this._filterProvider = null; }
@Deprecated public SerializationConfig createUnshared(TypeResolverBuilder<?> paramTypeResolverBuilder, VisibilityChecker<?> paramVisibilityChecker, SubtypeResolver paramSubtypeResolver) { return createUnshared(paramSubtypeResolver).withTypeResolverBuilder(paramTypeResolverBuilder).withVisibilityChecker(paramVisibilityChecker); }
public SerializationConfig withVisibilityChecker(VisibilityChecker<?> paramVisibilityChecker) { return new SerializationConfig(this, this._base.withVisibilityChecker(paramVisibilityChecker)); }
protected void _addDeserializerFactoryMethods(DeserializationConfig paramDeserializationConfig, BasicBeanDescription paramBasicBeanDescription, VisibilityChecker<?> paramVisibilityChecker, AnnotationIntrospector paramAnnotationIntrospector, CreatorContainer paramCreatorContainer) throws JsonMappingException { Iterator localIterator = paramBasicBeanDescription.getFactoryMethods().iterator(); while (localIterator.hasNext()) { AnnotatedMethod localAnnotatedMethod = (AnnotatedMethod)localIterator.next(); int i = localAnnotatedMethod.getParameterCount(); if (i < 1) continue; boolean bool = paramAnnotationIntrospector.hasCreatorAnnotation(localAnnotatedMethod); if (i == 1) { String str2 = paramAnnotationIntrospector.findPropertyNameForParam(localAnnotatedMethod.getParameter(0)); if ((str2 == null) || (str2.length() == 0)) { Class localClass = localAnnotatedMethod.getParameterClass(0); if (localClass == String.class) { if ((!bool) && (!paramVisibilityChecker.isCreatorVisible(localAnnotatedMethod))) continue; paramCreatorContainer.addStringFactory(localAnnotatedMethod); continue; } if ((localClass == Integer.TYPE) || (localClass == Integer.class)) { if ((!bool) && (!paramVisibilityChecker.isCreatorVisible(localAnnotatedMethod))) continue; paramCreatorContainer.addIntFactory(localAnnotatedMethod); continue; } if ((localClass == Long.TYPE) || (localClass == Long.class)) { if ((!bool) && (!paramVisibilityChecker.isCreatorVisible(localAnnotatedMethod))) continue; paramCreatorContainer.addLongFactory(localAnnotatedMethod); continue; } if (!paramAnnotationIntrospector.hasCreatorAnnotation(localAnnotatedMethod)) continue; paramCreatorContainer.addDelegatingFactory(localAnnotatedMethod); continue; } } else { if (!paramAnnotationIntrospector.hasCreatorAnnotation(localAnnotatedMethod)) continue; } SettableBeanProperty[] arrayOfSettableBeanProperty = new SettableBeanProperty[i]; for (int j = 0; j < i; j++) { AnnotatedParameter localAnnotatedParameter = localAnnotatedMethod.getParameter(j); String str1 = paramAnnotationIntrospector.findPropertyNameForParam(localAnnotatedParameter); if ((str1 == null) || (str1.length() == 0)) throw new IllegalArgumentException("Argument #" + j + " of factory method " + localAnnotatedMethod + " has no property name annotation; must have when multiple-paramater static method annotated as Creator"); arrayOfSettableBeanProperty[j] = constructCreatorProperty(paramDeserializationConfig, paramBasicBeanDescription, str1, j, localAnnotatedParameter); } paramCreatorContainer.addPropertyFactory(localAnnotatedMethod, arrayOfSettableBeanProperty); } }
public VisibilityChecker<?> getVisibilityChecker() { return this._serializationConfig.getDefaultVisibilityChecker(); }
public void setVisibilityChecker(VisibilityChecker<?> paramVisibilityChecker) { this._deserializationConfig = this._deserializationConfig.withVisibilityChecker(paramVisibilityChecker); this._serializationConfig = this._serializationConfig.withVisibilityChecker(paramVisibilityChecker); }
public DeserializationConfig(ClassIntrospector<? extends BeanDescription> paramClassIntrospector, AnnotationIntrospector paramAnnotationIntrospector, VisibilityChecker<?> paramVisibilityChecker, SubtypeResolver paramSubtypeResolver, PropertyNamingStrategy paramPropertyNamingStrategy, TypeFactory paramTypeFactory, HandlerInstantiator paramHandlerInstantiator) { super(paramClassIntrospector, paramAnnotationIntrospector, paramVisibilityChecker, paramSubtypeResolver, paramPropertyNamingStrategy, paramTypeFactory, paramHandlerInstantiator); this._nodeFactory = JsonNodeFactory.instance; }
@Deprecated public DeserializationConfig createUnshared(TypeResolverBuilder<?> paramTypeResolverBuilder, VisibilityChecker<?> paramVisibilityChecker, SubtypeResolver paramSubtypeResolver) { return createUnshared(paramSubtypeResolver).withTypeResolverBuilder(paramTypeResolverBuilder).withVisibilityChecker(paramVisibilityChecker); }
public DeserializationConfig withVisibilityChecker(VisibilityChecker<?> paramVisibilityChecker) { return new DeserializationConfig(this, this._base.withVisibilityChecker(paramVisibilityChecker)); }
public VisibilityChecker<?> findAutoDetectVisibility(AnnotatedClass paramAnnotatedClass, VisibilityChecker<?> paramVisibilityChecker) { return paramVisibilityChecker; }
public VisibilityChecker<?> findAutoDetectVisibility(AnnotatedClass paramAnnotatedClass, VisibilityChecker<?> paramVisibilityChecker) { VisibilityChecker localVisibilityChecker = this._secondary.findAutoDetectVisibility(paramAnnotatedClass, paramVisibilityChecker); return this._primary.findAutoDetectVisibility(paramAnnotatedClass, localVisibilityChecker); }
protected MapperConfig(ClassIntrospector<? extends BeanDescription> paramClassIntrospector, AnnotationIntrospector paramAnnotationIntrospector, VisibilityChecker<?> paramVisibilityChecker, SubtypeResolver paramSubtypeResolver, PropertyNamingStrategy paramPropertyNamingStrategy, TypeFactory paramTypeFactory, HandlerInstantiator paramHandlerInstantiator) { this._base = new Base(paramClassIntrospector, paramAnnotationIntrospector, paramVisibilityChecker, paramPropertyNamingStrategy, paramTypeFactory, null, DEFAULT_DATE_FORMAT, paramHandlerInstantiator); this._subtypeResolver = paramSubtypeResolver; this._mixInAnnotationsShared = true; }
@Deprecated public abstract T createUnshared(TypeResolverBuilder<?> paramTypeResolverBuilder, VisibilityChecker<?> paramVisibilityChecker, SubtypeResolver paramSubtypeResolver);
public final VisibilityChecker<?> getDefaultVisibilityChecker() { return this._base.getVisibilityChecker(); }
public VisibilityChecker<?> getVisibilityChecker() { return this._visibilityChecker; }
public Base withVisibilityChecker(VisibilityChecker<?> paramVisibilityChecker) { return new Base(this._classIntrospector, this._annotationIntrospector, paramVisibilityChecker, this._propertyNamingStrategy, this._typeFactory, this._typeResolverBuilder, this._dateFormat, this._handlerInstantiator); }
public VisibilityChecker<?> getDefaultVisibilityChecker() { return _visibilityChecker; }
public LinkedHashMap<String,AnnotatedMethod> findGetters(VisibilityChecker<?> visibilityChecker, Collection<String> ignoredProperties) { LinkedHashMap<String,AnnotatedMethod> results = new LinkedHashMap<String,AnnotatedMethod>(); for (AnnotatedMethod am : _classInfo.memberMethods()) { /* note: signature has already been checked to some degree * via filters; however, no checks were done for arg count */ // 16-May-2009, tatu: JsonIgnore processed earlier already if (am.getParameterCount() != 0) { continue; } /* So far so good: final check, then; has to either * (a) be marked with JsonProperty (/JsonGetter/JsonSerialize) OR * (b) be public AND have suitable name (getXxx or isXxx) */ String propName = _annotationIntrospector.findGettablePropertyName(am); if (propName != null) { /* As per [JACKSON-64], let's still use mangled * name if possible; and only if not use unmodified * method name */ if (propName.length() == 0) { propName = okNameForAnyGetter(am, am.getName()); if (propName == null) { propName = am.getName(); } } } else { propName = am.getName(); // [JACKSON-166], need to separate getXxx/isXxx methods if (propName.startsWith("get")) { // nope, but is public bean-getter name? if (!visibilityChecker.isGetterVisible(am)) { continue; } propName = okNameForGetter(am, propName); } else { if (!visibilityChecker.isIsGetterVisible(am)) { continue; } propName = okNameForIsGetter(am, propName); } // null return value means 'not valid' if (propName == null) continue; } if (ignoredProperties != null) { if (ignoredProperties.contains(propName)) { continue; } } /* Yup, it is a valid name. But now... do we have a conflict? * If so, should throw an exception */ AnnotatedMethod old = results.put(propName, am); if (old != null) { String oldDesc = old.getFullName(); String newDesc = am.getFullName(); throw new IllegalArgumentException("Conflicting getter definitions for property \""+propName+"\": "+oldDesc+" vs "+newDesc); } } return results; }
public LinkedHashMap<String,AnnotatedField> findSerializableFields(VisibilityChecker<?> vchecker, Collection<String> ignoredProperties) { return _findPropertyFields(vchecker, ignoredProperties, true); }