Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.compat.cdc / org.gvsig.metadata.basic / org.gvsig.metadata.basic.swing / org.gvsig.metadata.swing.basic.api / src / main / java / org / gvsig / metadata / swing / basic / api / MetadataSwingLibrary.java @ 40769

History | View | Annotate | Download (3.04 KB)

1 40769 jjdelcerro
/**
2
 * gvSIG. Desktop Geographic Information System.
3 40608 jjdelcerro
 *
4 40769 jjdelcerro
 * Copyright (C) 2007-2013 gvSIG Association.
5
 *
6 40608 jjdelcerro
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8 40769 jjdelcerro
 * as published by the Free Software Foundation; either version 3
9 40608 jjdelcerro
 * of the License, or (at your option) any later version.
10 40769 jjdelcerro
 *
11 40608 jjdelcerro
 * 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 40769 jjdelcerro
 *
16 40608 jjdelcerro
 * 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 40769 jjdelcerro
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19 40608 jjdelcerro
 * MA  02110-1301, USA.
20 40769 jjdelcerro
 *
21
 * For any additional information, do not hesitate to contact us
22
 * at info AT gvsig.com, or visit our website www.gvsig.com.
23 40608 jjdelcerro
 */
24
package org.gvsig.metadata.swing.basic.api;
25
26
import org.gvsig.metadata.MetadataLocator;
27
import org.gvsig.metadata.MetadataManager;
28
import org.gvsig.tools.library.AbstractLibrary;
29
import org.gvsig.tools.library.LibraryException;
30
import org.gvsig.tools.locator.ReferenceNotRegisteredException;
31
import org.gvsig.tools.swing.api.ToolsSwingLibrary;
32
33
/**
34
 *
35
 * Initialization of the basic Metadata API Library.
36
 *
37
 * @author gvSIG Team
38
 * @author <a href="mailto:reinhold@uji.es">cmartin</a>
39
 * @version $Id$
40
 *
41
 */
42
public class MetadataSwingLibrary extends AbstractLibrary {
43
44
        public void doRegistration() {
45
                super.doRegistration();
46
                registerAsAPI(MetadataSwingLibrary.class);
47
        require(ToolsSwingLibrary.class);
48
    }
49
50
        /**
51
         * Performs all the initializations of the library, only related to himself:
52
         * register implementation classes through the Locator, start services, etc.
53
         *
54
         * @throws LibraryException
55
         *             if there is an error while performing the initialization of
56
         *             the library
57
         */
58
        protected void doInitialize() throws LibraryException {
59
60
        }
61
62
        /**
63
         * Performs all the initializations or validations related to the library
64
         * dependencies, as getting references to objects through other libraries
65
         * Locators.
66
         *
67
         * @throws LibraryException
68
         *             if there is an error while loading an implementation of the
69
         *             library
70
         */
71
        protected void doPostInitialize() throws LibraryException {
72
            // Validate there is any implementation registered.
73
        MetadataManager manager = MetadataLocator.getMetadataManager();
74
75
        if (manager == null) {
76
            throw new ReferenceNotRegisteredException(
77
                    MetadataLocator.METADATA_MANAGER_NAME, MetadataLocator.getInstance());
78
        }
79
                /*
80
                 * Validates if there is at least an implementation of the
81
                 * MetadataManager registered.
82
                 */
83
                MetadataSwingManager swingManager = MetadataSwingLocator.getMetadataSwingManager();
84
85
                if (swingManager == null) {
86
                        throw new ReferenceNotRegisteredException(
87
                                        MetadataSwingLocator.METADATA_MANAGER_NAME,
88
                                        MetadataSwingLocator.getInstance());
89
                }
90
        }
91 40769 jjdelcerro
}