Adapt to gerrit API changes

Adapt the code to change API in: I53481e8231 and in I5f1d15e27.

Change-Id: Iec04915dae6f4516535e815e8d55518cac829f76
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/AddHashtagsStep.java b/src/main/java/com/googlesource/gerrit/plugins/importer/AddHashtagsStep.java
index 3e8de69..676c063 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/AddHashtagsStep.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/AddHashtagsStep.java
@@ -24,8 +24,8 @@
 import com.google.gerrit.server.CurrentUser;
 import com.google.gerrit.server.change.ChangeTriplet;
 import com.google.gerrit.server.change.SetHashtagsOp;
-import com.google.gerrit.server.git.BatchUpdate;
-import com.google.gerrit.server.git.UpdateException;
+import com.google.gerrit.server.update.BatchUpdate;
+import com.google.gerrit.server.update.UpdateException;
 import com.google.gerrit.server.project.ChangeControl;
 import com.google.gerrit.server.project.NoSuchChangeException;
 import com.google.gwtorm.server.OrmException;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/CopyProject.java b/src/main/java/com/googlesource/gerrit/plugins/importer/CopyProject.java
index 0992551..579d684 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/CopyProject.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/CopyProject.java
@@ -26,7 +26,7 @@
 import com.google.gerrit.server.CurrentUser;
 import com.google.gerrit.server.account.CapabilityControl;
 import com.google.gerrit.server.config.ConfigResource;
-import com.google.gerrit.server.git.UpdateException;
+import com.google.gerrit.server.update.UpdateException;
 import com.google.gerrit.server.project.NoSuchChangeException;
 import com.google.gerrit.server.project.ProjectResource;
 import com.google.gerrit.server.validators.ValidationException;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/ImportLog.java b/src/main/java/com/googlesource/gerrit/plugins/importer/ImportLog.java
index 8c6f27e..528a48e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/ImportLog.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/ImportLog.java
@@ -16,7 +16,9 @@
 
 import com.google.common.base.Throwables;
 import com.google.common.collect.HashMultimap;
+import com.google.common.collect.ListMultimap;
 import com.google.common.collect.Multimap;
+import com.google.common.collect.MultimapBuilder;
 import com.google.gerrit.audit.AuditEvent;
 import com.google.gerrit.audit.AuditService;
 import com.google.gerrit.common.TimeUtil;
@@ -107,7 +109,8 @@
 
   private void audit(IdentifiedUser user, long ts, Project.NameKey project,
       String from, Exception ex) {
-    Multimap<String, Object> params = HashMultimap.create();
+    ListMultimap<String, Object> params =
+        MultimapBuilder.hashKeys().arrayListValues().build();
     params.put("class", ImportLog.class);
     params.put("project", project.get());
     params.put("from", from);
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/ImportProject.java b/src/main/java/com/googlesource/gerrit/plugins/importer/ImportProject.java
index 83c9cb9..d291a2d 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/ImportProject.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/ImportProject.java
@@ -28,7 +28,7 @@
 import com.google.gerrit.server.CurrentUser;
 import com.google.gerrit.server.IdentifiedUser;
 import com.google.gerrit.server.config.ConfigResource;
-import com.google.gerrit.server.git.UpdateException;
+import com.google.gerrit.server.update.UpdateException;
 import com.google.gerrit.server.project.NoSuchChangeException;
 import com.google.gerrit.server.project.ProjectCache;
 import com.google.gerrit.server.project.ProjectState;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/InsertLinkToOriginalChangeStep.java b/src/main/java/com/googlesource/gerrit/plugins/importer/InsertLinkToOriginalChangeStep.java
index 27ead51..ba25273 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/InsertLinkToOriginalChangeStep.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/InsertLinkToOriginalChangeStep.java
@@ -102,7 +102,7 @@
     ChangeUpdate update = updateFactory.create(control(change, userId));
     ChangeMessage cmsg =
         new ChangeMessage(new ChangeMessage.Key(change.getId(),
-            ChangeUtil.messageUUID(db)), userId, TimeUtil.nowTs(),
+            ChangeUtil.messageUuid()), userId, TimeUtil.nowTs(),
             change.currentPatchSetId());
     cmsg.setMessage(message);
     cmUtil.addChangeMessage(db, update, cmsg);
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/ProjectCommand.java b/src/main/java/com/googlesource/gerrit/plugins/importer/ProjectCommand.java
index e449d36..5dbbaae 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/ProjectCommand.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/ProjectCommand.java
@@ -20,7 +20,7 @@
 import com.google.gerrit.extensions.restapi.RestApiException;
 import com.google.gerrit.reviewdb.client.Project;
 import com.google.gerrit.server.config.ConfigResource;
