You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Bryan Bende (Jira)" <ji...@apache.org> on 2022/07/20 13:38:00 UTC

[jira] [Created] (NIFI-10253) NAR Plugin incorrectly handling controller service API with inheritance

Bryan Bende created NIFI-10253:
----------------------------------

             Summary: NAR Plugin incorrectly handling controller service API with inheritance
                 Key: NIFI-10253
                 URL: https://issues.apache.org/jira/browse/NIFI-10253
             Project: Apache NiFi
          Issue Type: Bug
    Affects Versions: nifi-nar-maven-plugin-1.3.4
            Reporter: Bryan Bende


In a previous issue NIFI-10011, we fixed an issue where a controller service implementation may have inheritance and one of the super classes may be the one that implements the API.

This is a similar issue, but on the API side. If the API has multiple interfaces involved, we need the manifest to say that an implementation satisfies all of these interfaces, and currently its only getting the lowest level.

Example...

API:
{code:java}
AtomicDistributedMapCacheClient<R> extends DistributedMapCacheClient {code}
Implementation:
{code:java}
RedisDistributedMapCacheClient {code}
The manifest contains:
{code:java}
"providedApiImplementations" : [ {
          "group" : "org.apache.nifi",
          "artifact" : "nifi-standard-services-api-nar",
          "version" : "1.17.0-SNAPSHOT",
          "type" : "org.apache.nifi.distributed.cache.client.AtomicDistributedMapCacheClient"
        } ], {code}
The provided API implementations should contain the atomic DMC and regular DMC, since technically it implements both.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)