HPCC-10821 Fix roxie job not shown on Activity page

The existing code goes through each cluster in environment settings and
find out the jobs of the cluster using /status/servers/server/@name=cluster's
'AgentQueue' in the environment settings. That does not work for roxie
cluster because @name='RoxieServer', not ='roxie.roxie'.

In this fix, the existing data collection code for cluster status and jobs is
divided into three steps. The step 1 focuses on collecting data about cluster
and cluster status. This step collects cluster information for each target
cluster list in environment settings and finds out whether cluster queue
is in status/servers or not. In the step 2, the code goes through each
target cluster (and other servers including ECLagent) list in status/servers
and collect job information (both running jobs and queued jobs) of the
cluster (and server). The data for roxie jobs will be included in this step.
The information collected in the step 1 and 2 will be added into
ActivityResponse by the code of step 3.

Signed-off-by: Kevin Wang kevin.wang@lexisnexis.com
HPCC-10821 Simplify readRunningWUsOnStatusServer()
HPCC-10821 Revise based on review comments

Replace the structure WsSMCStatusServerTypeName with an enum and
a parallel array of strings; Rename the getStatusServerName() to
getStatusServerTypeName(); Rename the foundQueueInStatusServer()
to findQueueInStatusServer(); Rename the getWUClusterInfo() to
findWUClusterInfo(); Fix a connection leak when calling querySDS;
Fix two possible leaks in case of exceptions; Move 7 lines of
code into a new function findTargetCluster() which is called
three times.
HPCC-10821 minor changes

Move WsSMCStatusServerTypeNames definition close to WsSMCStatusServerType;
Check WsSMCSSTterm before testing a WsSMCStatusServerType.
Merge pull request #5429 from wangkx/h10821

HPCC-10821 Fix roxie job not shown on Activity page

Reviewed-By: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>