in client/src/main/java/org/apache/rocketmq/schema/registry/client/CachedSchemaRegistryClient.java [203:222]
public GetSchemaResponse getSchemaBySubjectAndVersion(String subject, long version)
throws IOException, RestClientException {
SubjectAndVersion subjectAndVersion = new SubjectAndVersion(DEFAULT_CLUSTER, DEFAULT_TENANT, subject, version);
GetSchemaResponse result = schemaCacheBySubjectAndVersion.getIfPresent(subjectAndVersion);
if (result != null) {
return result;
}
String subjectFullName = String.format("%s/%s/%s", DEFAULT_CLUSTER, DEFAULT_TENANT, subject);
Set<Long> versions = subjectToId.get(subjectFullName);
if (versions == null) {
versions = new HashSet<>();
}
versions.add(version);
subjectToId.put(subjectFullName, versions);
result = restService.getSchemaBySubject(subject, version);
schemaCacheBySubjectAndVersion.put(subjectAndVersion, result);
return result;
}