From d278f7ed9a01cff4a7e9ccce564ea9e03d4d0743 Mon Sep 17 00:00:00 2001 From: David McKnight Date: Fri, 21 Nov 2008 19:52:17 +0000 Subject: [PATCH] Li Ding (IBM) - [256135] Subsystem not restored in system view tree if subsystem configuration does not support filter --- .../rse/internal/ui/view/SystemViewPart.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemViewPart.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemViewPart.java index 21338da4b71..79a3f390b64 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemViewPart.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemViewPart.java @@ -35,6 +35,7 @@ * David McKnight (IBM) - [244807] System view does not handle restore from cache * David McKnight (IBM) - [247544] [performance] Restoring Selection on Restart can cause the UI to freeze * Kevin Doyle (IBM) - [242431] Register a new unique context menu id, so contributions can be made to all our views + * Li Ding (IBM) - [256135] Subsystem not restored in system view tree if subsystem configuration does not support filter *******************************************************************************/ package org.eclipse.rse.internal.ui.view; @@ -1320,6 +1321,12 @@ public class SystemViewPart break; // filter pool or filter (depends on showFilterPools) case 3 : + + if (!(subsystem.getSubSystemConfiguration().supportsFilters())) { + remoteObject = new RemoteObject(token, subsystem, null, null); + break; + } + if (showFilterPools) { if (subsystem != null) @@ -1364,6 +1371,12 @@ public class SystemViewPart break; // filter or filter string (depends on showFilterPools) or remote object (depends on showFilterStrings) case 4 : + + if (!(subsystem.getSubSystemConfiguration().supportsFilters())) { + remoteObject = new RemoteObject(token, subsystem, null, null); + break; + } + if (showFilterPools) // definitely a filter { index = token.indexOf('='); @@ -1400,6 +1413,12 @@ public class SystemViewPart break; // filter string (depends on showFilterStrings) or remote object case 5 : + + if (!(subsystem.getSubSystemConfiguration().supportsFilters())) { + remoteObject = new RemoteObject(token, subsystem, null, null); + break; + } + if (showFilterPools && showFilterStrings) // definitely a filter string { // at this point we know the parent filter reference as that was parsed in case 4 @@ -1420,6 +1439,12 @@ public class SystemViewPart break; default : // definitely a remote object + + if (!(subsystem.getSubSystemConfiguration().supportsFilters())) { + remoteObject = new RemoteObject(token, subsystem, null, null); + break; + } + if ((subsystem != null) && (fRef != null)) remoteObject = new RemoteObject(token, subsystem, fRef, fsRef); }