public GetSchemaResponse getSchemaBySubjectAndVersion()

in client/src/main/java/org/apache/rocketmq/schema/registry/client/CachedSchemaRegistryClient.java [182:201]


    public GetSchemaResponse getSchemaBySubjectAndVersion(String cluster, String tenant, String subject,
        long version) throws IOException, RestClientException {
        SubjectAndVersion subjectAndVersion = new SubjectAndVersion(cluster, tenant, subject, version);
        GetSchemaResponse result = schemaCacheBySubjectAndVersion.getIfPresent(subjectAndVersion);
        if (result != null) {
            return result;
        }

        String subjectFullName = String.format("%s/%s/%s", cluster, tenant, subject);
        Set<Long> versions = subjectToId.get(subjectFullName);
        if (versions == null) {
            versions = new HashSet<>();
        }
        versions.add(version);
        subjectToId.put(subjectFullName, versions);

        result = restService.getSchemaBySubject(cluster, tenant, subject, version);
        schemaCacheBySubjectAndVersion.put(subjectAndVersion, result);
        return result;
    }