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 / ExpressionEvaluatorImplLibrary.java @ 44644

History | View | Annotate | Download (2.86 KB)

1
package org.gvsig.expressionevaluator.impl;
2

    
3
import org.gvsig.expressionevaluator.DataTypes;
4
import org.gvsig.expressionevaluator.ExpressionEvaluatorLibrary;
5
import org.gvsig.expressionevaluator.ExpressionEvaluatorLocator;
6
import org.gvsig.expressionevaluator.ExpressionEvaluatorManager;
7
import org.gvsig.expressionevaluator.impl.coercion.CoerceToExpression;
8
import org.gvsig.expressionevaluator.impl.coercion.CoerceToString;
9
import org.gvsig.expressionevaluator.impl.grammars.BasicGrammarFactory;
10
import org.gvsig.expressionevaluator.impl.repr.ReprBoolean;
11
import org.gvsig.expressionevaluator.impl.repr.ReprCharSequence;
12
import org.gvsig.expressionevaluator.impl.repr.ReprDate;
13
import org.gvsig.expressionevaluator.impl.repr.ReprNumber;
14
import org.gvsig.expressionevaluator.impl.symboltable.BasicImageSymbolTableFactory;
15
import org.gvsig.expressionevaluator.impl.symboltable.FoldersSymbolTableFactory;
16
import org.gvsig.expressionevaluator.impl.symboltable.ProgrammingSymbolTableFactory;
17
import org.gvsig.expressionevaluator.impl.symboltable.SQLSymbolTableFactory;
18
import org.gvsig.expressionevaluator.impl.symboltable.UtilsSymbolTableFactory;
19
import org.gvsig.tools.ToolsLibrary;
20
import org.gvsig.tools.ToolsLocator;
21
import org.gvsig.tools.dataTypes.DataTypesManager;
22
import org.gvsig.tools.library.AbstractLibrary;
23
import org.gvsig.tools.library.LibraryException;
24

    
25
public class ExpressionEvaluatorImplLibrary extends AbstractLibrary {
26

    
27
    @Override
28
    public void doRegistration() {
29
        registerAsImplementationOf(ExpressionEvaluatorLibrary.class);
30
        require(ToolsLibrary.class);
31
    }
32

    
33
    @Override
34
    protected void doInitialize() throws LibraryException {
35
        ExpressionEvaluatorLocator.registerManager(DefaultExpressionEvaluatorManager.class);
36
    }
37

    
38
    @Override
39
    protected void doPostInitialize() throws LibraryException {
40
        ExpressionEvaluatorManager manager = ExpressionEvaluatorLocator.getManager();
41
        
42
        manager.registerSymbolTable(new SQLSymbolTableFactory());
43
        manager.registerSymbolTable(new UtilsSymbolTableFactory());
44
        manager.registerSymbolTable(new BasicImageSymbolTableFactory());
45
        manager.registerSymbolTable(new ProgrammingSymbolTableFactory());
46
        manager.registerSymbolTable(new FoldersSymbolTableFactory());
47

    
48
        manager.registerGrammar(new BasicGrammarFactory());
49
        
50
        DefaultExpression.registerPersistence();
51

    
52
        DataTypesManager dataTypesManager = ToolsLocator.getDataTypesManager();
53

    
54
        dataTypesManager.setCoercion(DataTypes.EXPRESSION, new CoerceToExpression());
55
        dataTypesManager.addCoercion(DataTypes.STRING,new CoerceToString());
56
        
57
        ToolsLocator.registerScriptManager(DefaultExpressionEvaluatorManager.class);
58
        
59
        ReprBoolean.selfRegister();
60
        ReprCharSequence.selfRegister();
61
        ReprNumber.selfRegister();
62
        ReprDate.selfRegister();
63
        
64
    }
65
}
66