Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.exportto / org.gvsig.exportto.swing / org.gvsig.exportto.swing.prov / org.gvsig.exportto.swing.prov.jdbc / src / main / java / org / gvsig / export / jdbc / swing / panels / PermissionsPanel.java @ 43968

History | View | Annotate | Download (7.04 KB)

1

    
2
package org.gvsig.export.jdbc.swing.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.export.jdbc.service.ExportJDBCParameters;
9
import org.gvsig.export.swing.JExportProcessPanel;
10
import org.gvsig.export.swing.spi.ExportPanel;
11
import org.gvsig.export.swing.spi.ExportPanelValidationException;
12
import org.gvsig.tools.ToolsLocator;
13
import org.gvsig.tools.i18n.I18nManager;
14

    
15

    
16
public class PermissionsPanel 
17
        extends PermissionsPanelLayout 
18
        implements ExportPanel 
19
    {
20
    private static final long serialVersionUID = -1930610404012797310L;
21

    
22
    private final ExportJDBCParameters parameters;
23
    private final JExportProcessPanel processPanel;
24

    
25
    public PermissionsPanel(
26
            JExportProcessPanel processPanel, 
27
            ExportJDBCParameters parameters
28
        ) {
29
        this.processPanel = processPanel;
30
        this.parameters = parameters;
31
        initComponents();
32
    }
33

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

    
71
    }
72
    
73
    protected void doUpdateState() {
74
        this.txtRoleAll.setEnabled(this.chkAll.isSelected());
75
        this.txtRoleSelect.setEnabled(this.chkSelect.isSelected());
76
        this.txtRoleUpdate.setEnabled(this.chkUpdate.isSelected());
77
        this.txtRoleInsert.setEnabled(this.chkInsert.isSelected());
78
        this.txtRoleDelete.setEnabled(this.chkDelete.isSelected());
79
        this.txtRoleTruncate.setEnabled(this.chkTruncate.isSelected());
80
        this.txtRoleTrigger.setEnabled(this.chkTrigger.isSelected());
81
        this.txtRoleReference.setEnabled(this.chkReference.isSelected());
82
    }
83

    
84
    @Override
85
    public String getIdPanel() {
86
        return this.getClass().getCanonicalName();
87
    }
88

    
89
    @Override
90
    public String getTitlePanel() {
91
        I18nManager i18nManager = ToolsLocator.getI18nManager();
92
        return i18nManager.getTranslation("_Permissions");    
93
    }
94

    
95
    @Override
96
    public void previousPanel() {
97

    
98
    }
99

    
100
    @Override
101
    public void nextPanel() {
102
        this.parameters.setAllRole(this.getAllRole());
103
        this.parameters.setDeleteRole(this.getDeleteRole());
104
        this.parameters.setInsertRole(this.getInsertRole());
105
        this.parameters.setReferenceRole(this.getReferenceRole());
106
        this.parameters.setSelectRole(this.getSelectRole());
107
        this.parameters.setTriggerRole(this.getTriggerRole());
108
        this.parameters.setTruncateRole(this.getTruncateRole());
109
        this.parameters.setUpdateRole(this.getUpdateRole());
110
    }
111

    
112
    @Override
113
    public boolean validatePanel() throws ExportPanelValidationException {
114
        return true;
115
    }    
116

    
117
    @Override
118
    public void enterPanel() {
119
        boolean enabled = this.parameters.canCreatetable();
120
        this.chkAll.setEnabled(enabled);
121
        this.chkSelect.setEnabled(enabled);
122
        this.chkUpdate.setEnabled(enabled);
123
        this.chkInsert.setEnabled(enabled);
124
        this.chkDelete.setEnabled(enabled);
125
        this.chkTruncate.setEnabled(enabled);
126
        this.chkTrigger.setEnabled(enabled);
127
        this.chkReference.setEnabled(enabled);
128
    }
129
    
130
    @Override
131
    public JComponent asJComponent() {
132
        return this;
133
    }
134

    
135
    public String getSelectRole() {
136
        if( !this.chkSelect.isSelected() ) {
137
            return null;
138
        } 
139
        String role = this.txtRoleSelect.getText();
140
        if( StringUtils.isBlank(role) ) {
141
            return null;
142
        }
143
        return role.trim();
144
    }
145
    
146
    public String getInsertRole() {
147
        if( !this.chkInsert.isSelected() ) {
148
            return null;
149
        } 
150
        String role = this.txtRoleInsert.getText();
151
        if( StringUtils.isBlank(role) ) {
152
            return null;
153
        }
154
        return role.trim();
155
    }
156
    
157
    public String getUpdateRole() {
158
        if( !this.chkUpdate.isSelected() ) {
159
            return null;
160
        } 
161
        String role = this.txtRoleUpdate.getText();
162
        if( StringUtils.isBlank(role) ) {
163
            return null;
164
        }
165
        return role.trim();
166
    }
167
    
168
    public String getDeleteRole() {
169
        if( !this.chkDelete.isSelected() ) {
170
            return null;
171
        } 
172
        String role = this.txtRoleDelete.getText();
173
        if( StringUtils.isBlank(role) ) {
174
            return null;
175
        }
176
        return role.trim();
177
    }
178
    
179
    public String getTruncateRole() {
180
        if( !this.chkTruncate.isSelected() ) {
181
            return null;
182
        } 
183
        String role = this.txtRoleTruncate.getText();
184
        if( StringUtils.isBlank(role) ) {
185
            return null;
186
        }
187
        return role.trim();
188
    }
189
    
190
    public String getReferenceRole() {
191
        if( !this.chkReference.isSelected() ) {
192
            return null;
193
        } 
194
        String role = this.txtRoleReference.getText();
195
        if( StringUtils.isBlank(role) ) {
196
            return null;
197
        }
198
        return role.trim();
199
    }
200
    
201
    public String getTriggerRole() {
202
        if( !this.chkTrigger.isSelected() ) {
203
            return null;
204
        } 
205
        String role = this.txtRoleTrigger.getText();
206
        if( StringUtils.isBlank(role) ) {
207
            return null;
208
        }
209
        return role.trim();
210
    }
211
    
212
    public String getAllRole() {
213
        if( !this.chkAll.isSelected() ) {
214
            return null;
215
        } 
216
        String role = this.txtRoleAll.getText();
217
        if( StringUtils.isBlank(role) ) {
218
            return null;
219
        }
220
        return role.trim();
221
    }
222
    
223
}