Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.expressionevaluator / org.gvsig.expressionevaluator.lib / org.gvsig.expressionevaluator.lib.impl / src / main / java / org / gvsig / expressionevaluator / impl / converterstocode / ListToCode.java @ 47248

History | View | Annotate | Download (1.07 KB)

1
package org.gvsig.expressionevaluator.impl.converterstocode;
2

    
3
import java.util.List;
4
import java.util.Map;
5
import org.gvsig.expressionevaluator.Code;
6
import org.gvsig.expressionevaluator.CodeBuilder;
7
import org.gvsig.expressionevaluator.ConverterToCode;
8
import org.gvsig.expressionevaluator.ExpressionEvaluatorLocator;
9
import org.gvsig.expressionevaluator.ExpressionEvaluatorManager;
10
import org.gvsig.expressionevaluator.MutableCodes;
11

    
12
/**
13
 *
14
 * @author jjdelcerro
15
 */
16
public class ListToCode implements ConverterToCode {
17

    
18
    @Override
19
    public String getName() {
20
        return "List";
21
    }
22

    
23
    @Override
24
    public boolean isApplicable(Object... os) {
25
        return os[0] instanceof List;
26
    }
27

    
28
    @Override
29
    public Code toCode(CodeBuilder builder, Object obj, Map props) {
30
        ExpressionEvaluatorManager manager = ExpressionEvaluatorLocator.getExpressionEvaluatorManager();
31
        MutableCodes args = builder.args();
32
        for (Object item : (List) obj) {
33
            args.add(manager.convertToCode(builder, item, props));
34
        }
35
        return builder.tuple(args);
36
    }
37

    
38
}