Merge branch 'stable-2.13'
* stable-2.13: ChangeScreen: Show correct file list when loaded with parent as base ChangeScreen: Load commit only once GetAuditLog: Set group name for external groups Change-Id: I36a586392efdd317fd15530f312ed1d42a77308d Signed-off-by: Edwin Kempin <ekempin@google.com>
This commit is contained in:
		@@ -283,11 +283,22 @@ public class ChangeScreen extends Screen {
 | 
			
		||||
    loadChangeInfo(true, group.addFinal(
 | 
			
		||||
        new GerritCallback<ChangeInfo>() {
 | 
			
		||||
          @Override
 | 
			
		||||
          public void onSuccess(ChangeInfo info) {
 | 
			
		||||
          public void onSuccess(final ChangeInfo info) {
 | 
			
		||||
            info.init();
 | 
			
		||||
            addExtensionPoints(info, initCurrentRevision(info));
 | 
			
		||||
 | 
			
		||||
            RevisionInfo rev = info.revision(revision);
 | 
			
		||||
            CallbackGroup group = new CallbackGroup();
 | 
			
		||||
            loadCommit(rev, group);
 | 
			
		||||
 | 
			
		||||
            group.addListener(new GerritCallback<Void>() {
 | 
			
		||||
              @Override
 | 
			
		||||
              public void onSuccess(Void result) {
 | 
			
		||||
                loadConfigInfo(info, base);
 | 
			
		||||
              }
 | 
			
		||||
            });
 | 
			
		||||
            group.done();
 | 
			
		||||
          }
 | 
			
		||||
        }));
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@@ -952,18 +963,14 @@ public class ChangeScreen extends Screen {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  private void loadConfigInfo(final ChangeInfo info, RevisionInfo rev) {
 | 
			
		||||
    CallbackGroup group = new CallbackGroup();
 | 
			
		||||
    loadCommit(rev, group);
 | 
			
		||||
 | 
			
		||||
    if (loaded) {
 | 
			
		||||
      group.done();
 | 
			
		||||
      return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    RevisionInfoCache.add(changeId, rev);
 | 
			
		||||
    ConfigInfoCache.add(info);
 | 
			
		||||
    ConfigInfoCache.get(info.projectNameKey(),
 | 
			
		||||
      group.addFinal(new ScreenLoadCallback<ConfigInfoCache.Entry>(this) {
 | 
			
		||||
      new ScreenLoadCallback<ConfigInfoCache.Entry>(this) {
 | 
			
		||||
        @Override
 | 
			
		||||
        protected void preDisplay(Entry result) {
 | 
			
		||||
          loaded = true;
 | 
			
		||||
@@ -972,7 +979,7 @@ public class ChangeScreen extends Screen {
 | 
			
		||||
          renderChangeInfo(info);
 | 
			
		||||
          loadRevisionInfo();
 | 
			
		||||
        }
 | 
			
		||||
      }));
 | 
			
		||||
      });
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  static Timestamp myLastReply(ChangeInfo info) {
 | 
			
		||||
@@ -1101,7 +1108,7 @@ public class ChangeScreen extends Screen {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  private void loadCommit(final RevisionInfo rev, CallbackGroup group) {
 | 
			
		||||
    if (rev.isEdit()) {
 | 
			
		||||
    if (rev.isEdit() || rev.commit() != null) {
 | 
			
		||||
      return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -1162,7 +1169,7 @@ public class ChangeScreen extends Screen {
 | 
			
		||||
   *
 | 
			
		||||
   * @param info change info
 | 
			
		||||
   * @param revOrId revision or patch set id
 | 
			
		||||
   * @param defaultValue value returned when rev is null
 | 
			
		||||
   * @param defaultValue value returned when revOrId is null
 | 
			
		||||
   * @return resolved revision or default value
 | 
			
		||||
   */
 | 
			
		||||
  private RevisionInfo resolveRevisionOrPatchSetId(ChangeInfo info,
 | 
			
		||||
@@ -1172,12 +1179,10 @@ public class ChangeScreen extends Screen {
 | 
			
		||||
      revOrId = defaultValue;
 | 
			
		||||
    } else if ((parentNum = toParentNum(revOrId)) > 0) {
 | 
			
		||||
      CommitInfo commitInfo = info.revision(revision).commit();
 | 
			
		||||
      if (commitInfo != null) {
 | 
			
		||||
      JsArray<CommitInfo> parents = commitInfo.parents();
 | 
			
		||||
      if (parents.length() >= parentNum) {
 | 
			
		||||
        return RevisionInfo.forParent(-parentNum, parents.get(parentNum - 1));
 | 
			
		||||
      }
 | 
			
		||||
      }
 | 
			
		||||
    } else if (!info.revisions().containsKey(revOrId)) {
 | 
			
		||||
      JsArray<RevisionInfo> list = info.revisions().values();
 | 
			
		||||
      for (int i = 0; i < list.length(); i++) {
 | 
			
		||||
 
 | 
			
		||||
@@ -14,6 +14,7 @@
 | 
			
		||||
 | 
			
		||||
package com.google.gerrit.server.group;
 | 
			
		||||
 | 
			
		||||
import com.google.gerrit.common.data.GroupDescription;
 | 
			
		||||
import com.google.gerrit.common.data.GroupDescriptions;
 | 
			
		||||
import com.google.gerrit.extensions.common.AccountInfo;
 | 
			
		||||
import com.google.gerrit.extensions.common.GroupAuditEventInfo;
 | 
			
		||||
@@ -28,6 +29,7 @@ import com.google.gerrit.reviewdb.client.AccountGroupByIdAud;
 | 
			
		||||
import com.google.gerrit.reviewdb.client.AccountGroupMemberAudit;
 | 
			
		||||
import com.google.gerrit.reviewdb.server.ReviewDb;
 | 
			
		||||
import com.google.gerrit.server.account.AccountLoader;
 | 
			
		||||
import com.google.gerrit.server.account.GroupBackend;
 | 
			
		||||
import com.google.gerrit.server.account.GroupCache;
 | 
			
		||||
import com.google.gwtorm.server.OrmException;
 | 
			
		||||
import com.google.inject.Inject;
 | 
			
		||||
@@ -45,16 +47,19 @@ public class GetAuditLog implements RestReadView<GroupResource> {
 | 
			
		||||
  private final AccountLoader.Factory accountLoaderFactory;
 | 
			
		||||
  private final GroupCache groupCache;
 | 
			
		||||
  private final GroupJson groupJson;
 | 
			
		||||
  private final GroupBackend groupBackend;
 | 
			
		||||
 | 
			
		||||
  @Inject
 | 
			
		||||
  public GetAuditLog(Provider<ReviewDb> db,
 | 
			
		||||
      AccountLoader.Factory accountLoaderFactory,
 | 
			
		||||
      GroupCache groupCache,
 | 
			
		||||
      GroupJson groupJson) {
 | 
			
		||||
      GroupJson groupJson,
 | 
			
		||||
      GroupBackend groupBackend) {
 | 
			
		||||
    this.db = db;
 | 
			
		||||
    this.accountLoaderFactory = accountLoaderFactory;
 | 
			
		||||
    this.groupCache = groupCache;
 | 
			
		||||
    this.groupJson = groupJson;
 | 
			
		||||
    this.groupBackend = groupBackend;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
@@ -100,8 +105,11 @@ public class GetAuditLog implements RestReadView<GroupResource> {
 | 
			
		||||
      if (includedGroup != null) {
 | 
			
		||||
        member = groupJson.format(GroupDescriptions.forAccountGroup(includedGroup));
 | 
			
		||||
      } else {
 | 
			
		||||
        GroupDescription.Basic groupDescription =
 | 
			
		||||
            groupBackend.get(includedGroupUUID);
 | 
			
		||||
        member = new GroupInfo();
 | 
			
		||||
        member.id = Url.encode(includedGroupUUID.get());
 | 
			
		||||
        member.name = groupDescription.getName();
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      auditEvents.add(GroupAuditEventInfo.createAddGroupEvent(
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user