modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/BundleTopView.java
| 8 +++--
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java
| 16 ++++++----
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeView.java
| 4 +-
3 files changed, 18 insertions(+), 10 deletions(-)
New commits:
commit a87495b17c10e016084ef82af52959f4a4077a91
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Mon Dec 20 16:52:09 2010 -0500
don't show the deployment tree nodes if the user doesn't have permissions to
see them
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/BundleTopView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/BundleTopView.java
index fd0bbe7..b66a340 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/BundleTopView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/BundleTopView.java
@@ -71,6 +71,10 @@ public class BundleTopView extends LocatableHLayout implements
BookmarkableView
public void onPermissionsLoaded(Set<Permission> permissions) {
// if we haven't done it yet, build the view components
if (bundleTreeView == null) {
+ boolean canManageInventory = permissions != null
+ && permissions.contains(Permission.MANAGE_INVENTORY);
+ boolean canManageBundles = permissions != null &&
permissions.contains(Permission.MANAGE_BUNDLE);
+
SectionStack sectionStack = new
LocatableSectionStack(getLocatorId());
sectionStack.setShowResizeBar(true);
sectionStack.setVisibilityMode(VisibilityMode.MULTIPLE);
@@ -78,12 +82,12 @@ public class BundleTopView extends LocatableHLayout implements
BookmarkableView
sectionStack.setHeight100();
SectionStackSection bundlesSection = new
SectionStackSection(MSG.view_bundle_bundles());
- bundleTreeView = new
BundleTreeView(extendLocatorId("BundleTree"));
+ bundleTreeView = new
BundleTreeView(extendLocatorId("BundleTree"), canManageBundles);
bundlesSection.addItem(bundleTreeView);
sectionStack.addSection(bundlesSection);
// we only show repositories if the user has the global
manage_inventory perms since that is required
- if (permissions != null &&
permissions.contains(Permission.MANAGE_INVENTORY)) {
+ if (canManageInventory) {
SectionStackSection repositoriesSection = new
SectionStackSection(MSG
.common_title_repositories());
ContentRepositoryTreeView repoTree = new
ContentRepositoryTreeView(extendLocatorId("RepoTree"));
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java
index dadace4..61b29ce 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java
@@ -56,9 +56,11 @@ import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource;
public class BundleTreeDataSource extends RPCDataSource {
private BundleGWTServiceAsync bundleService = GWTServiceLookup.getBundleService();
+ private final boolean canManageBundles;
- public BundleTreeDataSource() {
+ public BundleTreeDataSource(boolean canManageBundles) {
super();
+ this.canManageBundles = canManageBundles;
List<DataSourceField> fields = addDataSourceFields();
addFields(fields);
}
@@ -207,12 +209,14 @@ public class BundleTreeDataSource extends RPCDataSource {
deploymentsNode.setName(MSG.view_bundle_destinations());
records.add(deploymentsNode);
} else if (item instanceof BundleDestination) {
- BundleDestination dest = (BundleDestination) item;
+ if (canManageBundles) {
+ BundleDestination dest = (BundleDestination) item;
- // each destination has 0, 1 or more deployments
- if (dest.getDeployments() != null) {
- for (BundleDeployment deploy : dest.getDeployments()) {
- records.add(copyValuesForKnownBundle(deploy, bundleId));
+ // each destination has 0, 1 or more deployments
+ if (dest.getDeployments() != null) {
+ for (BundleDeployment deploy : dest.getDeployments()) {
+ records.add(copyValuesForKnownBundle(deploy, bundleId));
+ }
}
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeView.java
index 272841f..d692d60 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeView.java
@@ -40,7 +40,7 @@ import
org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableTreeGrid;
*/
public class BundleTreeView extends LocatableTreeGrid {
- public BundleTreeView(String locatorId) {
+ public BundleTreeView(String locatorId, boolean canManageBundles) {
super(locatorId);
setWidth100();
setHeight100();
@@ -52,7 +52,7 @@ public class BundleTreeView extends LocatableTreeGrid {
setSortField("name");
setShowHeader(false);
- setDataSource(new BundleTreeDataSource());
+ setDataSource(new BundleTreeDataSource(canManageBundles));
addNodeClickHandler(new NodeClickHandler() {
public void onNodeClick(NodeClickEvent event) {
Show replies by date