⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 endpointinfoexpressionevaluator.java

📁 提供ESB 应用mule源代码 提供ESB 应用mule源代码
💻 JAVA
字号:
/* * $Id: EndpointInfoExpressionEvaluator.java 11967 2008-06-05 20:32:19Z dfeist $ * -------------------------------------------------------------------------------------- * Copyright (c) MuleSource, Inc.  All rights reserved.  http://www.mulesource.com * * The software in this package is published under the terms of the CPAL v1.0 * license, a copy of which has been included with this distribution in the * LICENSE.txt file. */package org.mule.util.expression;import org.mule.MuleServer;import org.mule.config.i18n.CoreMessages;import org.mule.endpoint.AbstractEndpointBuilder;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;/** * Looks up information about a global endpoint * * @see org.mule.util.expression.ExpressionEvaluator * @see org.mule.util.expression.ExpressionEvaluatorManager */public class EndpointInfoExpressionEvaluator implements ExpressionEvaluator{    public static final String NAME = "endpoint";    /**     * logger used by this class     */    protected transient final Log logger = LogFactory.getLog(EndpointInfoExpressionEvaluator.class);    public Object evaluate(String expression, Object message)    {        int i = expression.indexOf(".");        String endpointName;        String property;        if(i > 0)        {            endpointName = expression.substring(0, i);            property = expression.substring(i + 1);        }        else        {            throw new IllegalArgumentException(CoreMessages.expressionMalformed(expression, getName()).getMessage());        }        AbstractEndpointBuilder eb = (AbstractEndpointBuilder)MuleServer.getMuleContext().getRegistry().lookupEndpointBuilder(endpointName);        if(eb!=null)        {            if(property.equalsIgnoreCase("address"))            {                return eb.getEndpointBuilder().getEndpoint().getAddress();            }            else //TODO more properties            {                throw new IllegalArgumentException(CoreMessages.expressionInvalidForProperty(property, expression).getMessage());            }        }        else        {            logger.warn("There is no endpoint registered with name: " + endpointName);            return null;        }    }    /** {@inheritDoc} */    public String getName()    {        return NAME;    }    /** {@inheritDoc} */    public void setName(String name)    {        throw new UnsupportedOperationException("setName");    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -