/** {@inheritDoc} */ @Override public void inject(GridResourceField field, Object target, Class<?> depCls, GridDeployment dep) throws GridException { GridResourceUtils.inject(field.getField(), target, rsrc); }
/** {@inheritDoc} */ @Override public void inject(GridResourceField field, Object target, Class<?> cls, GridDeployment depCls) throws GridException { GridSpringResource ann = (GridSpringResource)field.getAnnotation(); assert ann != null; // Note: injected non-serializable user resources should not mark // injected spring beans with transient modifier. // Check for 'transient' modifier only in serializable classes. if (!Modifier.isTransient(field.getField().getModifiers()) && Serializable.class.isAssignableFrom(field.getField().getDeclaringClass())) { throw new GridException("@GridSpringResource must only be used with 'transient' fields: " + field.getField()); } String name = ann.resourceName(); if (springCtx != null) { Object bean = springCtx.getBean(name); GridResourceUtils.inject(field.getField(), target, bean); } }
/** {@inheritDoc} */ @Override public void inject(GridResourceField field, Object target, Class<?> depCls, GridDeployment dep) throws GridException { assert dep != null; GridUserResource ann = (GridUserResource)field.getAnnotation(); assert ann != null; if (!Modifier.isTransient(field.getField().getModifiers())) { throw new GridException("@GridUserResource must only be used with 'transient' fields: " + field.getField()); } Class<?> rsrcCls = !ann.resourceClass().equals(Void.class) ? ann.resourceClass() : field.getField().getType(); String rsrcName = ann.resourceName(); GridResourceUtils.inject(field.getField(), target, getResource(dep, depCls, rsrcCls, rsrcName)); }
/** {@inheritDoc} */ @Override public void inject(GridResourceField field, Object target, Class<?> depCls, GridDeployment dep) throws GridException { GridResourceUtils.inject(field.getField(), target, resource((GridLoggerResource)field.getAnnotation(), target)); }
Field f = field.getField();
/** {@inheritDoc} */ @Override public void inject(GridResourceField field, Object target, Class<?> depCls, GridDeployment dep) throws GridException { GridServiceResource ann = (GridServiceResource)field.getAnnotation(); Class svcItf = ann.proxyInterface(); Object svc; if (svcItf == Void.class) svc = grid.services().service(ann.serviceName()); else svc = grid.services().serviceProxy(ann.serviceName(), svcItf, ann.proxySticky()); if (svc != null) GridResourceUtils.inject(field.getField(), target, svc); }