Package jodd.introspector

Examples of jodd.introspector.ClassDescriptor


   */
  public void addClassChecks(Class target) {
    List<Check> list = cache.get(target);
    if (list == null) {
      list = new ArrayList<Check>();
      ClassDescriptor cd = ClassIntrospector.lookup(target);
      FieldDescriptor[] fields = cd.getAllFieldDescriptors();
      for (FieldDescriptor fieldDescriptor : fields) {
        collectFieldAnnotationChecks(list, fieldDescriptor.getField());
      }
      cache.put(target, list);
    }
View Full Code Here


        String hintPropertyName = hint.substring(ndx + 1);
        Class hintPropertyType = BeanUtil.getPropertyType(value, hintPropertyName);

        if (hintPropertyType != null) {
          ClassDescriptor cd = ClassIntrospector.lookup(hintPropertyType);

          if (cd.isCollection()) {
            // add element to collection
            try {
              Collection collection = (Collection) BeanUtil.getDeclaredProperty(value, hintPropertyName);

              if (collection == null) {
                collection = (Collection) ReflectUtil.newInstance(hintPropertyType);
                BeanUtil.setDeclaredPropertySilent(value, hintPropertyName, collection);
              }

              collection.add(data[i]);
            } catch (Exception ex) {
              throw new DbOomException(ex);
            }
          } else if (cd.isArray()) {
            // add element to array
            try {
              Object[] array = (Object[]) BeanUtil.getDeclaredProperty(value, hintPropertyName);

              if (array == null) {
View Full Code Here

    if (actionClass.getAnnotation(MadvocAction.class) == null) {
      return;
    }

    ClassDescriptor cd = ClassIntrospector.lookup(actionClass);

    MethodDescriptor[] allMethodDescriptors = cd.getAllMethodDescriptors();
    for (MethodDescriptor methodDescriptor : allMethodDescriptors) {
      if (!methodDescriptor.isPublic()) {
        continue;
      }
      // just public methods
View Full Code Here

   * action class scan.
   */
  protected Field[] lookupAnnotatedFields(Class type) {
    Field[] fields = annotatedField.get(type);
    if (fields == null) {
      ClassDescriptor cd = ClassIntrospector.lookup(type);
      FieldDescriptor[] allFields = cd.getAllFieldDescriptors();

      List<Field> fieldList = new ArrayList<Field>();
      for (FieldDescriptor fieldDescriptor : allFields) {
        Field field = fieldDescriptor.getField();

View Full Code Here

  protected boolean ignoreNullValues;

  // ---------------------------------------------------------------- util

  protected String[] getAllBeanGetterNames(Class type, boolean declared) {
    ClassDescriptor classDescriptor = ClassIntrospector.lookup(type);

    PropertyDescriptor[] propertyDescriptors = classDescriptor.getAllPropertyDescriptors();

    String[] names = new String[propertyDescriptors.length];

    for (int i = 0; i < propertyDescriptors.length; i++) {
      PropertyDescriptor propertyDescriptor = propertyDescriptors[i];
View Full Code Here

    this.injectionPointFactory = injectionPointFactory;
  }

  public MethodInjectionPoint[] resolve(Class type) {
    // lookup methods
    ClassDescriptor cd = ClassIntrospector.lookup(type);
    List<MethodInjectionPoint> list = new ArrayList<MethodInjectionPoint>();
    MethodDescriptor[] allMethods = cd.getAllMethodDescriptors();

    for (MethodDescriptor methodDescriptor : allMethods) {
      Method method = methodDescriptor.getMethod();

      PetiteInject ref = method.getAnnotation(PetiteInject.class);
View Full Code Here

  /**
   * Resolves all fields for given type.
   */
  public PropertyInjectionPoint[] resolve(Class type, boolean autowire) {
    // lookup fields
    ClassDescriptor cd = ClassIntrospector.lookup(type);
    List<PropertyInjectionPoint> list = new ArrayList<PropertyInjectionPoint>();
    FieldDescriptor[] allFields = cd.getAllFieldDescriptors();

    for (FieldDescriptor fieldDescriptor : allFields) {
      Field field = fieldDescriptor.getField();

      PetiteInject ref = field.getAnnotation(PetiteInject.class);
View Full Code Here

  public InitMethodPoint[] resolve(Object bean) {
    Class<?> type = bean.getClass();

    // lookup methods
    List<InitMethodPoint> list = new ArrayList<InitMethodPoint>();
    ClassDescriptor cd = new ClassDescriptor(type, false, false, false, null);
    MethodDescriptor[] allMethods = cd.getAllMethodDescriptors();

    for (MethodDescriptor methodDescriptor : allMethods) {
      Method method = methodDescriptor.getMethod();

      PetiteInitMethod petiteInitMethod = method.getAnnotation(PetiteInitMethod.class);
View Full Code Here

   * Resolves all providers in the class
   */
  public ProviderDefinition[] resolve(BeanDefinition beanDefinition) {
    Class type = beanDefinition.getType();

    ClassDescriptor cd = ClassIntrospector.lookup(type);
    MethodDescriptor[] methods = cd.getAllMethodDescriptors();

    List<ProviderDefinition> list = new ArrayList<ProviderDefinition>();

    for (MethodDescriptor methodDescriptor : methods) {
      Method method = methodDescriptor.getMethod();
View Full Code Here

   */
  public void registerPetiteCtorInjectionPoint(String beanName, Class[] paramTypes, String[] references) {
    BeanDefinition beanDefinition = lookupExistingBeanDefinition(beanName);
    String[][] ref = PetiteUtil.convertRefToReferences(references);

    ClassDescriptor cd = ClassIntrospector.lookup(beanDefinition.type);
    Constructor constructor = null;

    if (paramTypes == null) {
      CtorDescriptor[] ctors = cd.getAllCtorDescriptors();
      if (ctors != null && ctors.length > 0) {
        if (ctors.length > 1) {
          throw new PetiteException(ctors.length + " suitable constructor found as injection point for: " + beanDefinition.type.getName());
        }
        constructor = ctors[0].getConstructor();
      }
    } else {
      CtorDescriptor ctorDescriptor = cd.getCtorDescriptor(paramTypes, true);

      if (ctorDescriptor != null) {
        constructor = ctorDescriptor.getConstructor();
      }
    }
View Full Code Here

TOP

Related Classes of jodd.introspector.ClassDescriptor

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.