class GetterReferMetadataCreator implements ReferMetadataCreator {

    @Override
    public boolean isApplicable(Type type, String ref) {
        Class<?> classType = getRawType(type);
        List<String> gettersNames = createGettersNames(classType, ref);
        return gettersNames.stream()
                .flatMap(getter -> Arrays.stream(classType.getMethods())
                        .filter(method -> method.getParameterCount() == 0)
                        .filter(method -> method.getName().equals(getter)))
                .findFirst()
                .isPresent();
    }

}