Revision 38695

View differences:

tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/resources/filters.txt
1
point_geometries_only=
2
curve_geometries_only=
3
surface_geometries_only=
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/resources/META-INF/services/org.gvsig.tools.library.Library
1
org.gvsig.newlayer.NewLayerLibrary
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerServiceException.java
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.gvsig.newlayer;
23

  
24
import org.gvsig.tools.exception.BaseException;
25
import org.gvsig.tools.service.ServiceException;
26

  
27
/**
28
 * Exception thrown when there is an error getting a NewLayer message.
29
 * 
30
 * @author gvSIG team
31
 * @version $Id$
32
 */
33
public class NewLayerServiceException extends ServiceException {
34
    /**
35
	 * 
36
	 */
37
	private static final long serialVersionUID = -4395786952326742397L;
38

  
39
	private static final String MESSAGE =
40
        "An error has been produced creating a store";
41

  
42
    private static final String KEY = "_NewLayerServiceException";
43
    
44
	/**
45
	 * @see BaseException#BaseException(String, String, long)
46
	 */
47
	protected NewLayerServiceException(String message, String key, long code) {
48
		super(message, key, code);
49
	}
50

  
51
	/**
52
	 * @see BaseException#BaseException(String, Throwable, String, long)
53
	 */
54
	protected NewLayerServiceException(String message, Throwable cause, String key,
55
			long code) {
56
		super(message, cause, key, code);
57
	}
58

  
59
    /**
60
     * Creates a new {@link NewLayerServiceException}.
61
     * 
62
     * @param cause
63
     *            the original cause
64
     */
65
    public NewLayerServiceException(Throwable cause) {
66
        super(MESSAGE, cause, KEY, serialVersionUID);
67
    }
68
    
69
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerService.java
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

  
23
package org.gvsig.newlayer;
24

  
25
import java.util.List;
26

  
27
import org.gvsig.fmap.dal.DataServerExplorer;
28
import org.gvsig.fmap.dal.DataStoreParameters;
29
import org.gvsig.fmap.dal.feature.EditableFeatureType;
30
import org.gvsig.fmap.dal.feature.FeatureStore;
31
import org.gvsig.fmap.dal.feature.NewFeatureStoreParameters;
32
import org.gvsig.fmap.mapcontext.MapContext;
33

  
34
/**
35
 * <p>
36
 * This service is used to create a new {@link FeatureStore}.
37
 * </p>
38
 * 
39
 * @author gvSIG team
40
 * @version $Id$
41
 */
42
public interface NewLayerService {
43

  
44
    /**
45
     * @deprecated use {@link #setProviderFactory(NewLayerProviderFactory)}
46
     *             instead
47
     */
48
    public void setType(String type);
49

  
50
    /**
51
     * @deprecated use {@link #getProviderFactory()} instead
52
     */
53
    public String getType();
54

  
55
    /**
56
     * @deprecated use {@link #getProviderFactories()} instead
57
     */
58
    public List<String> getTypes();
59

  
60
    public void setProviderFactory(NewLayerProviderFactory type);
61
    
62
    public NewLayerProviderFactory getProviderFactory();
63

  
64
    public List<NewLayerProviderFactory> getProviderFactories();
65
    
66
    public void createLayer() throws NewLayerServiceException;
67

  
68
	public void loadLayer() throws NewLayerServiceException;
69

  
70
    public DataServerExplorer getExplorer();
71
    
72
    public String getStoreName();
73
    
74
    public EditableFeatureType getFeatureType();
75
    
76
    public NewFeatureStoreParameters getNewStoreParameters();
77
    
78
    public DataStoreParameters getOpenStoreParameters();
79
    
80
    public NewLayerProvider getProvider();
81
    
82
    public void addLayerToView(boolean b);
83
    
84
    public MapContext getMapContext();
85
    
86
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerWizard.java
1
package org.gvsig.newlayer;
2

  
3
import javax.swing.ImageIcon;
4

  
5
import org.gvsig.gui.beans.wizard.WizardPanelWithLogo;
6

  
7

  
8
public abstract class NewLayerWizard extends WizardPanelWithLogo{
9

  
10
	private static final long serialVersionUID = -9070328984844239279L;
11

  
12
	public NewLayerWizard(ImageIcon logo) {
13
		super(logo);
14
	}
15

  
16
	public abstract NewLayerService getService();
17

  
18
    public abstract void setType(NewLayerProviderFactory currentType);
19

  
20
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerProviderFactory.java
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.gvsig.newlayer;
23

  
24
import org.gvsig.tools.service.spi.ProviderFactory;
25

  
26
/**
27
 * @author gvSIG Team
28
 * @version $Id$
29
 */
30
public interface NewLayerProviderFactory extends ProviderFactory {
31

  
32
    public boolean isSpatial();
33

  
34
    public NewLayerProvider create(NewLayerService service);
35

  
36
    /**
37
     * If the provider this factory creates is enabled. This option might
38
     * be used as a way to show or not some providers to the user.
39
     * 
40
     * @return if the provider is enabled
41
     */
42
    public boolean isEnabled();
43

  
44
    /**
45
     * Enable or disable this provider factory.
46
     * 
47
     * @param value
48
     *            if to enable or disable the factory
49
     */
50
    public void setEnabled(boolean value);
51

  
52
    /**
53
     * Returns a description of the provider.
54
     * 
55
     * @return a description for the provider
56
     */
57
    public String getDescription();
58

  
59
    /**
60
     * Returns a label or short description for the provider.
61
     * 
62
     * @return a label or short description for the provider
63
     */
64
    public String getLabel();
65
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerLocator.java
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.gvsig.newlayer;
23

  
24
import org.gvsig.tools.locator.BaseLocator;
25
import org.gvsig.tools.locator.Locator;
26
import org.gvsig.tools.locator.LocatorException;
27

  
28
/**
29
 * This locator is the entry point for the NewLayer library, providing
30
 * access to all NewLayer services through the {@link NewLayerManager}
31
 * .
32
 * 
33
 * @author gvSIG team
34
 * @version $Id$
35
 */
36
public class NewLayerLocator extends BaseLocator {
37

  
38
    /**
39
     * NewLayer manager name.
40
     */
41
    public static final String MANAGER_NAME = "NewLayer.manager";
42

  
43
    /**
44
     * NewLayer manager description.
45
     */
46
    public static final String MANAGER_DESCRIPTION = "NewLayer Manager";
47

  
48
    private static final String LOCATOR_NAME = "NewLayer.locator";
49

  
50
    /**
51
     * Unique instance.
52
     */
53
    private static final NewLayerLocator INSTANCE =
54
        new NewLayerLocator();
55

  
56
    /**
57
     * Return the singleton instance.
58
     * 
59
     * @return the singleton instance
60
     */
61
    public static NewLayerLocator getInstance() {
62
        return INSTANCE;
63
    }
64

  
65
    /**
66
     * Return the Locator's name.
67
     * 
68
     * @return a String with the Locator's name
69
     */
70
    public final String getLocatorName() {
71
        return LOCATOR_NAME;
72
    }
73

  
74
    /**
75
     * Return a reference to the NewLayerManager.
76
     * 
77
     * @return a reference to the NewLayerManager
78
     * @throws LocatorException
79
     *             if there is no access to the class or the class cannot be
80
     *             instantiated
81
     * @see Locator#get(String)
82
     */
83
    public static NewLayerManager getManager() throws LocatorException {
84
        return (NewLayerManager) getInstance().get(MANAGER_NAME);
85
    }
86

  
87
    /**
88
     * Registers the Class implementing the NewLayerManager interface.
89
     * 
90
     * @param clazz
91
     *            implementing the NewLayerManager interface
92
     */
93
    public static void registerManager(
94
        Class<? extends NewLayerManager> clazz) {
95
        getInstance().register(MANAGER_NAME, MANAGER_DESCRIPTION, clazz);
96
    }
97

  
98
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerLibrary.java
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.gvsig.newlayer;
23

  
24
import org.gvsig.tools.library.AbstractLibrary;
25
import org.gvsig.tools.library.LibraryException;
26
import org.gvsig.tools.locator.ReferenceNotRegisteredException;
27

  
28
/**
29
 * Library for API initialization and configuration.
30
 * 
31
 * @author gvSIG team
32
 * @version $Id$
33
 */
34
public class NewLayerLibrary extends AbstractLibrary {
35
       
36
    @Override
37
    public void doRegistration() {
38
        registerAsAPI(NewLayerLibrary.class);
39
    }
40

  
41
    @Override
42
    protected void doInitialize() throws LibraryException {
43
        // Do nothing
44
    }
45

  
46
    @Override
47
    protected void doPostInitialize() throws LibraryException {
48
        // Validate there is any implementation registered.
49
        NewLayerManager manager = NewLayerLocator.getManager();
50
        if (manager == null) {
51
            throw new ReferenceNotRegisteredException(
52
                NewLayerLocator.MANAGER_NAME, NewLayerLocator
53
                    .getInstance());
54
        }
55
    }
56

  
57
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/spi/AbstractNewLayerProvider.java
1
package org.gvsig.newlayer.spi;
2

  
3
import org.gvsig.fmap.dal.DataServerExplorer;
4
import org.gvsig.newlayer.NewLayerProvider;
5
import org.gvsig.newlayer.NewLayerService;
6
import org.gvsig.tools.service.spi.ProviderServices;
7

  
8
public abstract class AbstractNewLayerProvider implements NewLayerProvider{
9

  
10
	private NewLayerService service;
11
	protected DataServerExplorer explorer;
12
	protected String storeName;
13

  
14
	protected AbstractNewLayerProvider(NewLayerService service){
15
		this.service = service;
16
	}
17
	
18
	public NewLayerService getService() {
19
		return service;
20
	}
21
	
22
	public DataServerExplorer getExplorer() {
23
		return explorer;
24
	}
25
	
26
	public String getStoreName() {
27
		return storeName;
28
	}
29
	
30
	public void setProviderServices(ProviderServices services) {
31
		throw new UnsupportedOperationException();
32
	}
33
	
34
	
35

  
36
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/spi/AbstractNewLayerProviderFactory.java
1
package org.gvsig.newlayer.spi;
2

  
3
import org.gvsig.newlayer.NewLayerLocator;
4
import org.gvsig.newlayer.NewLayerProviderFactory;
5
import org.gvsig.tools.dynobject.DynClass;
6
import org.gvsig.tools.dynobject.DynObject;
7
import org.gvsig.tools.service.ServiceException;
8
import org.gvsig.tools.service.spi.Provider;
9
import org.gvsig.tools.service.spi.ProviderServices;
10

  
11
public abstract class AbstractNewLayerProviderFactory implements NewLayerProviderFactory{
12

  
13
	public final Provider doCreate(DynObject parameters, ProviderServices services) {
14
		throw new UnsupportedOperationException();
15
	}
16

  
17
	public DynObject createParameters() {
18
		throw new UnsupportedOperationException();
19
	}
20

  
21
	public void initialize() {
22
		throw new UnsupportedOperationException();
23
	}
24

  
25
	protected DynClass createParametersDynClass() {
26
		throw new UnsupportedOperationException();
27
	}
28

  
29
	public Provider create(DynObject parameters, ProviderServices services)
30
	throws ServiceException {
31
		throw new UnsupportedOperationException();
32
	}
33

  
34
    public boolean isEnabled() {
35
        return NewLayerLocator.getManager().isProviderEnabled(this);
36
    }
37

  
38
    public void setEnabled(boolean value) {
39
        NewLayerLocator.getManager().enableProvider(this, value);
40
    }
41

  
42
    @Override
43
    public String toString() {
44
        return getLabel();
45
    }
46
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerManager.java
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.gvsig.newlayer;
23

  
24
import java.util.List;
25

  
26
import org.gvsig.fmap.mapcontext.MapContext;
27
import org.gvsig.newlayer.preferences.NewLayerPreferencesComponent;
28
import org.gvsig.tools.service.ServiceException;
29

  
30
/**
31
 * This class is responsible of the management of the library's business logic.
32
 * It is the library's main entry point, and provides all the services to manage
33
 * {@link NewLayerService}s.
34
 * 
35
 * @see NewLayerService
36
 * @author gvSIG team
37
 * @version $Id$
38
 */
39
public interface NewLayerManager {
40

  
41
    public enum STORETYPE{ANY,TABULAR,SPATIAL};
42
    
43

  
44
    /**
45
     * Create an instance of a {@link NewLayerService}.
46
     * @return {@link NewLayerService}
47
     * @throws ServiceException
48
     *             if there is an error getting the service
49
     */
50
    public NewLayerService createNewLayerService(MapContext mapContext);
51
    
52
    public void registerProvider(NewLayerProviderFactory factory);
53
    
54
    public List<NewLayerProviderFactory> getProviders(STORETYPE filter);
55

  
56
    public List<NewLayerProviderFactory> getProviders();
57
    
58
    public NewLayerWizard createNewLayerWizard(NewLayerService service);
59

  
60
    /**
61
     * Returns the provider factory with the given name.
62
     * 
63
     * @param name
64
     *            of the provider
65
     * @return the provider factory
66
     * @throws ServiceException
67
     *             if there is an error getting the provider factory
68
     */
69
    public NewLayerProviderFactory getNewLayerProviderFactory(
70
        String providerName) throws ServiceException;
71

  
72
    /**
73
     * Enables or disables a new layer provider.
74
     * 
75
     * @param factory
76
     *            of the provider to enable or disable
77
     * @param value
78
     *            if the provider must be enabled or disabled
79
     */
80
    public void enableProvider(NewLayerProviderFactory factory, Boolean false1);
81

  
82
    /**
83
     * Creates a preferences component to manage the export to properties.
84
     * 
85
     * @return a preferences component
86
     */
87
    public NewLayerPreferencesComponent createNewLayerProvidersPreferences();
88

  
89
    /**
90
     * Returns if the provider whose factory is provided is enabled.
91
     * 
92
     * @param factory
93
     *            of the provider to check
94
     * @return if the provider whose factory is provided is enabled
95
     */
96
    public boolean isProviderEnabled(NewLayerProviderFactory factory);
97

  
98
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerProvider.java
1
package org.gvsig.newlayer;
2

  
3
import java.util.List;
4

  
5
import org.gvsig.fmap.dal.DataServerExplorer;
6
import org.gvsig.fmap.dal.DataStoreParameters;
7
import org.gvsig.fmap.dal.feature.EditableFeatureType;
8
import org.gvsig.fmap.dal.feature.NewFeatureStoreParameters;
9
import org.gvsig.tools.service.spi.Provider;
10

  
11
public interface NewLayerProvider extends Provider{
12
	
13
	public NewLayerService getService();
14
	
15
	public DataServerExplorer getExplorer();
16
	
17
	public String getStoreName();
18

  
19
	public EditableFeatureType getFeatureType();
20
	
21
	public NewFeatureStoreParameters getNewStoreParameters();
22
	
23
	public DataStoreParameters getOpenStoreParameters();
24

  
25
	public List<NewLayerProviderPanel> getPanels();
26
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerProviderPanel.java
1
package org.gvsig.newlayer;
2

  
3
import javax.swing.JPanel;
4

  
5

  
6
public abstract class NewLayerProviderPanel extends JPanel{
7

  
8

  
9
	protected NewLayerProvider provider;
10

  
11
	protected NewLayerProviderPanel(NewLayerProvider provider){
12
		this.provider = provider;
13
	}
14

  
15
	public abstract String getTitle();
16
	
17
	public abstract boolean isValidPanel() throws NewLayerException;
18
	
19
	public abstract void updatePanel();
20
	
21
	
22
	
23
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/preferences/NewLayerPreferencesComponent.java
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.gvsig.newlayer.preferences;
23

  
24
import java.util.Set;
25

  
26
import org.gvsig.newlayer.NewLayerProviderFactory;
27
import org.gvsig.tools.swing.api.Component;
28

  
29
/**
30
 * API for the Export to swing preferences component panel.
31
 * 
32
 * @author gvSIG Team
33
 * @version $Id$
34
 */
35
public interface NewLayerPreferencesComponent extends Component {
36

  
37
    /**
38
     * Returns the providers disabled by the user.
39
     * 
40
     * @return the providers disabled by the user
41
     */
42
    Set<NewLayerProviderFactory> getDisabledProviders();
43

  
44
    /**
45
     * Undoes all the user changes in the preferences.
46
     */
47
    void initializeDefaults();
48

  
49
    /**
50
     * Is the user has made any change in the preferences.
51
     * 
52
     * @return the user has made any change
53
     */
54
    boolean isValueChanged();
55

  
56
    /**
57
     * Tells the component the changes made by the user to the properties
58
     * had been performed.
59
     */
60
    void setChangesApplied();
61
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/src/main/java/org/gvsig/newlayer/NewLayerException.java
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.gvsig.newlayer;
23

  
24
import org.gvsig.tools.exception.BaseException;
25

  
26
/**
27
 * Generic exception thrown in the NewLayer API when the exception or error
28
 * may be dealt by the program or the user of the program which is a client of
29
 * the NewLayer API.
30
 * 
31
 * @see {@link NewLayerService}
32
 * @see {@link NewLayerManager}
33
 * @author gvSIG team.
34
 * @version $Id$
35
 */
36
public class NewLayerException extends BaseException {
37

  
38
    /**
39
	 * 
40
	 */
41
	private static final long serialVersionUID = -2954242107118688337L;
42

  
43
	private static final String MESSAGE =
44
        "An error has been produced in the NewLayer library";
45

  
46
    private static final String KEY = "_NewLayerException";
47

  
48
    /**
49
     * Constructor to be used in rare cases, usually you must create a new child
50
     * exception class for each case.
51
     * <strong>Don't use this constructor in child classes.</strong>
52
     */
53
    public NewLayerException() {
54
        super(MESSAGE, KEY, serialVersionUID);
55
    }
56

  
57
    /**
58
     * Constructor to be used in rare cases, usually you must create a new child
59
     * exception class for each case.
60
     * <p>
61
     * <strong>Don't use this constructor in child classes.</strong>
62
     * </p>
63
     * 
64
     * @param cause
65
     *            the original cause of the exception
66
     */
67
    public NewLayerException(Exception cause) {
68
        super(MESSAGE, cause, KEY, serialVersionUID);
69
    }
70

  
71
    /**
72
     * @see BaseException#BaseException(String, String, long).
73
     * @param message
74
     *            the default messageFormat to describe the exception
75
     * @param key
76
     *            the key to use to search a localized messageFormnata
77
     * @param code
78
     *            the unique code to identify the exception
79
     */
80
    protected NewLayerException(String message, String key, long code) {
81
        super(message, key, code);
82
    }
83

  
84
    /**
85
     * @see BaseException#BaseException(String, Throwable, String, long).
86
     * @param message
87
     *            the default messageFormat to describe the exception
88
     * @param cause
89
     *            the original cause of the exception
90
     * @param key
91
     *            the key to use to search a localized messageFormnata
92
     * @param code
93
     *            the unique code to identify the exception
94
     */
95
    protected NewLayerException(String message, Throwable cause,
96
        String key, long code) {
97
        super(message, cause, key, code);
98
    }
99
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.api/pom.xml
1
<?xml version="1.0" encoding="ISO-8859-1"?>
2
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4
    <modelVersion>4.0.0</modelVersion>
5
    <artifactId>org.gvsig.newlayer.lib.api</artifactId>
6
    <packaging>jar</packaging>
7
    <name>org.gvsig.newlayer.lib.api</name>
8
    <parent>
9
        <groupId>org.gvsig</groupId>
10
        <artifactId>org.gvsig.newlayer.lib</artifactId>
11
        <version>1.0.0-SNAPSHOT</version>
12
    </parent>
13
    <dependencies>
14
        <dependency>
15
            <groupId>org.gvsig</groupId>
16
            <artifactId>org.gvsig.tools.lib</artifactId>
17
            <scope>compile</scope>
18
        </dependency>
19
        <dependency>
20
            <groupId>org.gvsig</groupId>
21
            <artifactId>org.gvsig.tools.swing.api</artifactId>
22
            <scope>compile</scope>
23
        </dependency>
24
        <dependency>
25
            <groupId>org.gvsig</groupId>
26
            <artifactId>org.gvsig.fmap.dal</artifactId>
27
            <scope>compile</scope>
28
        </dependency>
29
        <dependency>
30
            <groupId>org.gvsig</groupId>
31
            <artifactId>org.gvsig.projection</artifactId>
32
            <scope>compile</scope>
33
        </dependency>
34
        <dependency>
35
            <groupId>org.gvsig</groupId>
36
            <artifactId>org.gvsig.ui</artifactId>
37
            <version>2.0.1-SNAPSHOT</version>
38
            <scope>compile</scope>
39
        </dependency>
40
        <dependency>
41
            <groupId>jwizardcomponent</groupId>
42
            <artifactId>jwizardcomponent</artifactId>
43
            <scope>compile</scope>
44
        </dependency>
45
        <dependency>
46
            <groupId>org.gvsig</groupId>
47
            <artifactId>org.gvsig.fmap.mapcontext</artifactId>
48
            <version>2.0-SNAPSHOT</version>
49
            <scope>compile</scope>
50
        </dependency>
51
    </dependencies>
52
    <build>
53
        <plugins>
54
            <plugin>
55
                <groupId>org.apache.maven.plugins</groupId>
56
                <artifactId>maven-jar-plugin</artifactId>
57
                <configuration>
58
                </configuration>
59
                <executions>
60
                    <!-- Generates a jar file only with the test classes -->
61
                    <execution>
62
                        <goals>
63
                            <goal>test-jar</goal>
64
                        </goals>
65
                    </execution>
66
                </executions>
67
            </plugin>
68
        </plugins>
69
    </build>
70
</project>
0 71

  
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/pom.xml
1
<?xml version="1.0" encoding="ISO-8859-1"?>
2
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
4
		 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5

  
6
	<modelVersion>4.0.0</modelVersion>
7
	<artifactId>org.gvsig.newlayer.lib</artifactId>
8
	<packaging>pom</packaging>
9
	<name>org.gvsig.newlayer.lib</name>
10
	<parent>
11
		<groupId>org.gvsig</groupId>
12
		<artifactId>org.gvsig.newlayer</artifactId>
13
		<version>1.0.0-SNAPSHOT</version>
14
	</parent>
15

  
16
	<modules>
17
		<module>org.gvsig.newlayer.lib.api</module>
18
		<module>org.gvsig.newlayer.lib.impl</module>
19
	</modules>
20
</project>
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.impl/src/test/resources/README.txt
1
Put into this folder the resources needed by your test classes.
2

  
3
This folder is added to the Tests classpath, so you can load any resources 
4
through the ClassLoader.
5

  
6
By default, in this folder you can find an example of log4j configuration,
7
prepared to log messages through the console, so logging works when you
8
run your tests classes.
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.impl/src/test/resources/log4j.xml
1
<?xml version="1.0" encoding="ISO-8859-1" ?>
2
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
3

  
4
<!-- 
5
Log4J configuration file for unit tests execution.
6
 -->
7
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
8

  
9
	<!-- Appender configuration to show logging messages through the console -->
10
	<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
11
		<layout class="org.apache.log4j.PatternLayout">
12
			<param name="ConversionPattern" value="%d{HH:mm:ss,SSS} %-5p [%c{2}.%M()]\n  %m%n" />
13
		</layout>
14
	</appender>
15

  
16
	<!-- 
17
	Activate logging messages of DEBUG level of higher only for the
18
	org.gvsig.tools packages.
19
	You can put full classes names or packages instead, to configure
20
	logging for all the classes and subpackages of the package.
21
	-->
22
	<category name="org.gvsig.tools">
23
		<priority value="DEBUG" />
24
	</category>
25
	<category name="org.gvsig.newlayer">
26
		<priority value="DEBUG" />
27
	</category>
28

  
29
	<!-- 
30
	By default, show only logging messages of INFO level or higher, 
31
	through the previously configured CONSOLE appender. 
32
	-->
33
	<root>
34
		<priority value="INFO" />
35
		<appender-ref ref="CONSOLE" />
36
	</root>
37
</log4j:configuration>
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.impl/src/main/java/org/gvsig/newlayer/impl/DefaultNewLayerService.java
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.gvsig.newlayer.impl;
23

  
24
import java.util.ArrayList;
25
import java.util.Iterator;
26
import java.util.List;
27

  
28
import org.gvsig.fmap.dal.DALLocator;
29
import org.gvsig.fmap.dal.DataManager;
30
import org.gvsig.fmap.dal.DataServerExplorer;
31
import org.gvsig.fmap.dal.DataStore;
32
import org.gvsig.fmap.dal.DataStoreParameters;
33
import org.gvsig.fmap.dal.exception.DataException;
34
import org.gvsig.fmap.dal.exception.ValidateDataParametersException;
35
import org.gvsig.fmap.dal.feature.EditableFeatureType;
36
import org.gvsig.fmap.dal.feature.NewFeatureStoreParameters;
37
import org.gvsig.fmap.mapcontext.MapContext;
38
import org.gvsig.fmap.mapcontext.MapContextLocator;
39
import org.gvsig.fmap.mapcontext.MapContextManager;
40
import org.gvsig.fmap.mapcontext.exceptions.LoadLayerException;
41
import org.gvsig.fmap.mapcontext.layers.FLayer;
42
import org.gvsig.newlayer.NewLayerManager;
43
import org.gvsig.newlayer.NewLayerProvider;
44
import org.gvsig.newlayer.NewLayerProviderFactory;
45
import org.gvsig.newlayer.NewLayerService;
46
import org.gvsig.newlayer.NewLayerServiceException;
47
import org.gvsig.tools.service.ServiceException;
48

  
49
/**
50
 * Default {@link NewLayerService} implementation.
51
 * 
52
 * @author gvSIG Team
53
 * @version $Id$
54
 */
55
public class DefaultNewLayerService implements NewLayerService {
56

  
57
    private NewLayerManager newLayerManager;
58
    private NewLayerProviderFactory type;
59
    private NewLayerProvider provider;
60
    private boolean addLayerToView = true;
61
    private MapContext mapContext;
62

  
63
    /**
64
     * {@link DefaultNewLayerService} constructor
65
     */
66
    public DefaultNewLayerService(NewLayerManager manager, MapContext mapContext) {
67
        this.newLayerManager = manager;
68
        this.mapContext = mapContext;
69
    }
70

  
71
    public NewLayerProvider getProvider() {
72
        return provider;
73
    }
74

  
75
    public void createLayer() throws NewLayerServiceException {
76
        try {
77
            this.getExplorer().add(this.getStoreName(),
78
                this.getNewStoreParameters(), true);
79
        } catch (DataException e) {
80
            throw new CantCreateNewLayerException(e);
81
        }
82
    }
83

  
84
    public void loadLayer() throws NewLayerServiceException {
85
        try {
86
            String storeName = this.getStoreName();
87
            DataStoreParameters storeParameters =
88
                this.getOpenStoreParameters();
89
            DataManager dataManager = DALLocator.getDataManager();
90
            DataStore store = dataManager.openStore(storeName, storeParameters);
91
            String layerName = store.getName();
92

  
93
            MapContextManager mapContextManager =
94
                MapContextLocator.getMapContextManager();
95
            FLayer lyr = mapContextManager.createLayer(layerName, store);
96
            lyr.setActive(true);
97
            lyr.setVisible(true);
98
            mapContext.getLayers().addLayer(lyr);
99

  
100
            lyr.dispose();
101
        } catch (DataException e) {
102
            throw new CantOpenStoreException(e);
103
        } catch (ValidateDataParametersException e) {
104
            throw new CantOpenStoreException(e);
105
        } catch (LoadLayerException e) {
106
            throw new CantLoadNewLayerException(e);
107
        }
108

  
109
    }
110

  
111
    public class CantCreateNewLayerException extends NewLayerServiceException {
112

  
113
        /**
114
		 * 
115
		 */
116
        private static final long serialVersionUID = 4208215791054246118L;
117

  
118
        public CantCreateNewLayerException(Throwable cause) {
119
            super("Can't create the layer", cause, "_cant_create_the_layer",
120
                serialVersionUID);
121
        }
122
    }
123

  
124
    public class CantOpenStoreException extends NewLayerServiceException {
125

  
126
        /**
127
		 * 
128
		 */
129
        private static final long serialVersionUID = -2245228621032918630L;
130

  
131
        public CantOpenStoreException(Throwable cause) {
132
            super("Can't open store", cause, "_cant_open_store",
133
                serialVersionUID);
134
        }
135
    }
136

  
137
    public class CantLoadNewLayerException extends NewLayerServiceException {
138

  
139
        /**
140
		 * 
141
		 */
142
        private static final long serialVersionUID = -1711950651766745963L;
143

  
144
        public CantLoadNewLayerException(Throwable cause) {
145
            super("Can't load the new layer", cause,
146
                "_cant_load_the_new_layer", serialVersionUID);
147
        }
148
    }
149

  
150
    public void setType(String type) {
151
        try {
152
            setProviderFactory(this.newLayerManager
153
                .getNewLayerProviderFactory(type));
154
        } catch (ServiceException e) {
155
            throw new RuntimeException(e);
156
        }
157
    }
158

  
159
    public DataServerExplorer getExplorer() {
160
        return getProvider().getExplorer();
161
    }
162

  
163
    public String getStoreName() {
164
        return getProvider().getStoreName();
165
    }
166

  
167
    public EditableFeatureType getFeatureType() {
168
        return getProvider().getFeatureType();
169
    }
170

  
171
    public NewFeatureStoreParameters getNewStoreParameters() {
172
        return getProvider().getNewStoreParameters();
173
    }
174

  
175
    public DataStoreParameters getOpenStoreParameters() {
176
        return getProvider().getOpenStoreParameters();
177
    }
178

  
179
    public List<String> getTypes() {
180
        List<String> types = new ArrayList<String>();
181
        List<NewLayerProviderFactory> providers = getProviderFactories();
182
        Iterator<NewLayerProviderFactory> it = providers.iterator();
183
        while (it.hasNext()) {
184
            NewLayerProviderFactory newLayerProviderFactory = it.next();
185
            types.add(newLayerProviderFactory.getName());
186
        }
187
        return types;
188
    }
189

  
190
    public String getType() {
191
        return this.type.getName();
192
    }
193

  
194
    public void addLayerToView(boolean b) {
195
        this.addLayerToView = b;
196
    }
197

  
198
    public MapContext getMapContext() {
199
        return mapContext;
200
    }
201

  
202
    public void setProviderFactory(NewLayerProviderFactory type) {
203
        this.type = type;
204
        this.provider = type.create(this);
205
    }
206

  
207
    public NewLayerProviderFactory getProviderFactory() {
208
        return type;
209
    }
210

  
211
    public List<NewLayerProviderFactory> getProviderFactories() {
212

  
213
        List<NewLayerProviderFactory> providers =
214
            new ArrayList<NewLayerProviderFactory>(
215
                this.newLayerManager
216
                    .getProviders(NewLayerManager.STORETYPE.ANY));
217

  
218
        for (Iterator<NewLayerProviderFactory> iterator = providers.iterator(); iterator
219
            .hasNext();) {
220
            NewLayerProviderFactory newLayerProviderFactory = iterator.next();
221
            if (!newLayerProviderFactory.isEnabled()) {
222
                iterator.remove();
223
            }
224
        }
225

  
226
        return providers;
227
    }
228

  
229
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.impl/src/main/java/org/gvsig/newlayer/impl/DefaultNewLayerWizard.java
1
package org.gvsig.newlayer.impl;
2

  
3
import java.awt.Dimension;
4
import java.util.Iterator;
5
import java.util.List;
6

  
7
import javax.swing.ImageIcon;
8
import javax.swing.JOptionPane;
9
import javax.swing.JPanel;
10

  
11
import jwizardcomponent.CancelAction;
12
import jwizardcomponent.DefaultJWizardComponents;
13
import jwizardcomponent.FinishAction;
14
import jwizardcomponent.JWizardComponents;
15

  
16
import org.slf4j.Logger;
17
import org.slf4j.LoggerFactory;
18

  
19
import org.gvsig.fmap.dal.DALLocator;
20
import org.gvsig.fmap.dal.DataStoreProviderFactory;
21
import org.gvsig.fmap.dal.feature.FeatureStoreProviderFactory;
22
import org.gvsig.gui.beans.wizard.panel.NotContinueWizardException;
23
import org.gvsig.gui.beans.wizard.panel.OptionPanel;
24
import org.gvsig.i18n.Messages;
25
import org.gvsig.newlayer.NewLayerException;
26
import org.gvsig.newlayer.NewLayerProviderFactory;
27
import org.gvsig.newlayer.NewLayerProviderPanel;
28
import org.gvsig.newlayer.NewLayerService;
29
import org.gvsig.newlayer.NewLayerServiceException;
30
import org.gvsig.newlayer.NewLayerWizard;
31

  
32
public class DefaultNewLayerWizard extends NewLayerWizard {
33

  
34
	/**
35
	 * 
36
	 */
37
	private static final long serialVersionUID = -5827106636136663823L;
38
	private NewLayerService service;
39
	private AddNewLayerQuestionPanel addNewLayerQuestionPanel;
40
	private static final Logger LOG =
41
        LoggerFactory.getLogger(DefaultNewLayerWizard.class);
42

  
43
	public DefaultNewLayerWizard(ImageIcon logo, NewLayerService service) {
44
		super(logo);
45
		setPreferredSize(new Dimension(800, 400));
46
		this.service = service;
47
		this.getWizardComponents().setFinishAction(
48
				new MyFinishAction(this.getWizardComponents()));
49
		this.getWizardComponents().setCancelAction(
50
				new MyCancelAction(this.getWizardComponents()));
51
		this.createTypeSelector();
52
		
53
		// ================ disable at the start
54
        this.setFinishButtonEnabled(false);
55
        this.setBackButtonEnabled(false);
56
        this.setNextButtonEnabled(false);
57
	}
58

  
59
	public NewLayerService getService() {
60
		return this.service;
61
	}
62

  
63
	private void createTypeSelector() {
64

  
65
		TypeSelectorPanel panel = new TypeSelectorPanel(this);
66
		this.addOptionPanel(panel);
67

  
68
	}
69

  
70
	private void createFeatureTypePanel() {
71
	    
72
		FeatureTypePanel panel = new FeatureTypePanel(service);
73
		this.addOptionPanel(panel);
74
	}
75

  
76
	private void createProviderPanels() {
77
		DefaultJWizardComponents wizardComponents = this.getWizardComponents();
78
		for (int i = wizardComponents.getWizardPanelList().size() - 1; i >= 1; i--) {
79
			wizardComponents.removeWizardPanel(i);
80
		}
81
		List<NewLayerProviderPanel> panels = service.getProvider().getPanels();
82
		Iterator<NewLayerProviderPanel> it = panels.iterator();
83
		while (it.hasNext()) {
84
			NewLayerProviderPanel panel = it.next();
85
			this.addOptionPanel(new OptionPanelWrapper(panel));
86
		}
87
		this.createFeatureTypePanel();
88
		this.createAddNewLayerQuestionPanel();
89
	}
90

  
91
	private AddNewLayerQuestionPanel getAddNewLayerQuestionPanel() {
92
		if (this.addNewLayerQuestionPanel == null) {
93
			this.addNewLayerQuestionPanel = new AddNewLayerQuestionPanel(this);
94
		}
95
		return this.addNewLayerQuestionPanel;
96
	}
97

  
98
	private void createAddNewLayerQuestionPanel() {
99
		this.addOptionPanel(getAddNewLayerQuestionPanel());
100
	}
101

  
102
	private boolean getAddLayerToView() {
103
		return getAddNewLayerQuestionPanel().getAddLayerToView();
104
	}
105

  
106
	@Override
107
    public void setType(NewLayerProviderFactory currentType) {
108
        this.service.setProviderFactory(currentType);
109
		createProviderPanels();
110
	}
111

  
112
	private class OptionPanelWrapper implements OptionPanel {
113

  
114
		private NewLayerProviderPanel panel;
115

  
116
		public OptionPanelWrapper(NewLayerProviderPanel panel) {
117
			this.panel = panel;
118
		}
119

  
120
		public String getPanelTitle() {
121
			return this.panel.getTitle();
122
		}
123

  
124
		public void nextPanel() throws NotContinueWizardException {
125

  
126
		    try {
127
    			if (!this.panel.isValidPanel()) {
128
    				throw new NotContinueWizardException("Error validating the form", panel, false);
129
    			}
130
		    } catch (NewLayerException e) {
131
                LOG.info("Error validating the form", e);
132
                throw new NotContinueWizardException("Error validating the form",
133
                    e, panel);
134
            }
135
		}
136

  
137
		public void lastPanel() {
138
		}
139

  
140
		public void updatePanel() {
141
			this.panel.updatePanel();
142
		}
143

  
144
		public JPanel getJPanel() {
145
			return this.panel;
146
		}
147

  
148
	}
149

  
150
	private class MyFinishAction extends FinishAction {
151

  
152
		public MyFinishAction(JWizardComponents arg0) {
153
			super(arg0);
154
		}
155

  
156
		public void performAction() {
157

  
158
			if (getService().getStoreName() == null) {
159
				JOptionPane
160
				.showMessageDialog(
161
						null,
162
						Messages.getText("new_layer_not_store_name"),
163
						Messages.getText("new_layer"),
164
						JOptionPane.WARNING_MESSAGE);
165
				return;
166
			}
167
			if (getService().getNewStoreParameters() == null) {
168
				JOptionPane
169
				.showMessageDialog(
170
						null,
171
						Messages.getText("new_layer_parameters_missing"),
172
						Messages.getText("new_layer"),
173
						JOptionPane.WARNING_MESSAGE);
174
				return;
175
			}
176
			getService().addLayerToView(getAddLayerToView());
177
			try {
178
				getService().createLayer();
179
			} catch (NewLayerServiceException e) {
180
				LOG.info("Cannot create the new layer", e);
181
				JOptionPane
182
				.showMessageDialog(
183
						null,
184
						Messages.getText("cant_create_new_layer") + "\n" + e.getMessageStack(),
185
						Messages.getText("new_layer"),
186
						JOptionPane.ERROR_MESSAGE);
187
				return;
188
			}
189
			
190
			try {
191
				getService().loadLayer();
192
			} catch (NewLayerServiceException e) {
193
				JOptionPane
194
				.showMessageDialog(
195
						null,
196
						"The new layer has been succesfully created but can't load the new layer.\n Try load it yourshelf, please.",
197
						"Can't create a new layer",
198
						JOptionPane.WARNING_MESSAGE);
199
			}
200
			setVisible(false);
201
			return;
202
		}
203

  
204
	}
205

  
206
	private class MyCancelAction extends CancelAction {
207

  
208
		public MyCancelAction(DefaultJWizardComponents wizardComponents) {
209
			super(wizardComponents);
210
		}
211

  
212
		public void performAction() {
213
			setVisible(false);
214
		}
215

  
216
	}
217
}
tags/v2_0_0_Build_2050/libraries/org.gvsig.newlayer/org.gvsig.newlayer.lib/org.gvsig.newlayer.lib.impl/src/main/java/org/gvsig/newlayer/impl/FeatureTypePanel.java
1
package org.gvsig.newlayer.impl;
2

  
3
import java.awt.BorderLayout;
4
import java.awt.Component;
5
import java.awt.GridBagConstraints;
6
import java.awt.GridBagLayout;
7
import java.awt.Insets;
8
import java.awt.event.ActionEvent;
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff