Example usage for com.badlogic.gdx.beans Expression Expression

List of usage examples for com.badlogic.gdx.beans Expression Expression

Introduction

In this page you can find the example usage for com.badlogic.gdx.beans Expression Expression.

Prototype

public Expression(Object target, String methodName, Object[] arguments) 

Source Link

Usage

From source file:org.apache.harmony.beans.Command.java

License:Apache License

private int doRun(Map<String, Command> references) throws Exception {
    if (status == Command.CHILDREN_FILTERED) {
        if (isRoot()) {
            result = new Argument(decoder);
            // System.out.println("doRun(): result is decoder...");
            return Command.COMMAND_EXECUTED;
        }//from  ww  w .  ja v  a 2  s .  c  om

        if (isNull()) {
            result = new Argument(null);
            // System.out.println("doRun(): result is null...");
            return Command.COMMAND_EXECUTED;
        }

        if (ctx != null && ctx.isArray() && (ctx.getResultValue() == null) && !isExecutable()) {
            // System.out.println("doRun(): context is array...");
            return status;
        }

        Object target = getTarget(references);
        if (target == null) {
            // System.out.println("doRun(): target is null...");
            return status;
        }
        // if (target instanceof Class) {
        // System.out.println("doRun(): target = " +
        // ((Class)target).getName());
        // } else {
        // System.out.println("doRun(): target = " +
        // target.getClass().getName());
        // }
        if (isReference()) {
            result = getReferencedArgument(references);
            // System.out.println("doRun(): reference - result is " +
            // result.getType());
        } else {
            String methodName = getMethodName(references);
            // System.out.println("doRun(): methodName = " +
            // methodName);
            Argument[] arguments = getArguments();
            if (arguments == null) {
                return status;
            }
            // for (Argument element : arguments) {
            // if (element != null) {
            // System.out.println("doRun(): arg [" + i + "] = "
            // + arguments[i].getType());
            // } else {
            // System.out.println("doRun(): arg [" + i + "] =
            // null");
            // }
            // }

            Expression expr = new Expression(target, methodName, getArgumentsValues());
            result = new Argument(expr.getValue());

            if (isPrimitiveClassName(getTagName())) {
                result.setType(getPrimitiveClass(tagName));
            }

            // System.out.println("doRun(): method call - result is " +
            // result.getType());
        }
        return Command.COMMAND_EXECUTED;
    }
    return status;
}