-import com.google.gerrit.server.git.UpdateException;
+import com.google.gerrit.server.update.UpdateException;
 import com.google.gerrit.server.project.NoSuchChangeException;
 import com.google.gerrit.server.validators.ValidationException;
 import com.google.gerrit.sshd.CommandMetaData;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/ReplayChangesStep.java b/src/main/java/com/googlesource/gerrit/plugins/importer/ReplayChangesStep.java
index 2ada0e5..4f05b44 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/ReplayChangesStep.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/ReplayChangesStep.java
@@ -27,7 +27,7 @@
 import com.google.gerrit.reviewdb.client.Project;
 import com.google.gerrit.reviewdb.server.ReviewDb;
 import com.google.gerrit.server.Sequences;
-import com.google.gerrit.server.git.UpdateException;
+import com.google.gerrit.server.update.UpdateException;
 import com.google.gerrit.server.index.change.ChangeIndexer;
 import com.google.gerrit.server.notedb.NotesMigration;
 import com.google.gerrit.server.project.NoSuchChangeException;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/ReplayInlineCommentsStep.java b/src/main/java/com/googlesource/gerrit/plugins/importer/ReplayInlineCommentsStep.java
index be71dd7..79d6370 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/ReplayInlineCommentsStep.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/ReplayInlineCommentsStep.java
@@ -14,9 +14,10 @@
 
 package com.googlesource.gerrit.plugins.importer;
 
-import static com.google.gerrit.server.PatchLineCommentsUtil.setCommentRevId;
+import static com.google.gerrit.server.CommentsUtil.setCommentRevId;
 
 import com.google.common.collect.ArrayListMultimap;
+import com.google.common.collect.Iterables;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.google.common.collect.Multimap;
@@ -29,15 +30,17 @@
 import com.google.gerrit.extensions.restapi.Url;
 import com.google.gerrit.reviewdb.client.Account;
 import com.google.gerrit.reviewdb.client.Change;
+import com.google.gerrit.reviewdb.client.Comment;
 import com.google.gerrit.reviewdb.client.CommentRange;
-import com.google.gerrit.reviewdb.client.Patch;
 import com.google.gerrit.reviewdb.client.PatchLineComment;
+import com.google.gerrit.reviewdb.client.PatchLineComment.Status;
 import com.google.gerrit.reviewdb.client.PatchSet;
 import com.google.gerrit.reviewdb.server.ReviewDb;
 import com.google.gerrit.server.ChangeUtil;
+import com.google.gerrit.server.CommentsUtil;
 import com.google.gerrit.server.IdentifiedUser;
-import com.google.gerrit.server.PatchLineCommentsUtil;
 import com.google.gerrit.server.PatchSetUtil;
+import com.google.gerrit.server.config.GerritServerId;
 import com.google.gerrit.server.notedb.ChangeUpdate;
 import com.google.gerrit.server.patch.PatchListCache;
 import com.google.gerrit.server.project.ChangeControl;
@@ -73,9 +76,10 @@
   private final IdentifiedUser.GenericFactory genericUserFactory;
   private final ChangeControl.GenericFactory changeControlFactory;
   private final ChangeUpdate.Factory updateFactory;
-  private final PatchLineCommentsUtil plcUtil;
+  private final CommentsUtil commentsUtil;
   private final PatchListCache patchListCache;
   private final PatchSetUtil psUtil;
+  private final String serverId;
   private final Change change;
   private final ChangeInfo changeInfo;
   private final GerritApi api;
@@ -87,9 +91,10 @@
       IdentifiedUser.GenericFactory genericUserFactory,
       ChangeControl.GenericFactory changeControlFactory,
       ChangeUpdate.Factory updateFactory,
-      PatchLineCommentsUtil plcUtil,
+      CommentsUtil commentsUtil,
       PatchListCache patchListCache,
       PatchSetUtil psUtil,
+      @GerritServerId String serverId,
       @Assisted Change change,
       @Assisted ChangeInfo changeInfo,
       @Assisted GerritApi api,
@@ -99,9 +104,10 @@
     this.genericUserFactory = genericUserFactory;
     this.changeControlFactory = changeControlFactory;
     this.updateFactory = updateFactory;
-    this.plcUtil = plcUtil;
+    this.commentsUtil = commentsUtil;
     this.patchListCache = patchListCache;
     this.psUtil = psUtil;
+    this.serverId = serverId;
     this.change = change;
     this.changeInfo = changeInfo;
     this.api = api;
