diff --git a/src/core/lombok/core/AnnotationValues.java b/src/core/lombok/core/AnnotationValues.java index 78bb1fb561..f5db553cae 100644 --- a/src/core/lombok/core/AnnotationValues.java +++ b/src/core/lombok/core/AnnotationValues.java @@ -165,7 +165,7 @@ public List getAsStringList(String methodName) { AnnotationValue v = values.get(methodName); if (v == null) { - String[] s = getDefaultIf(methodName, String[].class, new String[0]); + String[] s = getDefaultIf(methodName, new String[0]); return Collections.unmodifiableList(Arrays.asList(s)); } @@ -175,7 +175,7 @@ public List getAsStringList(String methodName) { Object result = guess == null ? null : guessToType(guess, String.class, v, idx); if (result == null) { if (v.valueGuesses.size() == 1) { - String[] s = getDefaultIf(methodName, String[].class, new String[0]); + String[] s = getDefaultIf(methodName, new String[0]); return Collections.unmodifiableList(Arrays.asList(s)); } throw new AnnotationValueDecodeFail(v, @@ -190,28 +190,29 @@ public List getAsStringList(String methodName) { public String getAsString(String methodName) { AnnotationValue v = values.get(methodName); if (v == null || v.valueGuesses.size() != 1) { - return getDefaultIf(methodName, String.class, ""); + return getDefaultIf(methodName, ""); } Object guess = guessToType(v.valueGuesses.get(0), String.class, v, 0); if (guess instanceof String) return (String) guess; - return getDefaultIf(methodName, String.class, ""); + return getDefaultIf(methodName, ""); } public boolean getAsBoolean(String methodName) { AnnotationValue v = values.get(methodName); if (v == null || v.valueGuesses.size() != 1) { - return getDefaultIf(methodName, boolean.class, false); + return getDefaultIf(methodName, false); } Object guess = guessToType(v.valueGuesses.get(0), boolean.class, v, 0); if (guess instanceof Boolean) return ((Boolean) guess).booleanValue(); - return getDefaultIf(methodName, boolean.class, false); + return getDefaultIf(methodName, false); } - public T getDefaultIf(String methodName, Class type, T defaultValue) { + @SuppressWarnings("unchecked") + public T getDefaultIf(String methodName, T defaultValue) { try { - return type.cast(Permit.getMethod(type, methodName).getDefaultValue()); + return (T) Permit.getMethod(type, methodName).getDefaultValue(); } catch (Exception e) { return defaultValue; } diff --git a/src/core/lombok/eclipse/handlers/HandleToString.java b/src/core/lombok/eclipse/handlers/HandleToString.java index 6beaa84889..b22d162f9b 100644 --- a/src/core/lombok/eclipse/handlers/HandleToString.java +++ b/src/core/lombok/eclipse/handlers/HandleToString.java @@ -203,7 +203,7 @@ public static MethodDeclaration createToString(EclipseNode type, Collection { this.handler = handler; this.annotationClass = annotationClass; HandlerPriority hp = handler.getClass().getAnnotation(HandlerPriority.class); - this.priority = hp == null ? 0L : (((long)hp.value()) << 32) + hp.subValue(); + this.priority = hp == null ? 0L : (((long) hp.value()) << 32) + hp.subValue(); this.resolutionResetNeeded = handler.getClass().isAnnotationPresent(ResolutionResetNeeded.class); this.evenIfAlreadyHandled = handler.getClass().isAnnotationPresent(AlreadyHandledAnnotations.class); } public void handle(final JavacNode node) { - handler.handle(JavacHandlerUtil.createAnnotation(annotationClass, node), (JCAnnotation)node.get(), node); + handler.handle(JavacHandlerUtil.createAnnotation(annotationClass, node), (JCAnnotation) node.get(), node); } public long getPriority() {