NEXUS-6232: Prevent concurrent execution of createrepo on same data

Added exclusive lock around MD generation (invocation of createrepo)
that assures that on same repository instance only one
Generate Yum Metadata task will run, while the others will remain
blocked waiting for the lock.
Merge remote-tracking branch 'origin/master' into NEXUS-6232-concurrent-createrepo
NEXUS-6232: Adjust mocks in UTs

As created mocks lacked some responses.
NEXUS-6232: Adjusting mocks
Merge pull request #334 from sonatype/NEXUS-6232-concurrent-createrepo

NEXUS-6232: Prevent concurrent execution of createrepo on same data
NEXUS-6258: AR interferes with NFC

As request context is reused, the request rejected from
AR will disable NFC for all subsequent proxy participants.
Merge pull request #340 from sonatype/NEXUS-6258-AR-kills-nfc

NEXUS-6258: AR interferes with NFC
NEXUS-6249: Wrong checksums cached for Maven artifact

When they get updated. While this is not a problem
in 90% of cases (as releases nor unique snapshots never
get updated), the non-unique snapshots and maven metadata
files, once cached, their initial SHA1/MD5 remote
hashes were NEVER updated.
NEXUS-6249: Added UT verifying change

The UT simply forces Nexus to re-fetch the same file
(content or layout does not matter, it only matters it
happens in a Maven repository) and asserts that as
many times we change "version" of the content, the
retrieved digest will change too.

Before fixing this issue, Nexus would stick to the
remote hash retrieved the very first time.
NEXUS-6250: index rendering with query params

Query params broke the links that were rendered when a
collection index page was rendered.
Merge pull request #341 from sonatype/NEXUS-6249-m2-proxy-checksum

NEXUS-6249: Wrong checksums cached for Maven artifact
Merge remote-tracking branch 'origin/master' into NEXUS-6250-index-rendering-qp
NEXUS-6250: Wrong method used.

To get the URL client used to retrieve the parent collection,
who's index page is being rendered.
NEXUS-6245: Describe output fix.

Simple hack-ish solution.
Update VelocityContentRenderer.java

add comment
add comments explaining the usage or url
Merge pull request #343 from sonatype/NEXUS-6250-index-rendering-qp

NEXUS-6250: index rendering with query params
Update VelocityContentRenderer.java

NEXUS-6245: Add marker about truncated QPs
Merge pull request #345 from sonatype/NEXUS-6245-describe

NEXUS-6245: Describe output fix.
only set itemContext and itemAttributes if item != null