如何"禁用"骆驼蓝图中的bean引用?

时间:2016-12-21 15:04:15

标签: java spring apache-camel blueprint-osgi

我使用骆驼。这是我的蓝图(摘录):

<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
    <cm:property-placeholder id="placeholder" persistent-id="com.adelco.articulos" />
    <!-- Configures the Inbound and Outbound SAP Connections -->
    <bean id="sap-configuration" class="org.fusesource.camel.component.sap.SapConnectionConfiguration">
        .
        .
    </bean>

    <!--A lot of things here, let's omit them-->
    <!-- Route beans--> 
    <bean id="rutaSTEPEntrada" class="com.adelco.articulos.RutaSTEPEntrada"/>
    <bean id="rutaSTEPSap" class="com.adelco.articulos.RutaSTEPSap"/>

    <camelContext id="camel-articulos" xmlns="http://camel.apache.org/schema/blueprint">
        <routeBuilder ref="rutaSTEPEntrada"/>   
        <routeBuilder ref="rutaSTEPSap"/>
    </camelContext>

</blueprint>

我想&#34;禁用&#34; bean&#34; sap-configuration &#34;但不使用XML注释。像这样:

<bean id="sap-configuration" enabled=${ENABLED} class="org.fusesource.camel.component.sap.SapConnectionConfiguration">
    .
    .
</bean>

我可以使用&#34; autoStartup &#34;来定义我要激活的驼峰路线。和财产占位符&#34; autoStartup = $ {ENABLED} &#34;但我无法找到如何用豆子做这件事。

1 个答案:

答案 0 :(得分:2)

这是不可能的。它的OSGi蓝图如何工作。如果您定义<bean>,那么它正在使用中。