Skip to content

Commit

Permalink
Merge 2e537bd into eeecef3
Browse files Browse the repository at this point in the history
  • Loading branch information
drpmma committed Nov 18, 2022
2 parents eeecef3 + 2e537bd commit c04061d
Showing 1 changed file with 9 additions and 1 deletion.
Expand Up @@ -22,8 +22,11 @@
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Modifier;
import java.nio.ByteBuffer;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.atomic.AtomicInteger;
import org.apache.rocketmq.logging.InternalLogger;
import org.apache.rocketmq.logging.InternalLoggerFactory;
Expand Down Expand Up @@ -317,7 +320,12 @@ private Field[] getClazzFields(Class<? extends CommandCustomHeader> classHeader)
Field[] field = CLASS_HASH_MAP.get(classHeader);

if (field == null) {
field = classHeader.getDeclaredFields();
Set<Field> fieldList = new HashSet<>();
for (Class className = classHeader; className != Object.class; className = className.getSuperclass()) {
Field[] fields = className.getDeclaredFields();
fieldList.addAll(Arrays.asList(fields));
}
field = fieldList.toArray(new Field[0]);
synchronized (CLASS_HASH_MAP) {
CLASS_HASH_MAP.put(classHeader, field);
}
Expand Down

0 comments on commit c04061d

Please sign in to comment.