Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.newlayer / org.gvsig.newlayer.prov / org.gvsig.newlayer.prov.jdbc / src / main / java / org / gvsig / newlayer / prov / jdbc / panels / PermissionsPanel.java @ 45564

History | View | Annotate | Download (8.82 KB)

1

    
2
package org.gvsig.newlayer.prov.jdbc.panels;
3

    
4
import java.awt.event.ActionEvent;
5
import java.awt.event.ActionListener;
6
import javax.swing.JComponent;
7
import org.apache.commons.lang3.StringUtils;
8
import org.gvsig.newlayer.NewLayerProviderPanel;
9
import org.gvsig.newlayer.NewLayerWizard;
10
import org.gvsig.newlayer.prov.jdbc.NewLayerJDBCProviderParameters;
11
import org.gvsig.newlayer.spi.NewLayerPanelValidationException;
12
import org.gvsig.tools.ToolsLocator;
13
import org.gvsig.tools.i18n.I18nManager;
14

    
15

    
16
public class PermissionsPanel 
17
        extends PermissionsPanelLayout 
18
        implements NewLayerProviderPanel 
19
    {
20

    
21
    private final NewLayerJDBCProviderParameters parameters;
22
    private final NewLayerWizard wizard;
23

    
24
    public PermissionsPanel(NewLayerWizard wizard, NewLayerJDBCProviderParameters parameters) {
25
        this.parameters = parameters;
26
        this.wizard = wizard;
27
        initComponents();
28
    }
29

    
30
    private void initComponents() {
31
        ActionListener listener = (ActionEvent ae) -> {
32
            doUpdateState();
33
        };
34
        this.chkAll.addActionListener(listener);
35
        this.chkSelect.addActionListener(listener);
36
        this.chkUpdate.addActionListener(listener);
37
        this.chkInsert.addActionListener(listener);
38
        this.chkDelete.addActionListener(listener);
39
        this.chkTruncate.addActionListener(listener);
40
        this.chkTrigger.addActionListener(listener);
41
        this.chkReference.addActionListener(listener);
42
        this.translate();
43
    }
44
    
45
    private void translate() {
46
        I18nManager i18nManager = ToolsLocator.getI18nManager();
47
        
48
        this.lblHeader.setText("<html>"+i18nManager.getTranslation("_Permissions_header")+"</html>");
49
        this.chkAll.setText(i18nManager.getTranslation("_All"));
50
        
51
        // Nota:
52
        // No traducimos los nombres de los permisos ya que lo normal es que si
53
        // alguien los precisa usar los conozca en ingles.
54
        
55
        this.lblRoleAll.setText(i18nManager.getTranslation("_role"));
56
        this.lblRoleSelect.setText(i18nManager.getTranslation("_role"));
57
        this.lblRoleUpdate.setText(i18nManager.getTranslation("_role"));
58
        this.lblRoleInsert.setText(i18nManager.getTranslation("_role"));
59
        this.lblRoleDelete.setText(i18nManager.getTranslation("_role"));
60
        this.lblRoleTruncate.setText(i18nManager.getTranslation("_role"));
61
        this.lblRoleTrigger.setText(i18nManager.getTranslation("_role"));
62
        this.lblRoleReference.setText(i18nManager.getTranslation("_role"));
63

    
64
    }
65
    
66
    protected void doUpdateState() {
67
        this.txtRoleAll.setEnabled(this.chkAll.isSelected());
68
        this.txtRoleSelect.setEnabled(this.chkSelect.isSelected());
69
        this.txtRoleUpdate.setEnabled(this.chkUpdate.isSelected());
70
        this.txtRoleInsert.setEnabled(this.chkInsert.isSelected());
71
        this.txtRoleDelete.setEnabled(this.chkDelete.isSelected());
72
        this.txtRoleTruncate.setEnabled(this.chkTruncate.isSelected());
73
        this.txtRoleTrigger.setEnabled(this.chkTrigger.isSelected());
74
        this.txtRoleReference.setEnabled(this.chkReference.isSelected());
75
    }
76

    
77
    @Override
78
    public String getIdPanel() {
79
        return this.getClass().getCanonicalName();
80
    }
81

    
82
    @Override
83
    public String getTitlePanel() {
84
        I18nManager i18nManager = ToolsLocator.getI18nManager();
85
        return i18nManager.getTranslation("_Permissions");    
86
    }
87

    
88
    @Override
89
    public void previousPanel() {
90

    
91
    }
92

    
93
    @Override
94
    public void nextPanel() {
95
        this.parameters.setAllRole(this.getAllRole());
96
        this.parameters.setDeleteRole(this.getDeleteRole());
97
        this.parameters.setInsertRole(this.getInsertRole());
98
        this.parameters.setReferenceRole(this.getReferenceRole());
99
        this.parameters.setSelectRole(this.getSelectRole());
100
        this.parameters.setTriggerRole(this.getTriggerRole());
101
        this.parameters.setTruncateRole(this.getTruncateRole());
102
        this.parameters.setUpdateRole(this.getUpdateRole());
103
    }
104

    
105
    @Override
106
    public boolean validatePanel() throws NewLayerPanelValidationException {
107
        return true;
108
    }    
109

    
110
    @Override
111
    public void enterPanel() {
112
        boolean enabled = true;
113
        this.chkAll.setEnabled(enabled);
114
        this.chkSelect.setEnabled(enabled);
115
        this.chkUpdate.setEnabled(enabled);
116
        this.chkInsert.setEnabled(enabled);
117
        this.chkDelete.setEnabled(enabled);
118
        this.chkTruncate.setEnabled(enabled);
119
        this.chkTrigger.setEnabled(enabled);
120
        this.chkReference.setEnabled(enabled);
121
        
122
        // set params
123
        if (this.parameters.getAllRole()!=null) {
124
            this.txtRoleAll.setText(this.parameters.getAllRole());
125
            this.chkAll.setSelected(true);
126
        } else {
127
            this.chkAll.setSelected(false);
128
        }
129
        
130
        if (this.parameters.getSelectRole()!=null) {
131
            this.txtRoleSelect.setText(this.parameters.getSelectRole());
132
            this.chkSelect.setSelected(true);
133
        } else {
134
            this.chkSelect.setSelected(false);
135
        }
136
        
137
        if (this.parameters.getUpdateRole()!=null) {
138
            this.txtRoleUpdate.setText(this.parameters.getUpdateRole());
139
            this.chkUpdate.setSelected(true);
140
        } else {
141
            this.chkUpdate.setSelected(false);
142
        }
143
        
144
        if (this.parameters.getInsertRole()!=null) {
145
            this.txtRoleInsert.setText(this.parameters.getInsertRole());
146
            this.chkInsert.setSelected(true);
147
        } else {
148
            this.chkInsert.setSelected(false);
149
        }
150
        
151
        if (this.parameters.getDeleteRole()!=null) {
152
            this.txtRoleDelete.setText(this.parameters.getDeleteRole());
153
            this.chkDelete.setSelected(true);
154
        } else {
155
            this.chkDelete.setSelected(false);
156
        }
157
        if (this.parameters.getTruncateRole()!=null) {
158
            this.txtRoleTruncate.setText(this.parameters.getTruncateRole());
159
            this.chkTruncate.setSelected(true);
160
        } else {
161
            this.chkTruncate.setSelected(false);
162
        }        
163
        if (this.parameters.getTriggerRole()!=null) {
164
            this.txtRoleTrigger.setText(this.parameters.getTriggerRole());
165
            this.chkTrigger.setSelected(true);
166
        } else {
167
            this.chkTrigger.setSelected(false);
168
        }
169
        if (this.parameters.getReferenceRole()!=null) {
170
            this.txtRoleReference.setText(this.parameters.getReferenceRole());
171
            this.chkReference.setSelected(true);
172
        } else {
173
            this.chkReference.setSelected(false);
174
        }
175
    }
176
    
177
    @Override
178
    public JComponent asJComponent() {
179
        return this;
180
    }
181

    
182
    public String getSelectRole() {
183
        if( !this.chkSelect.isSelected() ) {
184
            return null;
185
        } 
186
        String role = this.txtRoleSelect.getText();
187
        if( StringUtils.isBlank(role) ) {
188
            return null;
189
        }
190
        return role.trim();
191
    }
192
    
193
    public String getInsertRole() {
194
        if( !this.chkInsert.isSelected() ) {
195
            return null;
196
        } 
197
        String role = this.txtRoleInsert.getText();
198
        if( StringUtils.isBlank(role) ) {
199
            return null;
200
        }
201
        return role.trim();
202
    }
203
    
204
    public String getUpdateRole() {
205
        if( !this.chkUpdate.isSelected() ) {
206
            return null;
207
        } 
208
        String role = this.txtRoleUpdate.getText();
209
        if( StringUtils.isBlank(role) ) {
210
            return null;
211
        }
212
        return role.trim();
213
    }
214
    
215
    public String getDeleteRole() {
216
        if( !this.chkDelete.isSelected() ) {
217
            return null;
218
        } 
219
        String role = this.txtRoleDelete.getText();
220
        if( StringUtils.isBlank(role) ) {
221
            return null;
222
        }
223
        return role.trim();
224
    }
225
    
226
    public String getTruncateRole() {
227
        if( !this.chkTruncate.isSelected() ) {
228
            return null;
229
        } 
230
        String role = this.txtRoleTruncate.getText();
231
        if( StringUtils.isBlank(role) ) {
232
            return null;
233
        }
234
        return role.trim();
235
    }
236
    
237
    public String getReferenceRole() {
238
        if( !this.chkReference.isSelected() ) {
239
            return null;
240
        } 
241
        String role = this.txtRoleReference.getText();
242
        if( StringUtils.isBlank(role) ) {
243
            return null;
244
        }
245
        return role.trim();
246
    }
247
    
248
    public String getTriggerRole() {
249
        if( !this.chkTrigger.isSelected() ) {
250
            return null;
251
        } 
252
        String role = this.txtRoleTrigger.getText();
253
        if( StringUtils.isBlank(role) ) {
254
            return null;
255
        }
256
        return role.trim();
257
    }
258
    
259
    public String getAllRole() {
260
        if( !this.chkAll.isSelected() ) {
261
            return null;
262
        } 
263
        String role = this.txtRoleAll.getText();
264
        if( StringUtils.isBlank(role) ) {
265
            return null;
266
        }
267
        return role.trim();
268
    }
269
    
270
}