in adapter/runtime/src/main/java/org/apache/rocketmq/eventbridge/adapter/runtime/common/entity/TargetRunnerConfig.java [72:110]
private boolean isEqualsComponents(List<Map<String, String>> source, List<Map<String, String>> target) {
if (source == null || target == null) {
if (source != target) {
return false;
} else {
return true;
}
}
if (source.isEmpty() || target.isEmpty()) {
if (source.isEmpty() && target.isEmpty()) {
return true;
} else {
return false;
}
}
if (source.size() != target.size()) {
return false;
}
for (int index = 0; index < source.size(); index++) {
Map<String, String> sourceComponent = source.get(index);
Map<String, String> targetComponent = target.get(index);
if (sourceComponent.size() != targetComponent.size()) {
return false;
}
for (Map.Entry<String, String> entry : sourceComponent.entrySet()) {
String element = targetComponent.get(entry.getKey());
if (element == null && entry.getValue() == null) {
return true;
} else if (element.equals(entry.getValue())) {
return true;
} else {
return false;
}
}
}
return true;
}