author | Stephen Talley <stephen.talley@oracle.com> |
Fri, 27 Apr 2012 00:52:26 -0400 | |
changeset 847 | a8e124b894b8 |
permissions | -rw-r--r-- |
847
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
1 |
/* |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
2 |
* CDDL HEADER START |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
3 |
* |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
4 |
* The contents of this file are subject to the terms of the |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
5 |
* Common Development and Distribution License (the "License"). |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
6 |
* You may not use this file except in compliance with the License. |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
7 |
* |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
8 |
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
9 |
* or http://www.opensolaris.org/os/licensing. |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
10 |
* See the License for the specific language governing permissions |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
11 |
* and limitations under the License. |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
12 |
* |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
13 |
* When distributing Covered Code, include this CDDL HEADER in each |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
14 |
* file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
15 |
* If applicable, add the following below this CDDL HEADER, with the |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
16 |
* fields enclosed by brackets "[]" replaced with your own identifying |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
17 |
* information: Portions Copyright [yyyy] [name of copyright owner] |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
18 |
* |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
19 |
* CDDL HEADER END |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
20 |
*/ |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
21 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
22 |
/* |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
23 |
* Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
24 |
*/ |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
25 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
26 |
package com.oracle.solaris.vp.panels.usermgr.client.swing; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
27 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
28 |
import javax.swing.*; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
29 |
import com.oracle.solaris.vp.util.misc.finder.Finder; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
30 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
31 |
/** |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
32 |
* Implements Advanced Settings for Roles |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
33 |
*/ |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
34 |
public class RolesSettings extends AdvancedSettings { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
35 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
36 |
private static final String NAME = |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
37 |
Finder.getString("usermgr.advanced.roles"); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
38 |
private static final Icon ICON = Finder.getIcon( |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
39 |
"images/roles-24.png"); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
40 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
41 |
private UserMgrPanelDescriptor panelDesc = null; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
42 |
private UserManagedObject userObj = null; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
43 |
private RolesPanel panel = null; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
44 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
45 |
public RolesSettings() { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
46 |
super(NAME, ICON); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
47 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
48 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
49 |
public void setUser(UserManagedObject userObj) { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
50 |
if (panel == null) { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
51 |
panel = new RolesPanel(panelDesc, userObj); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
52 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
53 |
panel.setUser(userObj); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
54 |
String roleStr = userObj.getRoles(); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
55 |
if (roleStr == null) { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
56 |
roleStr = ""; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
57 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
58 |
getProperty().update(roleStr, true); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
59 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
60 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
61 |
public void updateUser() { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
62 |
userObj = panel.updateUser(); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
63 |
String roleStr = userObj.getRoles(); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
64 |
if (roleStr == null) { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
65 |
roleStr = ""; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
66 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
67 |
getProperty().setValue(roleStr); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
68 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
69 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
70 |
public boolean isChanged() { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
71 |
if (userObj != null) { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
72 |
return (userObj.getRolesProperty().isChanged()); |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
73 |
} else { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
74 |
return false; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
75 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
76 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
77 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
78 |
public void init(UserMgrPanelDescriptor panelDesc) { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
79 |
this.panelDesc = panelDesc; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
80 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
81 |
|
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
82 |
public JPanel getPanel() { |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
83 |
return panel; |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
84 |
} |
a8e124b894b8
7095663 A GUI needed for User Management
Stephen Talley <stephen.talley@oracle.com>
parents:
diff
changeset
|
85 |
} |