Skip to content

Commit aa17ea5

Browse files
adinauerclaude
andcommitted
Merge processor stack update into breadcrumb callback handling
Carry the inserted SDK processor marker forward through the adjacent stack branch without rewriting existing history or changing breadcrumb behavior. Co-Authored-By: Claude <noreply@anthropic.com>
2 parents fa3ca45 + 8b3c3fa commit aa17ea5

34 files changed

Lines changed: 100 additions & 61 deletions

File tree

‎sentry-android-core/api/sentry-android-core.api‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ public final class io/sentry/android/core/AppState$LifecycleObserver : androidx/
233233
public fun onStop (Landroidx/lifecycle/LifecycleOwner;)V
234234
}
235235

236-
public final class io/sentry/android/core/ApplicationExitInfoEventProcessor : io/sentry/BackfillingEventProcessor {
236+
public final class io/sentry/android/core/ApplicationExitInfoEventProcessor : io/sentry/BackfillingEventProcessor, io/sentry/internal/eventprocessor/SentryEventProcessor {
237237
public fun <init> (Landroid/content/Context;Lio/sentry/android/core/SentryAndroidOptions;Lio/sentry/android/core/BuildInfoProvider;)V
238238
public fun getOrder ()Ljava/lang/Long;
239239
public fun process (Lio/sentry/SentryEvent;Lio/sentry/Hint;)Lio/sentry/SentryEvent;
@@ -401,7 +401,7 @@ public class io/sentry/android/core/PerfettoProfiler {
401401
public fun endAndCollect (Ljava/util/function/Consumer;)V
402402
}
403403

404-
public final class io/sentry/android/core/ScreenshotEventProcessor : io/sentry/EventProcessor {
404+
public final class io/sentry/android/core/ScreenshotEventProcessor : io/sentry/internal/eventprocessor/SentryEventProcessor {
405405
public fun <init> (Lio/sentry/android/core/SentryAndroidOptions;Lio/sentry/android/core/BuildInfoProvider;Z)V
406406
public fun getOrder ()Ljava/lang/Long;
407407
public fun process (Lio/sentry/SentryEvent;Lio/sentry/Hint;)Lio/sentry/SentryEvent;
@@ -678,7 +678,7 @@ public final class io/sentry/android/core/UserInteractionIntegration : android/a
678678
public fun register (Lio/sentry/IScopes;Lio/sentry/SentryOptions;)V
679679
}
680680

681-
public final class io/sentry/android/core/ViewHierarchyEventProcessor : io/sentry/EventProcessor {
681+
public final class io/sentry/android/core/ViewHierarchyEventProcessor : io/sentry/internal/eventprocessor/SentryEventProcessor {
682682
public fun <init> (Lio/sentry/android/core/SentryAndroidOptions;)V
683683
public fun getOrder ()Ljava/lang/Long;
684684
public fun process (Lio/sentry/SentryEvent;Lio/sentry/Hint;)Lio/sentry/SentryEvent;

‎sentry-android-core/src/main/java/io/sentry/android/core/ApplicationExitInfoEventProcessor.java‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
import io.sentry.hints.AbnormalExit;
5353
import io.sentry.hints.Backfillable;
5454
import io.sentry.hints.NativeCrashExit;
55+
import io.sentry.internal.eventprocessor.SentryEventProcessor;
5556
import io.sentry.protocol.App;
5657
import io.sentry.protocol.Contexts;
5758
import io.sentry.protocol.DebugImage;
@@ -89,7 +90,8 @@
8990
*/
9091
@ApiStatus.Internal
9192
@WorkerThread
92-
public final class ApplicationExitInfoEventProcessor implements BackfillingEventProcessor {
93+
public final class ApplicationExitInfoEventProcessor
94+
implements BackfillingEventProcessor, SentryEventProcessor {
9395

9496
private final @NotNull Context context;
9597

‎sentry-android-core/src/main/java/io/sentry/android/core/DefaultAndroidEventProcessor.java‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import io.sentry.android.core.internal.util.AndroidThreadChecker;
99
import io.sentry.android.core.performance.AppStartMetrics;
1010
import io.sentry.android.core.performance.TimeSpan;
11+
import io.sentry.internal.eventprocessor.SentryEventProcessor;
1112
import io.sentry.protocol.App;
1213
import io.sentry.protocol.OperatingSystem;
1314
import io.sentry.protocol.SentryException;
@@ -32,7 +33,7 @@
3233
import org.jetbrains.annotations.Nullable;
3334
import org.jetbrains.annotations.TestOnly;
3435

35-
final class DefaultAndroidEventProcessor implements EventProcessor {
36+
final class DefaultAndroidEventProcessor implements SentryEventProcessor {
3637

3738
@TestOnly final Context context;
3839

‎sentry-android-core/src/main/java/io/sentry/android/core/PerformanceAndroidEventProcessor.java‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import static io.sentry.android.core.ActivityLifecycleIntegration.STANDALONE_APP_START_OP;
88
import static io.sentry.android.core.ActivityLifecycleIntegration.UI_LOAD_OP;
99

10-
import io.sentry.EventProcessor;
1110
import io.sentry.Hint;
1211
import io.sentry.ISentryLifecycleToken;
1312
import io.sentry.MeasurementUnit;
@@ -20,6 +19,7 @@
2019
import io.sentry.android.core.internal.util.AndroidThreadChecker;
2120
import io.sentry.android.core.performance.AppStartMetrics;
2221
import io.sentry.android.core.performance.TimeSpan;
22+
import io.sentry.internal.eventprocessor.SentryEventProcessor;
2323
import io.sentry.protocol.App;
2424
import io.sentry.protocol.MeasurementValue;
2525
import io.sentry.protocol.SentryId;
@@ -36,7 +36,7 @@
3636
import org.jetbrains.annotations.Nullable;
3737

3838
/** Event Processor responsible for adding Android metrics to transactions */
39-
final class PerformanceAndroidEventProcessor implements EventProcessor {
39+
final class PerformanceAndroidEventProcessor implements SentryEventProcessor {
4040

4141
private static final String APP_METRICS_ORIGIN = "auto.ui";
4242

‎sentry-android-core/src/main/java/io/sentry/android/core/ScreenshotEventProcessor.java‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import android.graphics.Bitmap;
99
import android.view.View;
1010
import io.sentry.Attachment;
11-
import io.sentry.EventProcessor;
1211
import io.sentry.Hint;
1312
import io.sentry.SentryEvent;
1413
import io.sentry.SentryLevel;
@@ -18,6 +17,7 @@
1817
import io.sentry.android.replay.util.MaskRenderer;
1918
import io.sentry.android.replay.util.ViewsKt;
2019
import io.sentry.android.replay.viewhierarchy.ViewHierarchyNode;
20+
import io.sentry.internal.eventprocessor.SentryEventProcessor;
2121
import io.sentry.protocol.SentryTransaction;
2222
import io.sentry.util.HintUtils;
2323
import io.sentry.util.Objects;
@@ -34,7 +34,7 @@
3434
* captured.
3535
*/
3636
@ApiStatus.Internal
37-
public final class ScreenshotEventProcessor implements EventProcessor {
37+
public final class ScreenshotEventProcessor implements SentryEventProcessor {
3838

3939
private final @NotNull SentryAndroidOptions options;
4040
private final @NotNull BuildInfoProvider buildInfoProvider;

‎sentry-android-core/src/main/java/io/sentry/android/core/ViewHierarchyEventProcessor.java‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import android.view.ViewGroup;
88
import android.view.Window;
99
import io.sentry.Attachment;
10-
import io.sentry.EventProcessor;
1110
import io.sentry.Hint;
1211
import io.sentry.ILogger;
1312
import io.sentry.ISerializer;
@@ -18,6 +17,7 @@
1817
import io.sentry.android.core.internal.util.AndroidThreadChecker;
1918
import io.sentry.android.core.internal.util.ClassUtil;
2019
import io.sentry.android.core.internal.util.Debouncer;
20+
import io.sentry.internal.eventprocessor.SentryEventProcessor;
2121
import io.sentry.internal.viewhierarchy.ViewHierarchyExporter;
2222
import io.sentry.protocol.SentryTransaction;
2323
import io.sentry.protocol.ViewHierarchy;
@@ -37,7 +37,7 @@
3737

3838
/** ViewHierarchyEventProcessor responsible for taking a snapshot of the current view hierarchy. */
3939
@ApiStatus.Internal
40-
public final class ViewHierarchyEventProcessor implements EventProcessor {
40+
public final class ViewHierarchyEventProcessor implements SentryEventProcessor {
4141

4242
private final @NotNull SentryAndroidOptions options;
4343
private final @NotNull Debouncer debouncer;

‎sentry-opentelemetry/sentry-opentelemetry-core/api/sentry-opentelemetry-core.api‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ public final class io/sentry/opentelemetry/OpenTelemetryAttributesExtractor {
44
public fun extractUrl (Lio/opentelemetry/api/common/Attributes;Lio/sentry/SentryOptions;)Ljava/lang/String;
55
}
66

7-
public final class io/sentry/opentelemetry/OpenTelemetryLinkErrorEventProcessor : io/sentry/EventProcessor {
7+
public final class io/sentry/opentelemetry/OpenTelemetryLinkErrorEventProcessor : io/sentry/internal/eventprocessor/SentryEventProcessor {
88
public fun <init> ()V
99
public fun getOrder ()Ljava/lang/Long;
1010
public fun process (Lio/sentry/SentryEvent;Lio/sentry/Hint;)Lio/sentry/SentryEvent;

‎sentry-opentelemetry/sentry-opentelemetry-core/src/main/java/io/sentry/opentelemetry/OpenTelemetryLinkErrorEventProcessor.java‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import io.opentelemetry.api.trace.Span;
44
import io.opentelemetry.api.trace.SpanId;
55
import io.opentelemetry.api.trace.TraceId;
6-
import io.sentry.EventProcessor;
76
import io.sentry.Hint;
87
import io.sentry.IScopes;
98
import io.sentry.ISpan;
@@ -12,6 +11,7 @@
1211
import io.sentry.SentryEvent;
1312
import io.sentry.SentryLevel;
1413
import io.sentry.SpanContext;
14+
import io.sentry.internal.eventprocessor.SentryEventProcessor;
1515
import io.sentry.protocol.SentryId;
1616
import org.jetbrains.annotations.NotNull;
1717
import org.jetbrains.annotations.Nullable;
@@ -21,7 +21,7 @@
2121
* @deprecated this is no longer needed for the latest version of our OpenTelemetry integration.
2222
*/
2323
@Deprecated
24-
public final class OpenTelemetryLinkErrorEventProcessor implements EventProcessor {
24+
public final class OpenTelemetryLinkErrorEventProcessor implements SentryEventProcessor {
2525

2626
private final @NotNull IScopes scopes;
2727

‎sentry-opentelemetry/sentry-opentelemetry-otlp/api/sentry-opentelemetry-otlp.api‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
public final class io/sentry/opentelemetry/otlp/OpenTelemetryOtlpEventProcessor : io/sentry/EventProcessor {
1+
public final class io/sentry/opentelemetry/otlp/OpenTelemetryOtlpEventProcessor : io/sentry/internal/eventprocessor/SentryEventProcessor {
22
public fun <init> ()V
33
public fun getOrder ()Ljava/lang/Long;
44
public fun process (Lio/sentry/SentryEvent;Lio/sentry/Hint;)Lio/sentry/SentryEvent;

‎sentry-opentelemetry/sentry-opentelemetry-otlp/src/main/java/io/sentry/opentelemetry/otlp/OpenTelemetryOtlpEventProcessor.java‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import io.opentelemetry.api.trace.Span;
44
import io.opentelemetry.api.trace.SpanId;
55
import io.opentelemetry.api.trace.TraceId;
6-
import io.sentry.EventProcessor;
76
import io.sentry.Hint;
87
import io.sentry.IScopes;
98
import io.sentry.ScopesAdapter;
@@ -12,12 +11,13 @@
1211
import io.sentry.SentryLogEvent;
1312
import io.sentry.SentryMetricsEvent;
1413
import io.sentry.SpanContext;
14+
import io.sentry.internal.eventprocessor.SentryEventProcessor;
1515
import io.sentry.protocol.SentryId;
1616
import org.jetbrains.annotations.NotNull;
1717
import org.jetbrains.annotations.Nullable;
1818
import org.jetbrains.annotations.TestOnly;
1919

20-
public final class OpenTelemetryOtlpEventProcessor implements EventProcessor {
20+
public final class OpenTelemetryOtlpEventProcessor implements SentryEventProcessor {
2121

2222
private final @NotNull IScopes scopes;
2323

0 commit comments

Comments
 (0)