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 @ 43925

History | View | Annotate | Download (6.99 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 exitPanel() {
97
        this.parameters.setAllRole(this.getAllRole());
98
        this.parameters.setDeleteRole(this.getDeleteRole());
99
        this.parameters.setInsertRole(this.getInsertRole());
100
        this.parameters.setReferenceRole(this.getReferenceRole());
101
        this.parameters.setSelectRole(this.getSelectRole());
102
        this.parameters.setTriggerRole(this.getTriggerRole());
103
        this.parameters.setTruncateRole(this.getTruncateRole());
104
        this.parameters.setUpdateRole(this.getUpdateRole());
105
    }
106

    
107
    @Override
108
    public boolean validatePanel() throws ExportPanelValidationException {
109
        return true;
110
    }    
111

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

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