Merge branch 'stable-3.4'
* stable-3.4:
Introduce Bearer Token Authentication
Remove authorisation from ProjectInitializationAction
Allow internal user to delete project in Pull Replication API in a primary node
Fix flaky test in Pull Replication plugin
FetchJob creation fails in replica when FetchAction is invoked with async=true
Remove authorisation from PullReplicationFilter
Use preemptive basic authentication in Pull Replication Plugin
Do not rely on magic numbers for parsing the URL
Do not use timer.getStartTime() when propating timers metrics
Add missing @Assisted when creating the metrics
Do not rely on System.nanoTime for E2E metrics
Reduce default exclude refs filter
Introduce the apply-objects REST-API for the whole '/meta' chain
Fix the processing of an empty HTML response body from REST-API
Fix issue with ref deletion and global-refdb
Fix issue with fetching all refs after project creation
Always fallback to fetch when ApplyObject REST-API fails
Log the reason why a ref object wasn't loaded by RevisionReader
Consider any HTTP 2xx response code from REST-API as success
Return NO_CONTENT when removing a ref through ApplyObject
Introduce E2E fetch REST-API metrics
Fix ApplyObjectIT.shouldApplyRefMetaObject test for apply object
Introduce E2E apply object REST-API metrics
Add missing @Override to parseRemotes
Add more logging for the apply object REST-API
Support ApplyObject of non-commit refs
Refactor FetchJob to an assisted injection factory
Release-Notes: skip
Change-Id: I5766e7cd973744c4244c07e9918094d73340f076