mirror of
https://github.com/signalapp/Signal-Server
synced 2026-04-21 13:58:07 +01:00
Define asynchronous ProfilesManager operations
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
package org.whispersystems.textsecuregcm.util;
|
||||
|
||||
import io.micrometer.core.instrument.Timer;
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.concurrent.CompletionStage;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
public class AsyncTimerUtil {
|
||||
@Nonnull
|
||||
public static <T> CompletionStage<T> record(final Timer timer, final Supplier<CompletionStage<T>> toRecord) {
|
||||
final Timer.Sample sample = Timer.start();
|
||||
return toRecord.get().whenComplete((ignoreT, ignoreE) -> sample.stop(timer));
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user