Fix gh-2478 wrong order of machines in preflight page

The machines in the preflight page should display in a
correct order. On a default one-node system, looking at
the thor cluster preflight page, the position in the
list of the thor slave and master seems to swap every
time when the page is updated. Two problems have been
found: 1. the machine list inside the preflight request
does not asks for the list to be processed in an order;
2. the preflight code uses a map to store the machine
list and the map re-orders the machines. Those problems
have been fixed now.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Change multimap to BoolHash and set the BoolHash using
Network Address, process name, process type and process
number which define unique preflight request for system
component.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Add Ubuntu Unity Launcher icon

This adds the unity launcher and a stock LN icon
to Ubuntu desktops. Left-click to go to local
ESP, right-click gives you the options to start,
stop, restart and see the status of the cluster.

You still have to add it to the unity bar yourself,
but searching for "hpcc" on the dash is enough to
find it, drag it and done.
gh-2715 FileActors example not extracting episode numbers

The version of FindWithin that was provided was not working
correctly if the end marker occurred before the start marker.

This really highlights some deficiencies and/or poor design
choices in the standard string library - they should be
addressed separately.

Fixes gh-2715.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Add ESP support for JSON formatted responses

Refactors ESP message serialization code.  Encapsulates format
specific code. Adds support for JSON responses.

For now, desired format is specified in the request url by adding
an extension to the method name at the end of the path.

i.e. for XML:
http://host:8010/MyService/MyMethod.xml?Wuid=W20120621-123710

for JSON:
http://host:8010/MyService/MyMethod.json?Wuid=W20120621-123710

Fixes gh-2741.

Signed-off-by: Anthony Fishbeck <Anthony.Fishbeck@lexisnexis.com>
LDAPConfig to filter out DC entries for DNS

When LDAPConfig queries the domain controller for the DC= baseDC adornments,
if DNS is enabled then those entries are returned in addition to the usual
one (dc=internal,dc=sds). In the past we have gotten lucky and the one
we wanted was returned first, but now that we have raised several controllers
we have found this isn't always the case. This fix filters out the DNS entries
and then selects the first one. It is possible as we go forward that there
may be additional ones returned, in which case we may need to externalize
the baseDC setting to configmanager.
into configmanager

Signed-off-by: William Whitehead <william.whitehead@lexisnexis.com>
Merge pull request #2504 from wangkx/gh2478

Fix gh-2478 wrong order of machines in preflight page

Reviewed-By: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #2732 from richardkchapman/findwithin

gh-2715 FileActors example not extracting episode numbers

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
Merge pull request #2786 from RussWhitehead/ldapDC

LDAPConfig to filter out DC entries for DNS

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
#2600 Firs phase SQL Join support
Support single join (inner or outer)
Join clause turns off index file use
EclEngine utilizes maps for quick lookup of corresponding table->index,
 and source dataset name
ECL code is more centralized, support for multiple files enabled.
HPCCPrepStatement - now contains cache for multiple index files.
HPCCResultSet - contains structure with all available columns (from all tables in query)
              - index turned off for join queries (temporary)
All expression fragments now contain parent table, and field name.

Signed-off-by: Rodrigo Pastrana <Rodrigo.Pastrana@lexisnexis.com>
Fix gh-2721 configmgr - ldap systemUser drops prepended backslash
  Add additional backslash ('\\') for javascript to properly display backslash

Signed-off-by: Gleb Aronsky <gleb.aronsky@lexisnexis.com>
Re-Enable unittests

Re-enabling the unit test infrastructure, adding new tests
for URI and linking existing tests into it. Some other tests
are not yet linked (aren't cppunit or aren't in a shared lib)
and will be done in the furure.

There is a good documentation on how to extend, and about each
part of the infrastructure. The remote tests are also a good
example on how to create more API/TDD unit tests in the future.
Conditional URI test execution
Comment typos
Merge pull request #2791 from rengolin/warnings

Fix Clang errors

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #2801 from rengolin/unittests

Re-Enable unittests

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #2811 from garonsky/issue-2721_ldap_system_user_drops_backslash

Fix gh-2721 configmgr - ldap systemUser drops prepended backslash

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #2713 from rengolin/launcher

Add Ubuntu Unity Launcher icon

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Add ifdef wrapper for CppUnit
gh-2390 rollup matching transform result, not left

Consquently, a match could occur, despite neighbouring rows mismatching.
If the matching key is changed in the transform and the result matches the
next row, but not the original previous row, the rollup continued.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>