Package org.mvel2.integration

Examples of org.mvel2.integration.VariableResolver


  public CachingMapVariableResolverFactory(Map variables) {
    this.variables = variables;
  }

  public VariableResolver createVariable(String name, Object value) {
    VariableResolver vr;

    try {
      (vr = getVariableResolver(name)).setValue(value);
      return vr;
    }
View Full Code Here


      return vr;
    }
  }

  public VariableResolver createVariable(String name, Object value, Class<?> type) {
    VariableResolver vr;
    try {
      vr = getVariableResolver(name);
    }
    catch (UnresolveablePropertyException e) {
      vr = null;
    }

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

      return vr;
    }
  }

  public VariableResolver getVariableResolver(String name) {
    VariableResolver vr = variableResolvers.get(name);
    if (vr != null) {
      return vr;
    }
    else if (variables.containsKey(name)) {
      variableResolvers.put(name, vr = new SimpleSTValueResolver(variables.get(name), null));
View Full Code Here

      this.egressType = pCtx.getVarOrInputType(name);
    }
  }

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

  public VariableResolver createVariable(String name, Object value) {
    VariableResolverFactory delegate = getDelegate();
    VariableResolverFactory nextFactory = delegate.getNextFactory();
    delegate.setNextFactory(null);
    VariableResolver resolver = delegate.createVariable(name, value);
    delegate.setNextFactory(nextFactory);
    return resolver;
  }
View Full Code Here

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

  @Override
  public VariableResolver getVariableResolver(String name) {
    VariableResolver vr = variableResolvers.get(name);
    return vr != null ? vr : (nextFactory == null ? null : nextFactory.getVariableResolver(name));
  }
View Full Code Here

      variableResolvers = new SimpleIndexHashMapWrapper<String, VariableResolver>(variables, true);
    }

    @Override
    public VariableResolver createVariable(String name, Object value) {
      VariableResolver vr;

      try {
        (vr = getVariableResolver(name)).setValue(value);
        return vr;
      }
View Full Code Here

      }
    }

    @Override
    public VariableResolver createVariable(String name, Object value, Class<?> type) {
      VariableResolver vr;
      try {
        vr = getVariableResolver(name);
      }
      catch (UnresolveablePropertyException e) {
        vr = null;
      }

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

      return null;
    }

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

      }
    }

    @Override
    public VariableResolver createIndexedVariable(int index, String name, Object value) {
      VariableResolver vr = variableResolvers.getByIndex(index);

      if (vr == null) {
        vr = new SimpleValueResolver(value);
        variableResolvers.putAtIndex(index, vr);
      }
      else {
        vr.setValue(value);
      }


      return indexedVariableResolvers[index];
    }
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.