Package org.mvel2.integration

Examples of org.mvel2.integration.VariableResolver


    this.register = register;
    this.egressType = pCtx.getVarOrInputType(pCtx.getIndexedVarNames()[register]);
  }

  public Object getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory) {
    VariableResolver vResolver = factory.getIndexedVariableResolver(register);
    vResolver.setValue(MathProcessor.doOperations(ctx = vResolver.getValue(), Operator.ADD, DataTypes.INTEGER, 1));
    return ctx;
  }
View Full Code Here


        if (variableFactory.isIndexedFactory() && variableFactory.isTarget(property)) {
          int idx;
          addAccessorNode(new IndexedVariableAccessor(idx = variableFactory.variableIndexOf(property)));

          VariableResolver vr = variableFactory.getIndexedVariableResolver(idx);
          if (vr == null) {
            variableFactory.setIndexedVariableResolver(idx, variableFactory.getVariableResolver(property));
          }

          return variableFactory.getIndexedVariableResolver(idx).getValue();
View Full Code Here

    this.register = register;
    this.egressType = pCtx.getVarOrInputType(pCtx.getIndexedVarNames()[register]);
  }

  public Object getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory) {
    VariableResolver vResolver = factory.getIndexedVariableResolver(register);
    vResolver.setValue(ctx = MathProcessor.doOperations(vResolver.getValue(), Operator.ADD, DataTypes.INTEGER, 1));
    return ctx;
  }
View Full Code Here

    }
    return vr;
  }

  public VariableResolver createIndexedVariable(int index, String name, Object value) {
    VariableResolver r = indexedVariableResolvers[index];
    r.setValue(value);
    return r;
  }
View Full Code Here

  public VariableResolver getIndexedVariableResolver(int index) {
    return indexedVariableResolvers[index];
  }

  public VariableResolver createVariable(String name, Object value) {
    VariableResolver vr = getResolver(name);
    if (vr != null) {
      vr.setValue(value);
    }
    return vr;
  }
View Full Code Here

    }
    return vr;
  }

  public VariableResolver createVariable(String name, Object value, Class<?> type) {
    VariableResolver vr = getResolver(name);
    if (vr != null) {
      vr.setValue(value);
    }
    return vr;

//        if (nextFactory == null) nextFactory = new MapVariableResolverFactory(new HashMap());
//        return nextFactory.createVariable(name, value, type);
View Full Code Here

//        if (nextFactory == null) nextFactory = new MapVariableResolverFactory(new HashMap());
//        return nextFactory.createVariable(name, value, type);
  }

  public VariableResolver getVariableResolver(String name) {
    VariableResolver vr = getResolver(name);
    if (vr != null) return vr;
    else if (nextFactory != null) {
      return nextFactory.getVariableResolver(name);
    }
View Full Code Here

  }

  public VariableResolver createVariable(String name, Object value, Class<?> type) {
    if (indexedVariableNames == null) return super.createVariable(name, value, type);

    VariableResolver vr;
    boolean newVar = false;

    try {
      int idx;
      if ((idx = variableIndexOf(name)) != -1) {
        vr = new SimpleValueResolver(value);
        if (indexedVariableResolvers[idx] == null) {
          indexedVariableResolvers[idx] = vr;
        }
        variableResolvers.put(indexedVariableNames[idx], vr);
        vr = indexedVariableResolvers[idx];

        newVar = true;
      }
      else {
        return super.createVariable(name, value, type);
      }

    }
    catch (UnresolveablePropertyException e) {
      vr = null;
    }

    if (!newVar && vr != null && vr.getType() != null) {
      throw new RuntimeException("variable already defined within scope: " + vr.getType() + " " + name);
    }
    else {
      addResolver(name, vr = new MapVariableResolver(variables, name, type)).setValue(value);
      return vr;
    }
View Full Code Here

  public boolean isResolveable(String name) {
    return variableResolvers.containsKey(name) || (nextFactory != null && nextFactory.isResolveable(name));
  }

  public VariableResolver createVariable(String name, Object value) {
    VariableResolver resolver = getVariableResolver(name);
    if (resolver == null) {
      int idx = increaseRegisterTableSize();
      this.indexedVariableNames[idx] = name;
      this.indexedVariableResolvers[idx] = new SimpleValueResolver(value);
      variableResolvers.put(name, null);

      //     variableResolvers.put(name, this.indexedVariableResolvers[idx] = new SimpleValueResolver(value));
      return this.indexedVariableResolvers[idx];
    }
    else {
      resolver.setValue(value);
      return resolver;
    }
  }
View Full Code Here

      return resolver;
    }
  }

  public VariableResolver createVariable(String name, Object value, Class<?> type) {
    VariableResolver vr = this.variableResolvers != null ? this.variableResolvers.get(name) : null;
    if (vr != null && vr.getType() != null) {
      throw new RuntimeException("variable already defined within scope: " + vr.getType() + " " + name);
    }
    else {
      return createIndexedVariable(variableIndexOf(name), name, value);
    }
  }
View Full Code Here

TOP

Related Classes of org.mvel2.integration.VariableResolver

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.