Github user markap14 commented on the pull request:

    https://github.com/apache/nifi/pull/94#issuecomment-144783629
  
    @joemeszaros the concern that I have with the notion of the 
ExtendedDistributedMapCacheClient is that once that is released, it will have 
the same caveats as the DistributedMapCacheClient - others can extend it, so we 
cannot change the interface in a non-backward-compatible way once we release it.
    
    I think if there are specific methods that we think will be added, then we 
need to implement those before we release the service. Otherwise, in order to 
add new methods to the ExtendedDistributedMapCacheClient we would need to 
create yet another interface that extends that one. This is all done because we 
consider the Standard Services API to be "public interfaces" so that once they 
are out there, we have no idea who has implemented them. As a result, if we 
change them, even if we update all of the code in Apache NiFi, we may be 
breaking someone else's "private" implementation.
    
    In theory, though, this will become a lot less painful once we move to 
1.0.0 because I believe the intent is to move to Java 8, which means that we 
can include default implementations in the interfaces. As a result, we could 
potentially add new methods to interfaces as long as they can be implemented 
using existing methods.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to