svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.expressionevaluator / org.gvsig.expressionevaluator.geometry / org.gvsig.expressionevaluator.geometry.lib / org.gvsig.expressionevaluator.geometry.lib.impl / src / main / java / org / gvsig / expressionevaluator / impl / repr / ReprProjection.java @ 44644
History | View | Annotate | Download (1.29 KB)
1 | 44644 | jjdelcerro | package org.gvsig.expressionevaluator.impl.repr; |
---|---|---|---|
2 | |||
3 | import org.cresques.cts.IProjection; |
||
4 | import org.gvsig.expressionevaluator.ReprMethod; |
||
5 | import org.gvsig.expressionevaluator.ExpressionEvaluatorLocator; |
||
6 | import org.gvsig.expressionevaluator.ExpressionEvaluatorManager; |
||
7 | import org.gvsig.fmap.geom.Geometry; |
||
8 | |||
9 | |||
10 | /**
|
||
11 | *
|
||
12 | * @author jjdelcerro
|
||
13 | */
|
||
14 | public class ReprProjection implements ReprMethod { |
||
15 | |||
16 | public ReprProjection() {
|
||
17 | } |
||
18 | |||
19 | @Override
|
||
20 | public String getName() { |
||
21 | return this.getClass().getSimpleName(); |
||
22 | } |
||
23 | |||
24 | @Override
|
||
25 | public boolean isApplicable(Object value) { |
||
26 | return value instanceof IProjection; |
||
27 | } |
||
28 | |||
29 | @Override
|
||
30 | public String repr(Object value) { |
||
31 | return String.valueOf(this.getProjectionCode((IProjection) value)); |
||
32 | } |
||
33 | |||
34 | private Object getProjectionCode(IProjection proj) { |
||
35 | if( proj == null ) { |
||
36 | return 0; |
||
37 | } |
||
38 | String[] proj_s = proj.getAbrev().split(":"); |
||
39 | try {
|
||
40 | int code = Integer.parseInt(proj_s[1]); |
||
41 | return code;
|
||
42 | } catch(Exception ex) { |
||
43 | return proj_s[1]; |
||
44 | } |
||
45 | } |
||
46 | |||
47 | public static void selfRegister() { |
||
48 | ExpressionEvaluatorManager manager = ExpressionEvaluatorLocator.getManager(); |
||
49 | manager.addReprMethod(new ReprProjection());
|
||
50 | } |
||
51 | |||
52 | } |