Statistics
| Revision:

root / org.gvsig.projection / trunk / src / main / java / org / cresques / ProjectionLibrary.java @ 84

History | View | Annotate | Download (2.38 KB)

1
/* gvSIG. Geographic Information System of the Valencian Government
2
*
3
* Copyright (C) 2007-2008 Infrastructures and Transports Department
4
* of the Valencian Government (CIT)
5
*
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License
8
* as published by the Free Software Foundation; either version 2
9
* of the License, or (at your option) any later version.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
* MA  02110-1301, USA.
20
*
21
*/
22
package org.cresques;
23

    
24
import org.cresques.coerce.CoerceToCRS;
25
import org.cresques.coerce.CoerceToString;
26
import org.cresques.cts.IProjection;
27

    
28
import org.gvsig.fmap.crs.CRSFactory;
29
import org.gvsig.fmap.crs.persistence.CoordTransPersistenceFactory;
30
import org.gvsig.fmap.crs.persistence.ProjectionPersistenceFactory;
31
import org.gvsig.tools.ToolsLibrary;
32
import org.gvsig.tools.ToolsLocator;
33
import org.gvsig.tools.dataTypes.DataTypesManager;
34
import org.gvsig.tools.library.AbstractLibrary;
35
import org.gvsig.tools.library.LibraryException;
36

    
37
public class ProjectionLibrary extends AbstractLibrary {
38

    
39
    public void doRegistration() {
40
        registerAsAPI(ProjectionLibrary.class);
41
        require(ToolsLibrary.class);
42
    }
43

    
44
        protected void doInitialize() throws LibraryException {
45
        }
46

    
47
        protected void doPostInitialize() throws LibraryException {
48
                if (CRSFactory.cp==null) {
49
                        throw new CRSFactoryNotRegisteredException();
50
                }
51

    
52
                DataTypesManager dataTypesManager = ToolsLocator.getDataTypesManager();
53
        dataTypesManager.addtype(DataTypes.CRS, "CRS", "CRS",
54
            IProjection.class, new CoerceToCRS());
55
        dataTypesManager.setCoercion(DataTypes.STRING, new CoerceToString(
56
            dataTypesManager.getCoercion(DataTypes.STRING)));
57

    
58
                // Register the PersistenceFactory to be able to persist 
59
                // IProjection objects
60
                ToolsLocator.getPersistenceManager().registerFactory(
61
                                new ProjectionPersistenceFactory());
62
                ToolsLocator.getPersistenceManager().registerFactory(
63
            new CoordTransPersistenceFactory());
64
        }
65

    
66
}