@@ -174,55 +180,55 @@
       NoSuchChangeException {
     ChangeControl ctrl = control(change, author);
 
-    Map<String, PatchLineComment> drafts = scanDraftComments(ctrl, ps);
+    Map<String, Comment> drafts = scanDraftComments(ctrl, ps);
 
-    List<PatchLineComment> del = Lists.newArrayList();
-    List<PatchLineComment> ups = Lists.newArrayList();
+    List<Comment> del = Lists.newArrayList();
+    List<Comment> ups = Lists.newArrayList();
 
     for (CommentInfo c : comments) {
       String parent = Url.decode(c.inReplyTo);
-      PatchLineComment e = drafts.remove(Url.decode(c.id));
+      Comment e = drafts.remove(Url.decode(c.id));
+
       if (e == null) {
-        e = new PatchLineComment(
-            new PatchLineComment.Key(
-                new Patch.Key(ps.getId(), c.path),
-                Url.decode(c.id)),
-            c.line != null ? c.line : 0,
-            author, parent, c.updated);
+        e = new Comment(
+            new Comment.Key(Url.decode(c.id), c.path, ps.getId().get()),
+                author,
+                c.updated,
+                c.side == Side.PARENT ? (short) 0 : (short) 1,
+                c.message,
+                serverId,
+                c.unresolved);
       } else if (parent != null) {
-        e.setParentUuid(parent);
+        e.parentUuid = parent;
       }
-      e.setStatus(PatchLineComment.Status.PUBLISHED);
-      e.setWrittenOn(c.updated);
-      e.setSide(c.side == Side.PARENT ? (short) 0 : (short) 1);
       setCommentRevId(e, patchListCache, change, ps);
-      e.setMessage(c.message);
       if (c.range != null) {
         e.setRange(new CommentRange(
             c.range.startLine,
             c.range.startCharacter,
             c.range.endLine,
             c.range.endCharacter));
-        e.setLine(c.range.endLine);
+        e.lineNbr = c.range.endLine;
       }
       ups.add(e);
     }
 
-    del.addAll(drafts.values());
+    Iterables.addAll(del, drafts.values());
     ChangeUpdate update = updateFactory.create(ctrl, TimeUtil.nowTs());
     update.setPatchSetId(ps.getId());
-    plcUtil.deleteComments(db, update, del);
-    plcUtil.putComments(db, update, ups);
+
+    commentsUtil.deleteComments(db, update, del);
+    commentsUtil.putComments(db, update, Status.PUBLISHED, ups);
     update.commit();
   }
 
-  private Map<String, PatchLineComment> scanDraftComments(ChangeControl ctrl,
+  private Map<String, Comment> scanDraftComments(ChangeControl ctrl,
       PatchSet ps) throws OrmException {
-    Map<String, PatchLineComment> drafts = Maps.newHashMap();
-    for (PatchLineComment c : plcUtil.draftByPatchSetAuthor(db, ps.getId(),
-        ((IdentifiedUser) ctrl.getUser()).getAccountId(),
-        ctrl.getNotes())) {
-      drafts.put(c.getKey().get(), c);
+    Map<String, Comment> drafts = Maps.newHashMap();
+    for (Comment c : commentsUtil.draftByPatchSetAuthor(db, ps.getId(),
+            ((IdentifiedUser) ctrl.getUser()).getAccountId(),
+            ctrl.getNotes())) {
+      drafts.put(c.key.uuid, c);
     }
     return drafts;
   }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/ResumeCopyProject.java b/src/main/java/com/googlesource/gerrit/plugins/importer/ResumeCopyProject.java
index 731e077..f58d421 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/ResumeCopyProject.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/ResumeCopyProject.java
@@ -26,7 +26,7 @@
 import com.google.gerrit.server.CurrentUser;
 import com.google.gerrit.server.account.CapabilityControl;
 import com.google.gerrit.server.config.ConfigResource;
-import com.google.gerrit.server.git.UpdateException;
+import com.google.gerrit.server.update.UpdateException;
 import com.google.gerrit.server.project.NoSuchChangeException;
 import com.google.gerrit.server.project.ProjectCache;
 import com.google.gerrit.server.project.ProjectResource;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/ResumeProjectImport.java b/src/main/java/com/googlesource/gerrit/plugins/importer/ResumeProjectImport.java
index a27ef44..40e0d26 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/ResumeProjectImport.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/ResumeProjectImport.java
@@ -27,7 +27,7 @@
 import com.google.gerrit.server.CurrentUser;
 import com.google.gerrit.server.account.CapabilityControl;
 import com.google.gerrit.server.config.ConfigResource;
-import com.google.gerrit.server.git.UpdateException;
+import com.google.gerrit.server.update.UpdateException;
 import com.google.gerrit.server.project.NoSuchChangeException;
 import com.google.gerrit.server.project.ProjectResource;
 import com.google.gerrit.server.validators.ValidationException;