10672 sharemgr should more judiciously use status text
authorStephen Talley <stephen.talley@sun.com>
Wed, 02 Sep 2009 16:34:56 -0400
changeset 352 e034a5f40cdc
parent 351 ae1c7ebd3edd
child 353 605818bdf538
10672 sharemgr should more judiciously use status text
usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/common/CommonManagedObject.java
usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/swing/MainControl.java
usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/swing/resources/Resources.properties
--- a/usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/common/CommonManagedObject.java	Wed Sep 02 12:11:36 2009 -0400
+++ b/usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/common/CommonManagedObject.java	Wed Sep 02 16:34:56 2009 -0400
@@ -68,33 +68,15 @@
 
     @Override
     public String getStatusText() {
-	Set<Protocol> protocols = getEnabledProtocols();
-
-	if (protocols.isEmpty()) {
-	    return Finder.getString("objects.status.noprotocols");
+	String status = getProtocolStatusText();
+	CommonManagedObject<?> parent = getParent();
+	if (parent != null) {
+	    String pStatus = parent.getProtocolStatusText();
+	    if (ObjectUtil.equals(status, pStatus)) {
+		status = null;
+	    }
 	}
-
-	List<String> list = new ArrayList<String>(protocols.size());
-
-	for (Protocol protocol : protocols) {
-	    String pName = protocol.getName();
-	    String fName = SharemgrUtil.getFriendlyProtocolName(pName, false);
-
-	    if (pName.equals(SharemgrMXBean.PROTOCOL_NFS)) {
-		NFSAccess access = getNFSAccess();
-		String resource = "objects.status.nfsaccess." +
-		    (access == null ? "none" : access.toString().toLowerCase());
-		fName = Finder.getString(resource, fName);
-	    }
-
-	    list.add(fName);
-	}
-
-	Collections.sort(list);
-
-	String delim = Finder.getString("objects.status.delim");
-
-	return TextUtil.join(delim, list);
+	return status;
     }
 
     //
@@ -230,6 +212,35 @@
      */
     public abstract CommonManagedObject<?> getParent();
 
+    public String getProtocolStatusText() {
+	Set<Protocol> protocols = getEnabledProtocols();
+
+	if (protocols.isEmpty()) {
+	    return Finder.getString("objects.status.noprotocols");
+	}
+
+	List<String> list = new ArrayList<String>(protocols.size());
+
+	for (Protocol protocol : protocols) {
+	    String pName = protocol.getName();
+	    String fName = SharemgrUtil.getFriendlyProtocolName(pName, false);
+
+	    if (pName.equals(SharemgrMXBean.PROTOCOL_NFS)) {
+		NFSAccess access = getNFSAccess();
+		String resource = "objects.status.nfsaccess." +
+		    (access == null ? "none" : access.toString().toLowerCase());
+		fName = Finder.getString(resource, fName);
+	    }
+
+	    list.add(fName);
+	}
+
+	Collections.sort(list);
+
+	String delim = Finder.getString("objects.status.delim");
+	return TextUtil.join(delim, list);
+    }
+
     /**
      * Gets the topmost ancestor in the inheritance hierarchy.
      */
--- a/usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/swing/MainControl.java	Wed Sep 02 12:11:36 2009 -0400
+++ b/usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/swing/MainControl.java	Wed Sep 02 16:34:56 2009 -0400
@@ -174,23 +174,7 @@
 	tree.setExpandsSelectedPaths(true);
 
 	SimpleCellRenderer renderer =
-	    new ManagedObjectCellRenderer<ManagedObject>() {
-		@Override
-		public String getText(Component comp,
-		    ManagedObject obj, boolean isSelected, boolean hasFocus) {
-
-		    String text = super.getText(comp, obj, isSelected,
-			hasFocus);
-
-		    if (obj instanceof GroupManagedObject) {
-			int size = obj.getChildren().size();
-			text = Finder.getString("tree.group.text." + size, text,
-			    size);
-		    }
-
-		    return text;
-		}
-	    };
+	    new ManagedObjectCellRenderer<ManagedObject>();
 	renderer.configureFor(tree);
 	tree.setCellRenderer(renderer);
 
--- a/usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/swing/resources/Resources.properties	Wed Sep 02 12:11:36 2009 -0400
+++ b/usr/src/java/vpanels/panels/sharemgr/org/opensolaris/os/vp/panels/sharemgr/client/swing/resources/Resources.properties	Wed Sep 02 16:34:56 2009 -0400
@@ -30,10 +30,6 @@
 
 objects.title = Groups and Shares:
 
-# Parameters: 0: name, 1: share count
-tree.group.text = {0} ({1} shares)
-tree.group.text.1 = {0} ({1} share)
-
 # Arguments:
 # 0: number of groups to delete
 # 1: first group to delete