in storage-jdbc/src/main/java/org/apache/rocketmq/schema/registry/storage/jdbc/JdbcStorageService.java [100:123]
public SchemaRecordInfo getTargetSchema(StorageServiceContext context, QualifiedName qualifiedName) {
// schema version is given
SchemaInfo schemaInfo = handler.getSchemaInfoBySubject(qualifiedName.subjectFullName());
if (schemaInfo == null || schemaInfo.getDetails() == null || schemaInfo.getDetails().getSchemaRecords() == null) {
return null;
}
SchemaMetaInfo schemaMetaInfo = schemaInfo.getMeta();
if (schemaMetaInfo == null) {
return null;
}
if (schemaMetaInfo.getType() == SchemaType.AVRO) {
for (SchemaRecordInfo schemaRecordInfo : schemaInfo.getDetails().getSchemaRecords()) {
Schema store = new Schema.Parser().parse(schemaRecordInfo.getIdl());
Schema target = new Schema.Parser().parse(qualifiedName.getSchema());
if (Objects.equals(store, target)) {
return schemaRecordInfo;
}
}
} else {
//todo support other type
return null;
}
return null;
}