Author: cschneider
Date: Thu Feb  5 15:04:55 2015
New Revision: 1657598

URL: http://svn.apache.org/r1657598
Log:
Extract decision if setter is skipped

Modified:
    
aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmManagedProperties.java

Modified: 
aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmManagedProperties.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmManagedProperties.java?rev=1657598&r1=1657597&r2=1657598&view=diff
==============================================================================
--- 
aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmManagedProperties.java
 (original)
+++ 
aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmManagedProperties.java
 Thu Feb  5 15:04:55 2015
@@ -213,28 +213,7 @@ public class CmManagedProperties impleme
                     
methods.addAll(Arrays.asList(bean.getClass().getDeclaredMethods()));
                     for (Method method : methods) {
                         if (method.getName().equals(setterName)) {
-                            if (method.getParameterTypes().length == 0) {
-                                LOGGER.debug("Setter takes no parameters: {}", 
method);
-                                continue;
-                            }
-                            if (method.getParameterTypes().length > 1) {
-                                LOGGER.debug("Setter takes more than one 
parameter: {}", method);
-                                continue;
-                            }
-                            if (method.getReturnType() != Void.TYPE) {
-                                LOGGER.debug("Setter returns a value: {}", 
method);
-                                continue;
-                            }
-                            if (Modifier.isAbstract(method.getModifiers())) {
-                                LOGGER.debug("Setter is abstract: {}", method);
-                                continue;
-                            }
-                            if (!Modifier.isPublic(method.getModifiers())) {
-                                LOGGER.debug("Setter is not public: {}", 
method);
-                                continue;
-                            }
-                            if (Modifier.isStatic(method.getModifiers())) {
-                                LOGGER.debug("Setter is static: {}", method);
+                            if (shouldSkip(method)) {
                                 continue;
                             }
                             Class methodParameterType = 
method.getParameterTypes()[0];
@@ -284,6 +263,29 @@ public class CmManagedProperties impleme
         }
     }
 
+    private boolean shouldSkip(Method method) {
+        String msg = null;
+        if (method.getParameterTypes().length == 0) {
+            msg = "takes no parameters";
+        } else if (method.getParameterTypes().length > 1) {
+            msg = "takes more than one parameter";
+        } else if (method.getReturnType() != Void.TYPE) {
+            msg = "returns a value";
+        } else if (Modifier.isAbstract(method.getModifiers())) {
+            msg = "is abstract";
+        } else if (!Modifier.isPublic(method.getModifiers())) {
+            msg = "is not public";
+        } else if (Modifier.isStatic(method.getModifiers())) {
+            msg = "is static";
+        }
+        if (msg != null) {
+            LOGGER.debug("Skipping setter {} because it " + msg, method);
+            return true;
+        } else {
+            return false;
+        }
+    }
+
     private static Throwable getRealCause(Throwable t) {
         if (t instanceof InvocationTargetException && t.getCause() != null) {
             return t.getCause();


Reply via email to