001/*
002 * Licensed to the Apache Software Foundation (ASF) under one or more
003 * contributor license agreements.  See the NOTICE file distributed with
004 * this work for additional information regarding copyright ownership.
005 * The ASF licenses this file to You under the Apache License, Version 2.0
006 * (the "License"); you may not use this file except in compliance with
007 * the License.  You may obtain a copy of the License at
008 *
009 *      http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017package org.apache.camel.management.mbean;
018
019import org.apache.camel.CamelContext;
020import org.apache.camel.api.management.ManagedResource;
021import org.apache.camel.api.management.mbean.ManagedDumpRoutesStrategyMBean;
022import org.apache.camel.spi.DumpRoutesStrategy;
023import org.apache.camel.spi.ManagementStrategy;
024
025@ManagedResource(description = "Managed DumpRouteStrategyMBean")
026public class ManagedDumpRouteStrategy implements ManagedDumpRoutesStrategyMBean {
027
028    private final CamelContext camelContext;
029    private final DumpRoutesStrategy dumpRoutesStrategy;
030
031    public ManagedDumpRouteStrategy(CamelContext camelContext, DumpRoutesStrategy dumpRoutesStrategy) {
032        this.camelContext = camelContext;
033        this.dumpRoutesStrategy = dumpRoutesStrategy;
034    }
035
036    public void init(ManagementStrategy strategy) {
037        // do nothing
038    }
039
040    public CamelContext getContext() {
041        return camelContext;
042    }
043
044    public DumpRoutesStrategy getDumpRoutesStrategy() {
045        return dumpRoutesStrategy;
046    }
047
048    @Override
049    public void dumpRoutes(String format) {
050        dumpRoutesStrategy.dumpRoutes(format);
051    }
052
053    @Override
054    public String getCamelId() {
055        return camelContext.getName();
056    }
057
058    @Override
059    public String getCamelManagementName() {
060        return camelContext.getManagementName();
061    }
062
063    @Override
064    public String getInclude() {
065        return dumpRoutesStrategy.getInclude();
066    }
067
068    @Override
069    public void setInclude(String include) {
070        dumpRoutesStrategy.setInclude(include);
071    }
072
073    @Override
074    public boolean isLog() {
075        return dumpRoutesStrategy.isLog();
076    }
077
078    @Override
079    public void setLog(boolean log) {
080        dumpRoutesStrategy.setLog(log);
081    }
082
083    @Override
084    public String getOutput() {
085        return dumpRoutesStrategy.getOutput();
086    }
087
088    @Override
089    public void setOutput(String output) {
090        dumpRoutesStrategy.setOutput(output);
091    }
092
093    @Override
094    public boolean isUriAsParameters() {
095        return dumpRoutesStrategy.isUriAsParameters();
096    }
097
098    @Override
099    public void setUriAsParameters(boolean uriAsParameters) {
100        dumpRoutesStrategy.setUriAsParameters(uriAsParameters);
101    }
102
103    @Override
104    public boolean isResolvePlaceholders() {
105        return dumpRoutesStrategy.isResolvePlaceholders();
106    }
107
108    @Override
109    public void setResolvePlaceholders(boolean resolvePlaceholders) {
110        dumpRoutesStrategy.setResolvePlaceholders(resolvePlaceholders);
111    }
112}