A word of caution here...

I'd like to see us start moving away from "internal" APIs even, as much as 
possible.  Moving away from Singletons is no-brainer, but less obvious, is 
moving things to proper public APIs and SPIs so that frameworks and tooling can 
extend Geode in interesting ways.  SDG certainly has a need in many cases.

By way of example, I am currently working on Pagination, and I keep running 
into situations where it would be nice if the same (ANTLR) grammar/parser used 
to parse OQL was an API SDG could use.

Essentially, every feature and function of Geode should have an interface 
(API/SPI) that can be extended (e.g. via plugins) in some way to effect 
function or behavior.  This is the primary driver behind the Open/Closed 
Principle, which would serve Geode well.

$0.02
-j


________________________________
From: Dan Smith <dasm...@vmware.com>
Sent: Tuesday, October 20, 2020 11:13 AM
To: dev@geode.apache.org <dev@geode.apache.org>
Subject: Re: [DISCUSS] ServiceRegistry RFC

It might be better to hang things off InternalCache rather than create a new 
singleton. The cache is already a singleton, but we've been working on removing 
that by plumbing the cache everywhere. The cache is effectively our context 
object, and once we've finished removing calls to Cache.getInstance we will 
have a context object that is not a singleton.

As Jens mentioned, the cache already has the concept of CacheServices that can 
be retrieved using methods similar to what you listened in this RFC - eg 
InternalCache.getService(Class clazz).

Can we reuse/generalize/extend this existing service concept for your case?

-Dan
________________________________
From: Jens Deppe <jde...@vmware.com>
Sent: Tuesday, October 20, 2020 5:33 AM
To: dev@geode.apache.org <dev@geode.apache.org>
Subject: Re: [DISCUSS] ServiceRegistry RFC

Hi Udo,

Is the intention of this to replace (and extend) what we're doing with the 
traditional service loading mechanism today? i.e. how we're loading everything 
that extends CacheService (for example HttpService, LuceneService, 
GeodeRedisService, etc.).

Thanks
--jens



On 10/15/20, 7:25 PM, "Udo Kohlmeyer" <u...@vmware.com> wrote:

    Hi there Apache Geode Devs.

    Please find attached an RFC for the introduction of a ServiceRegistry into 
Apache Geode.

    
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcwiki.apache.org%2Fconfluence%2Fdisplay%2FGEODE%2FServiceRegistry&amp;data=04%7C01%7Cjblum%40vmware.com%7C3ee62dcb9d034f24526c08d87523f40c%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C0%7C0%7C637388144568538631%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=eTRFhI0BECYgeUeimL1tKPI88vuI0SQ4LWWN4ZUWGb8%3D&amp;reserved=0

    Please add all comments to the RFC to this email for tracking and 
discussion.

    --Udo

Reply via email to