Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewRemoteFactory.java')
-rw-r--r--org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewRemoteFactory.java126
1 files changed, 0 insertions, 126 deletions
diff --git a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewRemoteFactory.java b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewRemoteFactory.java
deleted file mode 100644
index 6d8b5d737..000000000
--- a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewRemoteFactory.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013 Ericsson and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Miles Parker, Tasktop Technologies - initial API and implementation
- * Steffen Pingel, Tasktop Technologies - original GerritUtil implementation
- *******************************************************************************/
-
-package org.eclipse.mylyn.internal.gerrit.core.remote;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.mylyn.internal.gerrit.core.GerritConnector;
-import org.eclipse.mylyn.internal.gerrit.core.client.GerritChange;
-import org.eclipse.mylyn.internal.gerrit.core.client.GerritException;
-import org.eclipse.mylyn.internal.gerrit.core.client.compat.ChangeDetailX;
-import org.eclipse.mylyn.reviews.core.model.IComment;
-import org.eclipse.mylyn.reviews.core.model.IReview;
-import org.eclipse.mylyn.reviews.core.model.IReviewGroup;
-import org.eclipse.mylyn.reviews.core.model.IReviewItemSet;
-import org.eclipse.mylyn.reviews.core.model.IReviewsFactory;
-import org.eclipse.mylyn.reviews.core.model.ITopic;
-import org.eclipse.mylyn.reviews.core.model.IUser;
-import org.eclipse.mylyn.reviews.core.spi.remote.emf.AbstractRemoteEmfFactory;
-import org.eclipse.mylyn.reviews.internal.core.model.ReviewsPackage;
-
-import com.google.gerrit.common.data.AccountInfo;
-import com.google.gerrit.common.data.PatchSetDetail;
-import com.google.gerrit.reviewdb.Change;
-import com.google.gerrit.reviewdb.ChangeMessage;
-import com.google.gerrit.reviewdb.UserIdentity;
-
-/**
- * Manages retrieval of Review information from Gerrit API. Also creates, adds, and updates contents of review sets for
- * each patch set, but does not retrieve the patch set details or contents.
- *
- * @author Miles Parker
- * @author Steffen Pingel
- */
-public class ReviewRemoteFactory extends AbstractRemoteEmfFactory<IReviewGroup, IReview, GerritChange, String, String> {
-
- private final GerritRemoteFactoryProvider gerritFactoryProvider;
-
- public ReviewRemoteFactory(GerritRemoteFactoryProvider gerritRemoteFactoryProvider) {
- super(gerritRemoteFactoryProvider.getService(), ReviewsPackage.Literals.REVIEW_GROUP__REVIEWS,
- ReviewsPackage.Literals.CHANGE__ID);
- this.gerritFactoryProvider = gerritRemoteFactoryProvider;
- }
-
- @Override
- public GerritChange retrieve(String remoteKey, IProgressMonitor monitor) throws CoreException {
- try {
- return gerritFactoryProvider.getClient().getChange(remoteKey, monitor);
- } catch (GerritException e) {
- throw GerritConnector.toCoreException(null, e);
- }
- }
-
- @Override
- public IReview create(IReviewGroup parent, GerritChange gerritChange) {
- final ChangeDetailX detail = gerritChange.getChangeDetail();
- Change change = detail.getChange();
-
- IReview review = IReviewsFactory.INSTANCE.createReview();
- review.setId(detail.getChange().getId().get() + "");
- AccountInfo owner = detail.getAccounts().get(change.getOwner());
- IUser reviewAuthor = gerritFactoryProvider.getUserFactory(detail.getAccounts()).get(review, owner.getId());
- review.setOwner(reviewAuthor);
- review.setCreationDate(change.getCreatedOn());
- return review;
- }
-
- @Override
- public boolean update(IReviewGroup parent, IReview review, GerritChange gerritChange) {
- ChangeDetailX detail = getRemoteObject(review).getChangeDetail();
- Change change = detail.getChange();
-
- review.setModificationDate(change.getLastUpdatedOn());
-
- int oldTopicCount = review.getTopics().size();
- int topicIndex = 0;
- for (ChangeMessage message : detail.getMessages()) {
- if (topicIndex++ < oldTopicCount) {
- continue;
- }
- ITopic topic = review.createTopicComment(null, message.getMessage());
- topic.setDraft(false);
- topic.setCreationDate(message.getWrittenOn());
- for (IComment comment : topic.getComments()) {
- comment.setDraft(false);
- }
- if (message.getAuthor() != null) {
- topic.setAuthor(gerritFactoryProvider.getUserFactory(detail.getAccounts()).get(topic,
- message.getAuthor()));
- //TODO Should be handled by edit framework
- for (IComment comment : topic.getComments()) {
- comment.setAuthor(topic.getAuthor());
- }
- }
- }
-
- int oldPatchCount = review.getSets().size();
- int patchIndex = 0;
- for (PatchSetDetail patchSetDetail : gerritChange.getPatchSetDetails()) {
- if (patchIndex++ < oldPatchCount) {
- continue;
- }
- ReviewItemSetRemoteFactory itemSetFactory = gerritFactoryProvider.getReviewItemSetFactory();
- IReviewItemSet itemSet = itemSetFactory.get(review, patchSetDetail);
- UserIdentity author = patchSetDetail.getInfo().getAuthor();
- itemSet.setAddedBy(gerritFactoryProvider.getUserFactory(detail.getAccounts()).get(itemSet,
- author.getAccount()));
- UserIdentity committer = patchSetDetail.getInfo().getCommitter();
- itemSet.setCommittedBy(gerritFactoryProvider.getUserFactory(detail.getAccounts()).get(itemSet,
- committer.getAccount()));
- itemSet.setModificationDate(author.getDate());
- review.getSets().add(itemSet);
- }
-
- return review.getTopics().size() > oldTopicCount || review.getSets().size() > oldPatchCount;
- }
-} \ No newline at end of file

Back to the top