Another consideration is that gfsh commands should be easily scriptable, IMO.

If I want to remove just one of the N listeners using this approach, I would 
need to acquire the list of existing listeners, remove the deselected listener, 
format the list, then pass it to this command.  Is there a way to do this in 
one simple command?

Anthony

> On Jan 3, 2017, at 11:08 AM, Kirk Lund <kl...@apache.org> wrote:
> 
> +1 I'm for the approach you're proposing. As long as it's documented in
> user docs (it's not currently) then this provides a straightforward use of
> the existing gfsh syntax without introducing too many new command options.
> 
> Create the region with two cache listeners:
> $ create region --name=data
> --cache-listener="my.package.ListenerTypeA,my.package.ListenerTypeB"
> 
> Change my mind and decide to remove one of the cache listeners:
> $ alter region --name=data --cache-listener="my.package.ListenerTypeB"
> 
> -Kirk
> 
> 
> On Tue, Jan 3, 2017 at 10:52 AM, Kevin Duling <kdul...@pivotal.io> wrote:
> 
>> Is this an intuitive User Experience?
>> 
>> Given these two classes:
>> 
>> public class ListenerTypeA extends CacheListenerAdapter implements
>> Declarable
>> 
>> and
>> 
>> public class ListenerTypeB extends CacheListenerAdapter implements
>> Declarable
>> 
>> And they are programmatically added to a region:
>> 
>> CacheListener listener1 = new ListenerTypeA();
>> 
>> CacheListener listener2 = new ListenerTypeB();
>> 
>> Region region = cache.<String,
>> Customer>createClientRegionFactory(ClientRegionShortcut.CACHING_PROXY)
>> 
>>        .initCacheListeners(new CacheListener[]{listener1,
>> listener2}).create("regionA");
>> 
>> 
>> What would the expected gfsh command to remove them.  Should we remove the
>> listeners via omission?  For example, removing listener1 might be:
>> 
>> alter region --name=data --cache-listener='my.package.ListenerTypeB'
>> 
>> 
>> By only listing the listeners I want...either to keep and/or to add,
>> listener1 which is a ListenerTypeA, would be removed.
>> 
>> 
>> 
>> 
>> 
>> On Tue, Dec 20, 2016 at 2:11 PM, Kevin Duling <kdul...@pivotal.io> wrote:
>> 
>>> I'm looking at GEODE-2236
>>> <https://issues.apache.org/jira/browse/GEODE-2236> and protecting
>> against
>>> the NPE is trivial.  But the question is, what is the right way to do
>>> this?  What is the syntax people would expect to use?
>>> 
>>> 
>>> What if there are multiple listeners and you wanted to delete one or more
>>> of them?
>>> 
>>> 
>> 

Reply via email to