fixed potential NullPointerException if AMQP.Properties::getHeaders returns null (#3588)

This commit is contained in:
Niki 2021-07-15 19:27:23 +02:00 committed by GitHub
parent 9a3734f8ed
commit 016a963640
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 8 additions and 3 deletions

View File

@ -6,6 +6,7 @@
package io.opentelemetry.javaagent.instrumentation.rabbitmq; package io.opentelemetry.javaagent.instrumentation.rabbitmq;
import io.opentelemetry.context.propagation.TextMapGetter; import io.opentelemetry.context.propagation.TextMapGetter;
import java.util.Collections;
import java.util.Map; import java.util.Map;
public class TextMapExtractAdapter implements TextMapGetter<Map<String, Object>> { public class TextMapExtractAdapter implements TextMapGetter<Map<String, Object>> {
@ -14,12 +15,16 @@ public class TextMapExtractAdapter implements TextMapGetter<Map<String, Object>>
@Override @Override
public Iterable<String> keys(Map<String, Object> carrier) { public Iterable<String> keys(Map<String, Object> carrier) {
return carrier.keySet(); return carrier != null ? carrier.keySet() : Collections.emptyList();
} }
@Override @Override
public String get(Map<String, Object> carrier, String key) { public String get(Map<String, Object> carrier, String key) {
Object obj = carrier.get(key); if (carrier != null) {
return obj == null ? null : obj.toString(); Object obj = carrier.get(key);
return obj == null ? null : obj.toString();
} else {
return null;
}
} }
} }