throw new NullPointerException("context is null"); if (isResolvable(base)) { toIndex(base, property); context.setPropertyResolved(true);
protected ELResolver createElResolver(VariableContainer variableContainer) { List<ELResolver> elResolvers = new ArrayList<>(); elResolvers.add(createVariableElResolver(variableContainer)); if (beans != null) { elResolvers.add(new ReadOnlyMapELResolver(beans)); } elResolvers.add(new ArrayELResolver()); elResolvers.add(new ListELResolver()); elResolvers.add(new MapELResolver()); elResolvers.add(new JsonNodeELResolver()); ELResolver beanElResolver = createBeanElResolver(); if (beanElResolver != null) { elResolvers.add(beanElResolver); } configureResolvers(elResolvers); CompositeELResolver compositeELResolver = new CompositeELResolver(); for (ELResolver elResolver : elResolvers) { compositeELResolver.add(elResolver); } compositeELResolver.add(new CouldNotResolvePropertyELResolver()); return compositeELResolver; }
/** * If the base object is a Java language array, returns the most general type that this resolver * accepts for the property argument. Otherwise, returns null. Assuming the base is an array, * this method will always return Integer.class. This is because arrays accept integers for * their index. * * @param context * The context of this evaluation. * @param base * The array to analyze. Only bases that are a Java language array are handled by * this resolver. * @return null if base is not a Java language array; otherwise Integer.class. */ @Override public Class<?> getCommonPropertyType(ELContext context, Object base) { return isResolvable(base) ? Integer.class : null; }
@Override protected ELResolver createElResolver(VariableContainer variableContainer) { CompositeELResolver compositeElResolver = new CompositeELResolver(); compositeElResolver.add(new ProcessVariableScopeELResolver(variableContainer)); compositeElResolver.add(new MockElResolver()); compositeElResolver.add(new ArrayELResolver()); compositeElResolver.add(new ListELResolver()); compositeElResolver.add(new MapELResolver()); compositeElResolver.add(new BeanELResolver()); compositeElResolver.add(new CouldNotResolvePropertyELResolver()); return compositeElResolver; }
private ELResolver createElResolver() { CompositeELResolver compositeResolver = new CompositeELResolver(); compositeResolver.add(new ArrayELResolver()); compositeResolver.add(new ListELResolver()); compositeResolver.add(new MapELResolver()); compositeResolver.add(new JsonNodeELResolver()); compositeResolver.add(new ResourceBundleELResolver()); compositeResolver.add(new DynamicBeanPropertyELResolver(ItemInstance.class, "getFieldValue", "setFieldValue")); compositeResolver.add(new BeanELResolver()); return new SimpleResolver(compositeResolver); }
if (isResolvable(base)) { toIndex(base, property); result = base.getClass().getComponentType(); context.setPropertyResolved(true);
private ELResolver createElResolver() { CompositeELResolver compositeResolver = new CompositeELResolver(); compositeResolver.add(new ArrayELResolver()); compositeResolver.add(new ListELResolver()); compositeResolver.add(new MapELResolver()); compositeResolver.add(new JsonNodeELResolver()); compositeResolver.add(new ResourceBundleELResolver()); compositeResolver.add(new DynamicBeanPropertyELResolver(ItemInstance.class, "getFieldValue", "setFieldValue")); compositeResolver.add(new BeanELResolver()); compositeResolver.add(new CouldNotResolvePropertyELResolver()); return new SimpleResolver(compositeResolver); }
if (isResolvable(base)) { int index = toIndex(null, property); result = index < 0 || index >= Array.getLength(base) ? null : Array.get(base, index); context.setPropertyResolved(true);
@Override protected ELResolver createElResolver(VariableScope variableScope) { CompositeELResolver compositeElResolver = new CompositeELResolver(); compositeElResolver.add(new VariableScopeElResolver(variableScope)); if (beans != null) { // Only expose limited set of beans in expressions compositeElResolver.add(new ReadOnlyMapELResolver(beans)); } else { // Expose full application-context in expressions compositeElResolver.add(new ApplicationContextElResolver(applicationContext)); } compositeElResolver.add(new ArrayELResolver()); compositeElResolver.add(new ListELResolver()); compositeElResolver.add(new MapELResolver()); compositeElResolver.add(new BeanELResolver()); return compositeElResolver; }
throw new NullPointerException("context is null"); if (isResolvable(base)) { if (readOnly) { throw new PropertyNotWritableException("resolver is read-only"); Array.set(base, toIndex(base, property), value); context.setPropertyResolved(true);
protected ELResolver createElResolver(VariableScope variableScope) { CompositeELResolver elResolver = new CompositeELResolver(); elResolver.add(new VariableScopeElResolver(variableScope)); if (beans != null) { // ACT-1102: Also expose all beans in configuration when using standalone activiti, not // in spring-context elResolver.add(new ReadOnlyMapELResolver(beans)); } elResolver.add(new ArrayELResolver()); elResolver.add(new ListELResolver()); elResolver.add(new MapELResolver()); elResolver.add(new JsonNodeELResolver()); elResolver.add(new DynamicBeanPropertyELResolver(ItemInstance.class, "getFieldValue", "setFieldValue")); // TODO: needs verification elResolver.add(new BeanELResolver()); return elResolver; }
@Override protected ELResolver createElResolver(VariableContainer variableContainer) { CompositeELResolver compositeElResolver = new CompositeELResolver(); compositeElResolver.add(createVariableElResolver(variableContainer)); if (beans != null) { // Only expose limited set of beans in expressions compositeElResolver.add(new ReadOnlyMapELResolver(beans)); } else { // Expose full application-context in expressions compositeElResolver.add(new ApplicationContextElResolver(applicationContext)); } compositeElResolver.add(new ArrayELResolver()); compositeElResolver.add(new ListELResolver()); compositeElResolver.add(new MapELResolver()); compositeElResolver.add(new JsonNodeELResolver()); compositeElResolver.add(new BeanELResolver()); compositeElResolver.add(new CouldNotResolvePropertyELResolver()); return compositeElResolver; }
@Override protected ELResolver createElResolver(VariableContainer variableContainer) { CompositeELResolver compositeElResolver = new CompositeELResolver(); compositeElResolver.add(createVariableElResolver(variableContainer)); if (beans != null) { // Only expose limited set of beans in expressions compositeElResolver.add(new ReadOnlyMapELResolver(beans)); } else { // Expose full application-context in expressions compositeElResolver.add(new ApplicationContextElResolver(applicationContext)); } compositeElResolver.add(new ArrayELResolver()); compositeElResolver.add(new ListELResolver()); compositeElResolver.add(new MapELResolver()); compositeElResolver.add(new JsonNodeELResolver()); compositeElResolver.add(new BeanELResolver()); compositeElResolver.add(new CouldNotResolvePropertyELResolver()); return compositeElResolver; }
@Override protected ELResolver createElResolver(VariableContainer variableContainer) { CompositeELResolver compositeElResolver = new CompositeELResolver(); compositeElResolver.add(createVariableElResolver(variableContainer)); if (beans != null) { // Only expose limited set of beans in expressions compositeElResolver.add(new ReadOnlyMapELResolver(beans)); } else { // Expose full application-context in expressions compositeElResolver.add(new ApplicationContextElResolver(applicationContext)); } compositeElResolver.add(new ArrayELResolver()); compositeElResolver.add(new ListELResolver()); compositeElResolver.add(new MapELResolver()); compositeElResolver.add(new JsonNodeELResolver()); compositeElResolver.add(new BeanELResolver()); compositeElResolver.add(new CouldNotResolvePropertyELResolver()); return compositeElResolver; }