Revision 24134

View differences:

branches/v2_0_0_prep/libraries/libFMap_data/src/org/gvsig/fmap/data/feature/impl/commands/implementation/FeatureTypeDeleteCommand.java
1

  
2
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
3
 *
4
 * Copyright (C) 2005 IVER T.I. and Generalitat Valenciana.
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., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
19
 *
20
 * For more information, contact:
21
 *
22
 *  Generalitat Valenciana
23
 *   Conselleria d'Infraestructures i Transport
24
 *   Av. Blasco Ib??ez, 50
25
 *   46010 VALENCIA
26
 *   SPAIN
27
 *
28
 *      +34 963862235
29
 *   gvsig@gva.es
30
 *      www.gvsig.gva.es
31
 *
32
 *    or
33
 *
34
 *   IVER T.I. S.A
35
 *   Salamanca 50
36
 *   46005 Valencia
37
 *   Spain
38
 *
39
 *   +34 963163400
40
 *   dac@iver.es
41
 */
42

  
43
package org.gvsig.fmap.data.feature.impl.commands.implementation;
44

  
45
import org.gvsig.fmap.data.feature.Command;
46
import org.gvsig.fmap.data.feature.Feature;
47
import org.gvsig.fmap.data.feature.FeatureType;
48
import org.gvsig.fmap.data.feature.impl.FeatureManager;
49
import org.gvsig.fmap.data.feature.impl.FeatureTypeManager;
50
import org.gvsig.fmap.data.feature.impl.SpatialManager;
51

  
52

  
53
/**
54
 * DOCUMENT ME!
55
 *
56
 * @author Vicente Caballero Navarro
57
 */
58
public class FeatureTypeDeleteCommand extends FeatureTypeCommand {
59
    public FeatureTypeDeleteCommand(FeatureTypeManager expansionManager,
60
    		FeatureType type) {
61
        super(expansionManager, type);
62

  
63
    }
64

  
65
    public FeatureTypeDeleteCommand(FeatureTypeManager expansionManager,
66
    		FeatureType type,
67
    		String description) {
68
        super(expansionManager, type, description);
69
    }
70

  
71
    /* (non-Javadoc)
72
     * @see org.gvsig.fmap.data.commands.Command#undo()
73
     */
74
    public void undo() {
75
        expansionManager.restore(type.getId());
76
    }
77

  
78
    /* (non-Javadoc)
79
     * @see org.gvsig.fmap.data.commands.Command#redo()
80
     */
81
    public void redo() {
82
        execute();
83
    }
84

  
85
    /* (non-Javadoc)
86
     * @see org.gvsig.fmap.data.commands.Command#getType()
87
     */
88
    public String getType() {
89
        return Command.DELETE;
90
    }
91

  
92
    /* (non-Javadoc)
93
     * @see org.gvsig.fmap.data.commands.Command#execute()
94
     */
95
    public void execute() {
96
        expansionManager.delete(type.getId());
97
    }
98
}
branches/v2_0_0_prep/libraries/libFMap_data/src/org/gvsig/fmap/data/feature/impl/commands/implementation/FeatureTypeUpdateCommand.java
1

  
2
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
3
 *
4
 * Copyright (C) 2005 IVER T.I. and Generalitat Valenciana.
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., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
19
 *
20
 * For more information, contact:
21
 *
22
 *  Generalitat Valenciana
23
 *   Conselleria d'Infraestructures i Transport
24
 *   Av. Blasco Ib??ez, 50
25
 *   46010 VALENCIA
26
 *   SPAIN
27
 *
28
 *      +34 963862235
29
 *   gvsig@gva.es
30
 *      www.gvsig.gva.es
31
 *
32
 *    or
33
 *
34
 *   IVER T.I. S.A
35
 *   Salamanca 50
36
 *   46005 Valencia
37
 *   Spain
38
 *
39
 *   +34 963163400
40
 *   dac@iver.es
41
 */
42

  
43
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
44
 *
45
 * Copyright (C) 2005 IVER T.I. and Generalitat Valenciana.
46
 *
47
 * This program is free software; you can redistribute it and/or
48
 * modify it under the terms of the GNU General Public License
49
 * as published by the Free Software Foundation; either version 2
50
 * of the License, or (at your option) any later version.
51
 *
52
 * This program is distributed in the hope that it will be useful,
53
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
54
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
55
 * GNU General Public License for more details.
56
 *
57
 * You should have received a copy of the GNU General Public License
58
 * along with this program; if not, write to the Free Software
59
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
60
 *
61
 * For more information, contact:
62
 *
63
 *  Generalitat Valenciana
64
 *   Conselleria d'Infraestructures i Transport
65
 *   Av. Blasco Ib??ez, 50
66
 *   46010 VALENCIA
67
 *   SPAIN
68
 *
69
 *      +34 963862235
70
 *   gvsig@gva.es
71
 *      www.gvsig.gva.es
72
 *
73
 *    or
74
 *
75
 *   IVER T.I. S.A
76
 *   Salamanca 50
77
 *   46005 Valencia
78
 *   Spain
79
 *
80
 *   +34 963163400
81
 *   dac@iver.es
82
 */
