Move the responsibility to check for project ownership to ProjectControl

The class ProjectControl is the level of abstraction that deals with a
project in the context of a user. Hence the ownership check is more
suitable here.

Change-Id: I60b0cf9cc6c797dfa4ea8070fff6ffc0ac8526af
Add regression test for UniversalGroupBackend

Establish a safety net for extending GroupBackend in a follow-up change.

Change-Id: I14328d49497ba8c7a1e595055da2f8aa2d0b5d00
Add bucklet based build to GWT plugin archetype

If a GWT plugin project is generated with the Maven plugin GWT
archetype it should immediately be buildable with Buck, because Buck
is our preferred build tool for building plugins.

Change-Id: I837a48cb02deedd2ca29aeb2adeb563a26b0e196
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Add REST APIs to list tags and get a specified tag of a project

GET on /projects/project-name/tags/ lists the tags of that project.

GET on /projects/project-name/tags/tag-name gets information about
that tag.

Change-Id: Icfff2647045b937b6ffc199fae1a3ee5565aa76a
Include new changes in total count of batch pushed changes

Take into account the number of new changes when calculating the number
of changes pushed in a batch to check if it exceeds the max limit.

Change-Id: I4c9c2c34100b0b16b91d5d4ba58e33c6d9b91d00
Merge "Include new changes in total count of batch pushed changes"
Merge "Move the responsibility to check for project ownership to ProjectControl"
Merge "Add regression test for UniversalGroupBackend"
Fix large comments on Chrome for Android

Chrome for Android has Font Boosting, so when you open a Gerrit review
on it the text for comments ends up quite large.

Added CSS fix for this as suggested on the related webkit bug:

https://bugs.webkit.org/show_bug.cgi?id=FontBoosting

Bug: Issue 2992
Change-Id: Icfc0241ba7b5ec01081811802e9e60ce30310742
Fix project list screen when no weblinks are provided

List project screen was no displaying projects when no weblinks are
provided because of an error in Javascript.

Check if weblinks is not null before trying to display each weblink.

Change-Id: I0533c434b487f9f1ff31bba2a5f3b1244c7f16f8
Remove unused import

Change-Id: I9418663e8934b4cb87037a31f9bb1f64dbc6d66b
Turn on many more Eclipse warnings, and fix them

 - Warn on empty statements, e.g. "for (;;);". These may be
   typos and are easily replaced by "for (;;) {}" which is more
   explicit.
 - Warn on field hiding. This allows cleanup of many acceptance test
   members, at the cost of a couple of renames and the occasional
   suppression (when the field is in a public nested enum that shadows
   a public constant).
 - Warn on unnecessary casts.
 - Warn on unused declared thrown exceptions. In addition to reducing
   method signature length and number of imports, this also eliminated
   some impossible catch blocks.
 - Warn on missing @Override annotations.
 - Warn on unused parameters. This is likely the most controversial,
   as a few relatively common patterns require unused parameters in a
   way that Eclipse can't ignore. However, it also resulted in cleanup
   of a lot of unnecessary injections and method parameters, so I
   think the cost was worth it.

Change-Id: I7224be8b1c798613a127c88507e8cce400679e5d
Fix Eclipse warnings in plugins

Change-Id: I76831322f3dda1989e3913bb321ffce193a0d0e9
Suppress unused argument warnings in unavoidable cases

It would be nice if Eclipse were smart enough to ignore unused
argument warnings on @UiHandler and @Option methods, but alas it does
not. Suppressing these is ugly, but based on all the cleanup in the
previous commit, the benefit outweighs the cost.

Change-Id: I743917787ffb53be034eee3af2c525652fc18cb0
Reduce DB access in ReceiveCommits.autoCloseChanges()

ReceiveCommits.openChangesByKey()'s local variable 'byKey' is a
Map<Change.Key, Change.Id> type, replace the Change.Id with Change
to reduce DB access.

Change-Id: Iaafebe75dfe4aecf2c0587352d394ca1e4f8de3c
Update EncryptedContactStore to not use deprecated/removed methods

The PGPEncryptedDataGenerator constructor and addMethod calls used in
EncryptedContactStore were deprecated in version 1.49 and removed in
version 1.51 of Bouncycastle.

Update the calls to use the recommended non-deprecated versions.

Change-Id: I134fd8c0b4538ae23a2c17dd0a632ddaff28aa3d
Merge changes from topic 'warnings'

* changes:
  Suppress unused argument warnings in unavoidable cases
  Fix Eclipse warnings in plugins
  Turn on many more Eclipse warnings, and fix them
Update replication plugin to correct revision

I7683132 updated the plugins to revisions with Eclipse warning
fixes, but for the replication plugin the change was submitted
with a merge and the revision at the head of master is different.

Change-Id: I59773bdc96ea4e13562c9de5857b7df521fd49d1
Fix unused exception throws in EncryptedContactStore

Change-Id: I7e3f13699a55e457c498010b9806b60dbf163ad4
Remove unnecessary suppression of cast warning in H2CacheFactory

Change-Id: I1d2ef58029d9c439aa0cf0f195d66a4ed63ff40e