root / branches / v2_0_0_prep / extensions / extExpressionField / src / org / gvsig / expressionfield / project / documents / table / operators / Length.java @ 29628
History | View | Annotate | Download (1.36 KB)
1 |
package org.gvsig.expressionfield.project.documents.table.operators; |
---|---|
2 |
|
3 |
import org.apache.bsf.BSFException; |
4 |
import org.apache.bsf.BSFManager; |
5 |
import org.gvsig.andami.PluginServices; |
6 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
7 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
8 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
9 |
|
10 |
|
11 |
/**
|
12 |
* @author Vicente Caballero Navarro
|
13 |
*/
|
14 |
public class Length extends AbstractOperator{ |
15 |
|
16 |
public String addText(String s) { |
17 |
return toString()+"("+s+")"; |
18 |
} |
19 |
public String toString() { |
20 |
return "length"; |
21 |
} |
22 |
public void eval(BSFManager interpreter) throws BSFException { |
23 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"int length(String value){return value.length();};");
|
24 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def length(value):\n" + |
25 |
" return len(value)");
|
26 |
} |
27 |
public boolean isEnable() { |
28 |
return (getType()==IOperator.STRING);
|
29 |
} |
30 |
public String getDescription() { |
31 |
return PluginServices.getText(this, "parameter") + ": " + |
32 |
PluginServices.getText(this, "string_value") + "\n" + |
33 |
PluginServices.getText(this, "returns") + ": " + |
34 |
PluginServices.getText(this, "numeric_value") + "\n" + |
35 |
PluginServices.getText(this, "description") + ": " + |
36 |
"Returns the length of string parameter.";
|
37 |
} |
38 |
} |