You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2022/10/05 01:51:26 UTC
[camel] 04/09: CAMEL-18574: camel-core - Add disabled option to EIPs
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch disabled
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 4e65461009278de9ce33fac446effa6fe2fc55a2
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Oct 4 17:16:50 2022 -0500
CAMEL-18574: camel-core - Add disabled option to EIPs
---
.../apache/camel/processor/DisabledProcessor.java | 12 ++++++++++++
.../org/apache/camel/reifier/DisabledReifier.java | 4 +++-
.../api/management/mbean/ManagedDisabledMBean.java} | 18 +++++-------------
.../management/DefaultManagementObjectStrategy.java | 4 ++++
.../camel/management/mbean/ManagedDisabled.java} | 20 ++++++++++++--------
5 files changed, 36 insertions(+), 22 deletions(-)
diff --git a/core/camel-core-processor/src/main/java/org/apache/camel/processor/DisabledProcessor.java b/core/camel-core-processor/src/main/java/org/apache/camel/processor/DisabledProcessor.java
index 3a92b821041..7797ebab16a 100644
--- a/core/camel-core-processor/src/main/java/org/apache/camel/processor/DisabledProcessor.java
+++ b/core/camel-core-processor/src/main/java/org/apache/camel/processor/DisabledProcessor.java
@@ -29,6 +29,7 @@ public class DisabledProcessor extends AsyncProcessorSupport implements IdAware,
private String id;
private String routeId;
+ private String nodeType;
@Override
public boolean process(Exchange exchange, AsyncCallback callback) {
@@ -62,6 +63,17 @@ public class DisabledProcessor extends AsyncProcessorSupport implements IdAware,
this.routeId = routeId;
}
+ /**
+ * Node type that was disabled
+ */
+ public String getNodeType() {
+ return nodeType;
+ }
+
+ public void setNodeType(String nodeType) {
+ this.nodeType = nodeType;
+ }
+
@Override
protected void doStart() throws Exception {
// noop
diff --git a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java
index 6b7961abb9a..999bdbaeeb6 100644
--- a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java
+++ b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java
@@ -29,6 +29,8 @@ public class DisabledReifier extends ProcessorReifier {
@Override
public Processor createProcessor() {
- return new DisabledProcessor();
+ DisabledProcessor answer = new DisabledProcessor();
+ answer.setNodeType(definition.getShortName());
+ return answer;
}
}
diff --git a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedDisabledMBean.java
similarity index 62%
copy from core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java
copy to core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedDisabledMBean.java
index 6b7961abb9a..ae542b91732 100644
--- a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java
+++ b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedDisabledMBean.java
@@ -14,21 +14,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.camel.reifier;
+package org.apache.camel.api.management.mbean;
-import org.apache.camel.Processor;
-import org.apache.camel.Route;
-import org.apache.camel.model.ProcessorDefinition;
-import org.apache.camel.processor.DisabledProcessor;
+import org.apache.camel.api.management.ManagedAttribute;
-public class DisabledReifier extends ProcessorReifier {
+public interface ManagedDisabledMBean extends ManagedProcessorMBean {
- public DisabledReifier(Route route, ProcessorDefinition<?> definition) {
- super(route, definition);
- }
+ @ManagedAttribute(description = "The node type that was disabled")
+ String getNodeType();
- @Override
- public Processor createProcessor() {
- return new DisabledProcessor();
- }
}
diff --git a/core/camel-management/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java b/core/camel-management/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java
index 08a9aa6d026..fc234018808 100644
--- a/core/camel-management/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java
+++ b/core/camel-management/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java
@@ -47,6 +47,7 @@ import org.apache.camel.management.mbean.ManagedConvertBody;
import org.apache.camel.management.mbean.ManagedCustomLoadBalancer;
import org.apache.camel.management.mbean.ManagedDataFormat;
import org.apache.camel.management.mbean.ManagedDelayer;
+import org.apache.camel.management.mbean.ManagedDisabled;
import org.apache.camel.management.mbean.ManagedDynamicRouter;
import org.apache.camel.management.mbean.ManagedEndpoint;
import org.apache.camel.management.mbean.ManagedEnricher;
@@ -126,6 +127,7 @@ import org.apache.camel.model.loadbalancer.CustomLoadBalancerDefinition;
import org.apache.camel.processor.ChoiceProcessor;
import org.apache.camel.processor.ClaimCheckProcessor;
import org.apache.camel.processor.Delayer;
+import org.apache.camel.processor.DisabledProcessor;
import org.apache.camel.processor.DynamicRouter;
import org.apache.camel.processor.Enricher;
import org.apache.camel.processor.ExchangePatternProcessor;
@@ -344,6 +346,8 @@ public class DefaultManagementObjectStrategy implements ManagementObjectStrategy
answer = new ManagedClaimCheck(context, (ClaimCheckProcessor) target, definition);
} else if (target instanceof Delayer) {
answer = new ManagedDelayer(context, (Delayer) target, definition);
+ } else if (target instanceof DisabledProcessor) {
+ answer = new ManagedDisabled(context, (DisabledProcessor) target, definition);
} else if (target instanceof Throttler) {
answer = new ManagedThrottler(context, (Throttler) target, definition);
} else if (target instanceof DynamicRouter) {
diff --git a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedDisabled.java
similarity index 58%
copy from core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java
copy to core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedDisabled.java
index 6b7961abb9a..74ae15bf48b 100644
--- a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/DisabledReifier.java
+++ b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedDisabled.java
@@ -14,21 +14,25 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.camel.reifier;
+package org.apache.camel.management.mbean;
-import org.apache.camel.Processor;
-import org.apache.camel.Route;
+import org.apache.camel.CamelContext;
+import org.apache.camel.api.management.ManagedResource;
+import org.apache.camel.api.management.mbean.ManagedDisabledMBean;
import org.apache.camel.model.ProcessorDefinition;
import org.apache.camel.processor.DisabledProcessor;
-public class DisabledReifier extends ProcessorReifier {
+@ManagedResource(description = "Managed Disabled Processor")
+public class ManagedDisabled extends ManagedProcessor implements ManagedDisabledMBean {
+ private final DisabledProcessor processor;
- public DisabledReifier(Route route, ProcessorDefinition<?> definition) {
- super(route, definition);
+ public ManagedDisabled(CamelContext context, DisabledProcessor processor, ProcessorDefinition<?> definition) {
+ super(context, processor, definition);
+ this.processor = processor;
}
@Override
- public Processor createProcessor() {
- return new DisabledProcessor();
+ public String getNodeType() {
+ return processor.getNodeType();
}
}