83
package org.gvsig.fmap.data.feature.impl.commands.implementation;
84

  
85
import org.gvsig.fmap.data.feature.Command;
86
import org.gvsig.fmap.data.feature.Feature;
87
import org.gvsig.fmap.data.feature.FeatureType;
88
import org.gvsig.fmap.data.feature.impl.FeatureTypeManager;
89

  
90

  
91
/**
92
 * DOCUMENT ME!
93
 *
94
 * @author Vicente Caballero Navarro
95
 */
96
public class FeatureTypeUpdateCommand extends FeatureTypeCommand {
97
    private FeatureType oldType;
98
    private int position=-1;
99

  
100
    public FeatureTypeUpdateCommand(FeatureTypeManager expansionManager,
101
        FeatureType type, FeatureType oldType) {
102
        super(expansionManager, type);
103
        this.oldType = oldType;
104
    }
105

  
106
    public FeatureTypeUpdateCommand(FeatureTypeManager expansionManager,
107
        FeatureType type, FeatureType oldType, String description) {
108
        super(expansionManager, type, description);
109
        this.oldType = oldType;
110
    }
111

  
112
    /* (non-Javadoc)
113
    * @see org.gvsig.fmap.data.commands.Command#undo()
114
    */
115
    public void undo() {
116
//        if (expansionManager.contains(oldFeature.getReference())) {
117
//            expansionManager.deleteLastFeature(feature.getReference());
118
//        } else {
119
//            expansionManager.delete(type.getId());
120
//        }
121

  
122
        expansionManager.restore(oldType.getId(),position);
123
    }
124

  
125
    /* (non-Javadoc)
126
     * @see org.gvsig.fmap.data.commands.Command#redo()
127
     */
128
    public void redo() {
129
        execute();
130
    }
131

  
132
    /* (non-Javadoc)
133
    * @see org.gvsig.fmap.data.commands.Command#getType()
134
    */
135
    public String getType() {
136
        return Command.UPDATE;
137
    }
138

  
139
    /* (non-Javadoc)
140
     * @see org.gvsig.fmap.data.commands.Command#execute()
141
     */
142
    public void execute() {
143
        //		 Si la geometr?a no ha sido modificada
144
//        if (!expansionManager.contains(oldType.getId())) {
145
//        if (expansionManager.delete(oldType.getId())!=null){
146
//            expansionManager.add(type);
147
//        } else {
148
          position =  expansionManager.update(type, oldType);
149
//        }
150
    }
151

  
152
	public FeatureType getOldFeatureType() {
153
		return oldType;
154
	}
155
}
branches/v2_0_0_prep/libraries/libFMap_data/src/org/gvsig/fmap/data/feature/impl/commands/implementation/FeatureTypeInsertCommand.java
1

  
2
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
3
 *
4
 * Copyright (C) 2005 IVER T.I. and Generalitat Valenciana.
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., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
19
 *
20
 * For more information, contact:
21
 *
22
 *  Generalitat Valenciana
23
 *   Conselleria d'Infraestructures i Transport
24
 *   Av. Blasco Ib??ez, 50
25
 *   46010 VALENCIA
26
 *   SPAIN
27
 *
28
 *      +34 963862235
29
 *   gvsig@gva.es
30
 *      www.gvsig.gva.es
31
 *
32
 *    or
33
 *
34
 *   IVER T.I. S.A
35
 *   Salamanca 50
36
 *   46005 Valencia
37
 *   Spain
38
 *
39
 *   +34 963163400
40
 *   dac@iver.es
41
 */
42

  
43
package org.gvsig.fmap.data.feature.impl.commands.implementation;
44

  
45
import org.gvsig.fmap.data.feature.Command;
46
import org.gvsig.fmap.data.feature.FeatureType;
47
import org.gvsig.fmap.data.feature.impl.FeatureTypeManager;
48

  
49

  
50
/**
51
 * DOCUMENT ME!
52
 *
53
 * @author Vicente Caballero Navarro
54
 */
55
public class FeatureTypeInsertCommand extends FeatureTypeCommand {
56
    public FeatureTypeInsertCommand(FeatureTypeManager expansionManager,
57
        FeatureType type) {
58
        super(expansionManager, type);
59
    }
60

  
61
    public FeatureTypeInsertCommand(FeatureTypeManager expansionManager,
62
        FeatureType type,
63
        String description) {
64
        super(expansionManager, type, description);
65
    }
66

  
67
    /* (non-Javadoc)
68
     * @see org.gvsig.fmap.data.commands.Command#undo()
69
     */
70
    public void undo() {
71
        expansionManager.delete(type.getId());
72
    }
73

  
74
    /* (non-Javadoc)
75
     * @see org.gvsig.fmap.data.commands.Command#redo()
76
     */
77
    public void redo() {
78
        execute();
79
    }
80

  
81
    /* (non-Javadoc)
82
     * @see org.gvsig.fmap.data.commands.Command#getType()
83
     */
84
    public String getType() {
85
        return Command.INSERT;
86
    }
87

  
88
    /* (non-Javadoc)
89
     * @see org.gvsig.fmap.data.commands.Command#execute()
90
     */
91
    public void execute() {
92
        expansionManager.add(type);
93
    }
94
}

Also available in: Unified diff