[
https://issues.apache.org/jira/browse/GEODE-1984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15730494#comment-15730494
]
ASF GitHub Bot commented on GEODE-1984:
---------------------------------------
Github user davinash commented on a diff in the pull request:
https://github.com/apache/geode/pull/303#discussion_r91422194
--- Diff:
geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunction.java
---
@@ -0,0 +1,90 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
contributor license
+ * agreements. See the NOTICE file distributed with this work for
additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
ANY KIND, either express
+ * or implied. See the License for the specific language governing
permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.management.internal.cli.functions;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.CacheFactory;
+import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.FunctionContext;
+import org.apache.geode.cache.execute.ResultSender;
+import org.apache.geode.cache.wan.GatewaySender;
+import org.apache.geode.internal.InternalEntity;
+import org.apache.geode.internal.cache.wan.GatewaySenderException;
+import org.apache.geode.internal.logging.LogService;
+import org.apache.geode.management.internal.cli.CliUtil;
+import org.apache.geode.management.internal.cli.i18n.CliStrings;
+import org.apache.logging.log4j.Logger;
+
+public class GatewaySenderDestroyFunction extends FunctionAdapter
implements InternalEntity {
+ private static final long serialVersionUID = 1459761440357690134L;
+
+ private static final Logger logger = LogService.getLogger();
+ private static final String ID =
GatewaySenderDestroyFunction.class.getName();
+ public static GatewaySenderDestroyFunction INSTANCE = new
GatewaySenderDestroyFunction();
+
+ @Override
+ public void execute(FunctionContext context) {
+ ResultSender<Object> resultSender = context.getResultSender();
+
+ Cache cache = CacheFactory.getAnyInstance();
+ String memberNameOrId =
+
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
+
+ GatewaySenderDestroyFunctionArgs gatewaySenderDestroyFunctionArgs =
+ (GatewaySenderDestroyFunctionArgs) context.getArguments();
+
+ try {
+ GatewaySender gatewaySender =
+ cache.getGatewaySender(gatewaySenderDestroyFunctionArgs.getId());
+ if (gatewaySender != null) {
+ gatewaySender.stop();
--- End diff --
Looking at the code AbstractGatewaySenderEventProcessor#closeProcessor, It
looks like stop logs the warning and goes ahead with closing. I think we should
open separate JIRA for stop behaviour.
> Make GatewaySender destroy a public API
> ---------------------------------------
>
> Key: GEODE-1984
> URL: https://issues.apache.org/jira/browse/GEODE-1984
> Project: Geode
> Issue Type: New Feature
> Components: docs, wan
> Reporter: Barry Oglesby
> Assignee: Avinash Dongre
>
> The internal {{AbstractGatewaySender}} class has a {{destroy}} API to destroy
> a {{GatewaySender}}. This is currently an internal API. It would be nice to
> make this public by:
> - adding destroy to the {{GatewaySender}} interface
> - provide {{gfsh}} support
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)