public Object getValue() { return mp.getProperty(bean); }
public final Object getProperty(Object receiver) throws Throwable { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
public final Object getProperty(Object receiver) throws Throwable { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
public Object invoke(Object object, Object[] arguments) { return property.getProperty(mixinInMetaClass.getMixinInstance(object)); } };
@Override @SuppressWarnings("unchecked") public void write(Object value) { Collection collection = (Collection) property.getProperty(owner); if (collection == null) { if (MopUtil.isWriteable(property)) { collection = createCollection(property.getType()); property.setProperty(owner, collection); } else { throw new RuntimeException(String.format( "Cannot add element to collection property '%s' because it is neither initialized nor does it have a setter", name)); } } collection.add(value); }
private Object invokePropertyOrMissing(Object object, String methodName, Object[] originalArguments, boolean fromInsideClass, boolean isCallToSuper) { // if no method was found, try to find a closure defined as a field of the class and run it Object value = null; final MetaProperty metaProperty = this.getMetaProperty(methodName, false); if (metaProperty != null) value = metaProperty.getProperty(object); else { if (object instanceof Map) value = ((Map)object).get(methodName); } if (value instanceof Closure) { // This test ensures that value != this If you ever change this ensure that value != this Closure closure = (Closure) value; MetaClass delegateMetaClass = closure.getMetaClass(); return delegateMetaClass.invokeMethod(closure.getClass(), closure, CLOSURE_DO_CALL_METHOD, originalArguments, false, fromInsideClass); } if (object instanceof Script) { Object bindingVar = ((Script) object).getBinding().getVariables().get(methodName); if (bindingVar != null) { MetaClass bindingVarMC = ((MetaClassRegistryImpl) registry).getMetaClass(bindingVar); return bindingVarMC.invokeMethod(bindingVar, CLOSURE_CALL_METHOD, originalArguments); } } return invokeMissingMethod(object, methodName, originalArguments, null, isCallToSuper); }
public final Object callGetProperty (Object receiver) throws Throwable { if (GroovyCategorySupport.hasCategoryInCurrentThread() || !(receiver instanceof GroovyObject) || ((GroovyObject) receiver).getMetaClass() != metaClass) { return createGetPropertySite(receiver).getProperty(receiver); } else { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
public final Object callGroovyObjectGetProperty (Object receiver) throws Throwable { if (GroovyCategorySupport.hasCategoryInCurrentThread() || !(receiver instanceof GroovyObject) || ((GroovyObject) receiver).getMetaClass() != metaClass) { return createGetPropertySite(receiver).getProperty(receiver); } else { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
if (mp != null) return mp.getProperty(object); } catch (Exception e) { throw new GroovyRuntimeException("Cannot read field: " + attribute, e);
return mp.getProperty(object); } catch (IllegalArgumentException | CacheAccessControlException e) {
if (metaProperty != null) if (isGetter) return metaProperty.getProperty(instance); else { metaProperty.setProperty(instance, optionalValue);
Type rt = args.get(Property.class.getTypeParameters()[0]); type = TypeUtils.getRawType(rt, Object.class); set = (v) -> ((Property) prop.getProperty(lenskit)).set(v);
public final Object getProperty(Object receiver) throws Throwable { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
public final Object getProperty(Object receiver) throws Throwable { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
@Override public boolean call(Object entity) { Object fieldval = metaProperty.getProperty(entity); if (fieldval instanceof Closure) { return resolveReturnValue(callClosure(entity, (Closure) fieldval)); } log.error("Field " + metaProperty + " is not Closure."); return false; } }
@Override public boolean call(Object entity, Object[] argumentArray) { Object fieldval = metaProperty.getProperty(entity); if (fieldval instanceof Closure) { return resolveReturnValue(callClosure(entity, (Closure<?>) fieldval, argumentArray)); } LOG.error("Field " + metaProperty + " is not Closure."); return false; } }
private static Object getStaticPropertyValue(MetaClass theMetaClass, String name) { MetaProperty metaProperty = theMetaClass.getMetaProperty(name); if(metaProperty != null && Modifier.isStatic(metaProperty.getModifiers())) { return metaProperty.getProperty(theMetaClass.getTheClass()); } return null; }
public final Object callGetProperty (Object receiver) throws Throwable { if (GroovyCategorySupport.hasCategoryInCurrentThread() || !(receiver instanceof GroovyObject) || ((GroovyObject) receiver).getMetaClass() != metaClass) { return createGetPropertySite(receiver).getProperty(receiver); } else { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
public final Object callGetProperty (Object receiver) throws Throwable { if (GroovyCategorySupport.hasCategoryInCurrentThread() || !(receiver instanceof GroovyObject) || ((GroovyObject) receiver).getMetaClass() != metaClass) { return createGetPropertySite(receiver).getProperty(receiver); } else { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
public final Object callGroovyObjectGetProperty (Object receiver) throws Throwable { if (GroovyCategorySupport.hasCategoryInCurrentThread() || !(receiver instanceof GroovyObject) || ((GroovyObject) receiver).getMetaClass() != metaClass) { return createGetPropertySite(receiver).getProperty(receiver); } else { try { return effective.getProperty(receiver); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }