if ( member instanceof Method ) { for ( ResolvedMethod resolvedMember : declaringClassWithMembers.getMemberMethods() ) { if ( resolvedMember.getName().equals( member.getName() ) ) { return resolvedMember;
@Override public int compareTo(ResolvedMethod other) { // primary sort by name (alphabetic); secondary by arg count (ascending) int diff = getName().compareTo(other.getName()); if (diff == 0) { // subtract fine, no fear of overflow here diff = getArgumentCount() - other.getArgumentCount(); } return diff; } }
@Override public int compareTo(ResolvedMethod other) { // primary sort by name (alphabetic); secondary by arg count (ascending) int diff = getName().compareTo(other.getName()); if (diff == 0) { // subtract fine, no fear of overflow here diff = getArgumentCount() - other.getArgumentCount(); } return diff; } }
public boolean canOverride(ResolvedMethod m1, ResolvedMethod m2) { if (!m1.getName().equals(m2.getName())) return false; int count = m1.getArgumentCount(); if (count != m2.getArgumentCount()) return false; for (int i = 0; i < count; i++) { if (!m1.getArgumentType(i).equals(m2.getArgumentType(i))) return false; } return true; }
@Override public Iterable<? extends ModelProperty> propertiesForDeserialization(ResolvedType resolvedType) { List<ModelProperty> serializationCandidates = newArrayList(); DeserializationConfig serializationConfig = objectMapper.getDeserializationConfig(); BeanDescription beanDescription = serializationConfig.introspect(TypeFactory.defaultInstance() .constructType(resolvedType.getErasedType())); Map<String, BeanPropertyDefinition> propertyLookup = uniqueIndex(beanDescription.findProperties(), BeanPropertyDefinitions.beanPropertyByInternalName()); for (ResolvedMethod childProperty : accessors.in(resolvedType)) { if (propertyLookup.containsKey(propertyName(childProperty.getName()))) { BeanPropertyDefinition propertyDefinition = propertyLookup.get(propertyName(childProperty.getName())); Optional<BeanPropertyDefinition> jacksonProperty = jacksonPropertyWithSameInternalName(beanDescription, propertyDefinition); try { AnnotatedMember member = propertyDefinition.getPrimaryMember(); if (accessorMemberIs(childProperty, methodName(member))) { serializationCandidates.add(beanModelProperty(childProperty, jacksonProperty, false)); } } catch (Exception e) { LOG.warn(e.getMessage()); } } } return serializationCandidates; }
@Override public Iterable<? extends ModelProperty> propertiesForSerialization(ResolvedType resolvedType) { List<ModelProperty> serializationCandidates = newArrayList(); SerializationConfig serializationConfig = objectMapper.getSerializationConfig(); BeanDescription beanDescription = serializationConfig.introspect(TypeFactory.defaultInstance() .constructType(resolvedType.getErasedType())); Map<String, BeanPropertyDefinition> propertyLookup = uniqueIndex(beanDescription.findProperties(), BeanPropertyDefinitions.beanPropertyByInternalName()); for (ResolvedMethod childProperty : accessors.in(resolvedType)) { if (propertyLookup.containsKey(propertyName(childProperty.getName()))) { BeanPropertyDefinition propertyDefinition = propertyLookup.get(propertyName(childProperty.getName())); Optional<BeanPropertyDefinition> jacksonProperty = jacksonPropertyWithSameInternalName(beanDescription, propertyDefinition); AnnotatedMember member = propertyDefinition.getPrimaryMember(); if (accessorMemberIs(childProperty, methodName(member))) { serializationCandidates.add(beanModelProperty(childProperty, jacksonProperty, true)); } } } return serializationCandidates; }
handlers.put(raw_method, new CreateSqlObjectHandler(raw_method.getReturnType())); else if (method.getName().equals("close") && method.getRawMember().getParameterTypes().length == 0) { handlers.put(raw_method, new CloseHandler());
static ResultReturnThing forType(ResolvedMethod method) { ResolvedType return_type = method.getReturnType(); if (return_type == null) { throw new IllegalStateException(String.format( "Method %s#%s is annotated as if it should return a value, but the method is void.", method.getDeclaringType().getErasedType().getName(), method.getName())); } else if (return_type.isInstanceOf(ResultBearing.class)) { return new ResultBearingResultReturnThing(method); } else if (return_type.isInstanceOf(Iterable.class)) { return new IterableReturningThing(method); } else if (return_type.isInstanceOf(Iterator.class)) { return new IteratorResultReturnThing(method); } else { return new SingleValueResultReturnThing(method); } }
if ( member instanceof Method ) { for ( ResolvedMethod resolvedMember : declaringClassWithMembers.getMemberMethods() ) { if ( resolvedMember.getName().equals( member.getName() ) ) { return resolvedMember;