Github user markap14 commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/2523#discussion_r174821838
  
    --- Diff: 
nifi-nar-bundles/nifi-confluent-platform-bundle/nifi-confluent-schema-registry-service/src/main/java/org/apache/nifi/confluent/schemaregistry/ConfluentSchemaRegistry.java
 ---
    @@ -176,28 +178,33 @@ public void onEnabled(final ConfigurationContext 
context) {
             return baseUrls;
         }
     
    -    @Override
    -    public String retrieveSchemaText(final String schemaName) throws 
IOException, SchemaNotFoundException {
    -        final RecordSchema schema = retrieveSchema(schemaName);
    -        return schema.getSchemaText().get();
    -    }
    +    private RecordSchema retrieveSchemaByName(final SchemaIdentifier 
schemaIdentifier) throws IOException, SchemaNotFoundException {
    +        final Optional<String> schemaName = schemaIdentifier.getName();
    +        if (!schemaName.isPresent()) {
    +            throw new 
org.apache.nifi.schema.access.SchemaNotFoundException("Cannot retrieve schema 
because Schema Name is not present");
    +        }
     
    -    @Override
    -    public String retrieveSchemaText(final long schemaId, final int 
version) throws IOException, SchemaNotFoundException {
    -        final RecordSchema schema = retrieveSchema(schemaId, version);
    -        return schema.getSchemaText().get();
    +        final RecordSchema schema = client.getSchema(schemaName.get());
    +        return schema;
         }
     
    -    @Override
    -    public RecordSchema retrieveSchema(final String schemaName) throws 
IOException, SchemaNotFoundException {
    -        final RecordSchema schema = client.getSchema(schemaName);
    +    private RecordSchema retrieveSchemaByIdAndVersion(final 
SchemaIdentifier schemaIdentifier) throws IOException, SchemaNotFoundException {
    --- End diff --
    
    This doesn't appear to take into account a version at all - which I think 
is correct because the Confluent Schema Registry I don't supports ID + Version, 
as each version would get a different ID? But in this case perhaps the name of 
the method should just be `retrieveSchemaById` and not 
`retrieveSchemaByIdAndVersion`?


---

Reply via email to