BZ1032192 - AlertCondition composite queries, query each column

Hibernate would return an empty entity and consequently lead to N+1 selects.

The code is ugly, unfortunately.

Adding tests for these queries
BZ1032192 - AlertCondition intentional API changes

Adding intentional API changes as well
[BZ 1069547] Support for API-based bundle handlers

This is to support new type of dedicated bundle handlers able to do more
than just file-system modifications. In order to enable them to e.g.
connect to some remote endpoint, a more complex configuration data needs
to be passed over.

This creates coupling between the bundle destination definition and the
handler that is able to deploy to such destinations (because it needs to be
able to use the configuration offered by the destination definition) but
that is unavoidable given the specific things the handlers would be doing.

* The resource types can use the new "destination-definition" tag under
bundle target to define new type of destinations that can use
a "connection string" expression + can pass all or parts of resource or
plugin configs or traits to the bundle handler.

* The agent-side bundle handlers have access to the bundle deployment
configuration even in the purge scenario. This is to support the more
complex bundle handlers needing the config to better identify the bundle
deployment.

* The deploy directory is no longer a required argument when creating a
bundle destination. This is because for the API based bundle handlers,
such configuration property might not make any sense and would only create
confusion on the user side.

* It is no longer required for the server bundle plugins to come up with
the full list of the required files upon reading the recipe alone.
The bundle plugins can therefore choose whether they support piece-wise
upload of the bundle version or only support uploading a full bundle
distribution file.
[BZ 1069547] Wildfly patching by various means

* Bundles - using a dedicated bundle type. This enables us to understand
the patch zip file as our bundle without any RHQ specific recipe.
We can supply various parameters to patch application process but although
revert is supported, it cannot be configured by any parameters as one can
do over Wfly's CLI.

* Content - patches appear as packages of the AS7 standalone server.
They are discoverable and can be installed from repositories (without any
possibility of customizing the install process). Delete (i.e. rollback)
is supported, again without configuration.

* Rollback through operation - in case user would need special behavior
on rollback, they can use a dedicated operation on the AS7 standalone
server resource.

* Bundle handover - patches can be installed using the bundle handover
facility, too, using the "patch" action. This is configurable using
handover parameters and supports all the parameters available in Wfly's
CLI.
[BZ 1069547] Fixes

* typo in CliExecutor.executeCliCommand preventing execution in
connected mode

* apply patches in disconnected mode when deploying through content
subsystem
[1118091] RHQ Agent resources are not being auto-clustered in resource group due to their unique resource keys
To enable good autoclustering of RHQ Agent resources across platforms the
agent resource keys must be the same.  In general each platform has at most
one imported 'RHQ Agent' child resource and it is named the same as the
platform (Actually the platform's resource key). In this case do not
incorporate the agent name into the resource key.  In that way we can have
a generic static reskey for the agents, across platforms, while still
maintaining unique agent names across all agents (an RHQ requirement).  In
the rare case that a platform has multiple agents deployed (typically a
perftest scenario, but sometimes a production scenario) at most one agent
will get assigned the static key, only the one whose name matches the
parent.  All others will get the *predictable* legacy keys we've used up to
this point.  So, in the vast majority of cases, we should see good
auto-clustering of the rhq agents.
[BZ1119652]  Webappp configuration - Config File field is mandatory.
Merge pull request #86 from rhq-project/jshaughn/1118091

[1118091] RHQ Agent resources are not being auto-clustered in resource group due to their unique resource keys
BZ 1107338 - show all bundle files in the list
[BZ 1095000] Don't try to guess web connector's max connections.
BZ 1121975 - the 'sid' parameter is required. Mark it as such in docs.
[BZ 1069547] Removing support for patches from the content subsystem

This is to not overload the user with overlapping yet incompatible
choices for doing the same thing.

After discussion, we decided to keep the support for patching in the
bundle subsystem and drop it from the content subsystem.

This also means we need to drop the specialized rollback operation
because using that we could bring RHQ bundles into an inconsistent
state.
Bug 1074632 - RFE: Manage storage node snapshots

Added "Take Snapshot" operation to StorageNode resource. This operation
takes several other parameters and it can either move or delete older
snapshots. Basically it allows to
 - keep N latest snapshots and move/delete older ones
 - keep snapshots not older than N days and move/delete the older ones
[BZ 1095000] Fix test failures.
Merge 'origin/master' into bug/1069547
[749368] add @since Javadoc tags to our public APIs
Went through our intentional-changes files and added  agfew missing @since
tags that seemed maybe useful.  I had previously updated the server's
SLSB remote API, just added 4.12 for that.
[BZ 1069547] Removing support code for rollback operation.

The operation has been removed from the descriptor in the previous commits
but I failed to also remove the backing code for its execution.
[BZ 1069547] Fixing the wrong schemaSpec number.

This comes from a wrongly resolved conflict in the db-upgrade.xml.
Merge pull request #95 from lzoubek/bugs/1074632

Bug 1074632 - RFE: Manage storage node snapshots
Bug 1115146 - Purge (delete) data using smaller batches

Introduced JDBCPurgeTemplate

Update purge process for:
* availabilities
* traits
* events
* calltime data values
* alerts (and notif log and condition log)
* OOB

Batch size:
* is shared across implementation of the template
* is configurable through a sys prop
* value is unbounded
* defaults to 3000