Package com.google.inject

Examples of com.google.inject.Inject


    do
    {
      Field[] currentFields = current.getDeclaredFields();
      for (final Field field : currentFields)
      {
        Inject injectAnnotation = field.getAnnotation(Inject.class);
        if (injectAnnotation != null)
        {
          actualDoInject = true;
          try
          {
            Annotation bindingAnnotation = findBindingAnnotation(field.getAnnotations());
            Object proxy = LazyInitProxyFactory.createProxy(field.getType(),
                new GuiceProxyTargetLocator(field, bindingAnnotation,
                    injectAnnotation.optional()));
            if (!field.isAccessible())
            {
              field.setAccessible(true);
            }
            field.set(object, proxy);
          }
          catch (IllegalAccessException e)
          {
            throw new WicketRuntimeException("Error Guice-injecting field " +
                field.getName() + " in " + object, e);
          }
          catch (MoreThanOneBindingException e)
          {
            throw new RuntimeException(
                "Can't have more than one BindingAnnotation on field " +
                    field.getName() + " of class " +
                    object.getClass().getName());
          }
        }
      }

      Method[] currentMethods = current.getDeclaredMethods();
      for (final Method method : currentMethods)
      {
        Inject injectAnnotation = method.getAnnotation(Inject.class);
        if (injectAnnotation != null)
        {
          actualDoInject = true;
          Annotation[][] paramAnnotations = method.getParameterAnnotations();
          Class< ? >[] paramTypes = method.getParameterTypes();
          Type[] genericParamTypes = method.getGenericParameterTypes();
          Object[] args = new Object[paramTypes.length];
          for (int i = 0; i < paramTypes.length; i++)
          {
            Type paramType;
            if (genericParamTypes[i] instanceof ParameterizedType)
            {
              paramType = ((ParameterizedType)genericParamTypes[i]).getRawType();
            }
            else
            {
              paramType = paramTypes[i];
            }
            try
            {
              Annotation bindingAnnotation = findBindingAnnotation(paramAnnotations[i]);
              args[i] = LazyInitProxyFactory.createProxy(paramTypes[i],
                  new GuiceProxyTargetLocator(method, i, bindingAnnotation,
                      injectAnnotation.optional()));
            }
            catch (MoreThanOneBindingException e)
            {
              throw new RuntimeException(
                  "Can't have more than one BindingAnnotation on parameter " + i +
View Full Code Here


  {
    Object target = null;

    if (supportsField(field))
    {
      Inject injectAnnotation = field.getAnnotation(Inject.class);
      javax.inject.Inject javaxInjectAnnotation = field.getAnnotation(javax.inject.Inject.class);
      if (!Modifier.isStatic(field.getModifiers()) && (injectAnnotation != null || javaxInjectAnnotation != null))
      {
        try
        {
          Annotation bindingAnnotation = findBindingAnnotation(field.getAnnotations());
          final IProxyTargetLocator locator = new GuiceProxyTargetLocator(field,
            bindingAnnotation, injectAnnotation != null ? injectAnnotation.optional() : false);

          if (wrapInProxies)
          {
            target = LazyInitProxyFactory.createProxy(field.getType(), locator);
          }
View Full Code Here

  {
    Object target = null;

    if (supportsField(field))
    {
      Inject injectAnnotation = field.getAnnotation(Inject.class);
      if (!Modifier.isStatic(field.getModifiers()) && (injectAnnotation != null))
      {
        try
        {
          Annotation bindingAnnotation = findBindingAnnotation(field.getAnnotations());
          final IProxyTargetLocator locator = new GuiceProxyTargetLocator(field,
            bindingAnnotation, injectAnnotation.optional());

          if (wrapInProxies)
          {
            target = LazyInitProxyFactory.createProxy(field.getType(), locator);
          }
View Full Code Here

TOP

Related Classes of com.google.inject.Inject

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.