ChangeIndexedListener: Move to extension API

Move to the extension API and change the interface so as not to use
internal data types.

The only known user of this interface (sync-index plugin) only needs
the change ID anyway.

Change-Id: Ia2d44aeae9fdaaa6d1d1667c28b3a7197ad5a622
This commit is contained in:
David Pursehouse
2016-06-22 16:14:12 +09:00
committed by Hugo Arès
parent 399b10dea7
commit 38f96373e0
3 changed files with 10 additions and 12 deletions

View File

@@ -12,18 +12,16 @@
// See the License for the specific language governing permissions and
// limitations under the License.
package com.google.gerrit.server.extensions.events;
package com.google.gerrit.extensions.events;
import com.google.gerrit.extensions.annotations.ExtensionPoint;
import com.google.gerrit.reviewdb.client.Change;
import com.google.gerrit.server.query.change.ChangeData;
/** Notified whenever a change is indexed or deleted from the index. */
@ExtensionPoint
public interface ChangeIndexedListener {
/** Invoked when a change is indexed. */
void onChangeIndexed(ChangeData change);
void onChangeIndexed(int id);
/** Invoked when a change is deleted from the index. */
void onChangeDeleted(Change.Id id);
void onChangeDeleted(int id);
}

View File

@@ -31,6 +31,7 @@ import com.google.gerrit.extensions.config.ExternalIncludedIn;
import com.google.gerrit.extensions.config.FactoryModule;
import com.google.gerrit.extensions.events.AgreementSignupListener;
import com.google.gerrit.extensions.events.ChangeAbandonedListener;
import com.google.gerrit.extensions.events.ChangeIndexedListener;
import com.google.gerrit.extensions.events.ChangeMergedListener;
import com.google.gerrit.extensions.events.ChangeRestoredListener;
import com.google.gerrit.extensions.events.CommentAddedListener;
@@ -97,7 +98,6 @@ import com.google.gerrit.server.change.ChangeKindCacheImpl;
import com.google.gerrit.server.change.MergeabilityCacheImpl;
import com.google.gerrit.server.events.EventFactory;
import com.google.gerrit.server.events.EventsMetrics;
import com.google.gerrit.server.extensions.events.ChangeIndexedListener;
import com.google.gerrit.server.extensions.events.GitReferenceUpdated;
import com.google.gerrit.server.git.BatchUpdate;
import com.google.gerrit.server.git.EmailMerge;

View File

@@ -20,12 +20,12 @@ import com.google.common.util.concurrent.CheckedFuture;
import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
import com.google.common.util.concurrent.ListeningExecutorService;
import com.google.gerrit.extensions.events.ChangeIndexedListener;
import com.google.gerrit.extensions.registration.DynamicSet;
import com.google.gerrit.reviewdb.client.Change;
import com.google.gerrit.reviewdb.client.Project;
import com.google.gerrit.reviewdb.server.ReviewDb;
import com.google.gerrit.server.CurrentUser;
import com.google.gerrit.server.extensions.events.ChangeIndexedListener;
import com.google.gerrit.server.index.Index;
import com.google.gerrit.server.notedb.ChangeNotes;
import com.google.gerrit.server.notedb.NotesMigration;
@@ -180,16 +180,16 @@ public class ChangeIndexer {
for (Index<?, ChangeData> i : getWriteIndexes()) {
i.replace(cd);
}
fireChangeIndexedEvent(cd);
fireChangeIndexedEvent(cd.getId().get());
}
private void fireChangeIndexedEvent(ChangeData change) {
private void fireChangeIndexedEvent(int id) {
for (ChangeIndexedListener listener : indexedListener) {
listener.onChangeIndexed(change);
listener.onChangeIndexed(id);
}
}
private void fireChangeDeletedFromIndexEvent(Change.Id id) {
private void fireChangeDeletedFromIndexEvent(int id) {
for (ChangeIndexedListener listener : indexedListener) {
listener.onChangeDeleted(id);
}
@@ -338,7 +338,7 @@ public class ChangeIndexer {
for (ChangeIndex i : getWriteIndexes()) {
i.delete(id);
}
fireChangeDeletedFromIndexEvent(id);
fireChangeDeletedFromIndexEvent(id.get());
return null;
}
}