[BZ1119652]  Webappp configuration - Config File field is mandatory.
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
[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.
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
[1119262 jon3-7] EAP6 drifts exclude pattern not working for windows case
The issue here is that the drift template defines the plugin descriptor
and in this case, the associated excludes filter: pattern="*_history/**/*".
It can only be predefined in one format, and the plugin naturally uses
linux-style forward slashes for the directory separator.

But on Windows that is the wrong separator.

The solution is to convert to the native separator slash internally at
"detection-time", regardless of the slashing used in the pattern.  This is,
I think, in-line with ant file-pattern approach we are using.

Also,
-- added new FileUtil.useNativeSlash(String path)
Bug 1122514 - Query Resource only available in postgres Plugin

Added to the MySQL and Oracle plugins

Tested on Oracle XE and MariaDB
Bug 1115146 - Purge (delete) data using smaller batches

Fixed a mistake on Log type
[1119781] runtime name provided for deployment child creation overrides application name and path
Use the deploymentName as appropriate, the runtimeName should be an attribute
on the deployment and can be the same on multiple deployments, the
deploymentName must be unique among deployments.

-- incidental: several logging auto-formatting changes.
Bug 1115725 - Operation history continues to grow unbound with no easy way to purge old history

Fix an issue on Oracle, no ID conversion needed, Hibernate does it

Also, some code cleanup
Bug 1050014 - Cannot deploy bundle to EAP domain mode

Deployment node must be created with the filename, not the runtime name

See also Bug 1119781 - runtime name provided for deployment child creation overrides application name and path
itests-2: fix org.rhq.enterprise.server.alert.GroupAlertDefinitionManagerBeanTest.testBug738799

Criteria filters on Oracle cannot be filled with more than 1000 elements
Bug 1122047 - If 'Accept' header field is not explicitly specified, server
responds with empty body upon REST query metric/data/{scheduleId}/raw

in case accept header does not specify media type, we fallback to JSON.
Merge pull request #93 from jfclere/master

[BZ1119652]  Webappp configuration - Config File field is mandatory.
[1118394] deployment of new war from repo content fails
This is not a fix for the reported issue, which actually seems to not be a
bug.  This is a fix to ensure failed package installs persist the error
messageto the history record in the DB. And to provide a more useful
log message in the agent log.
[801432, 807465] Related Issue to these BZs
Uninventory triggered our "assert-style" debug logging indicating that we
were working with HashSet for child resources when we expected to be using
a safer Set impl (wrt preventing ConcurrentModoficationException). There
were a few issues in play:
- When loading persisted resources from disk convert childResources to
  CopyOnWriteArraySet if necessary.  This repairs resources persisted with
  the wrong Set impl.
- Eliminate some potential concurrent modification danger (or, at a minimum,
- Fix a couple of other places where we weren't using CopyOnWriteArraySet
- Fix Resource entity to ensure that when customChildResourcesCollection=true
  that the childResources Set is truly protected. It was here that we were
  losing the proper Set impl.
  some unnecessary work) by only calling deactivateResource() on the root
  resource. It recursively deactivates the subtree, so no need to then call
  it on every node in the subtree.
- Fix our "assert-logging" conditional, which despite finding this issue was
  actually looking for the wrong set impl. It had not been updated when we
  moved to CopyOnWriteArraySet.
StorageNodeComponentItest - output more details when assertion fails
Fix AlertConditionTest timing issues for rhq-master-ora build

Introduced org.rhq.test.AssertUtils.timedAssertion

Also, some code cleanup
patterfly: fixing typo in image name (_over -> _Over); increasing the size of icons for availability; decreasing the size of icons for event severities; removing unused images
pf: simple bash script for lightening all the black icons