Java Reflection Method Setter Get getSetter(final Class targetClass, final String propertyName)

Here you can find the source of getSetter(final Class targetClass, final String propertyName)

Description

get Setter

License

Apache License

Declaration

public static synchronized Method getSetter(final Class targetClass, final String propertyName) 

Method Source Code

//package com.java2s;
/**//from ww w . ja  v a2  s . co m
 * A collection of small utilities for component management and reflection handling.
 * <p/>
 * <hr/> Copyright 2006-2012 Torsten Heup
 * <p/>
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 * <p/>
 * http://www.apache.org/licenses/LICENSE-2.0
 * <p/>
 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations under the License.
 */

import java.lang.reflect.Method;

public class Main {
    /**
     * Returns a setter method for the given property, or null if there is none.
     *
     * @param target       Target exposing the setter.
     * @param propertyName The setter's property.
     * @return a setter method for the given property, or null if there is none.
     */
    public static synchronized Method getSetter(final Object target, final String propertyName) {
        return getSetter(target.getClass(), propertyName);
    }

    public static synchronized Method getSetter(final Class targetClass, final String propertyName) {
        String setterName = "set" + Character.toUpperCase(propertyName.charAt(0));
        if (setterName.length() > 1)
            setterName += propertyName.substring(1);

        final Method[] methods = targetClass.getMethods();

        for (Method m : methods) {
            if (m.getName().equals(setterName) && m.getParameterTypes().length == 1)
                return m;
        }
        return null;
    }
}

Related

  1. getSetter(Class clazz, String name)
  2. getSetter(Class clazz, Field field)
  3. getSetter(Class clazz, Field field)
  4. getSetter(Class clazz, String property, Class type)
  5. getSetter(Class cls, final String fieldName)
  6. getSetter(final Class clazz, final String fieldName, final Class... fieldClass)
  7. getSetter(final Class clz, final String propertyName, final Class propertyClass)
  8. getSetter(final Object o, final String fieldName)
  9. getSetter(Method m)