Example usage for org.springframework.beans.factory ListableBeanFactory containsBean

List of usage examples for org.springframework.beans.factory ListableBeanFactory containsBean

Introduction

In this page you can find the example usage for org.springframework.beans.factory ListableBeanFactory containsBean.

Prototype

boolean containsBean(String name);

Source Link

Document

Does this bean factory contain a bean definition or externally registered singleton instance with the given name?

Usage

From source file:com.laxser.blitz.util.SpringUtils.java

public static <T> T getBean(ListableBeanFactory bf, String beanName) {
    @SuppressWarnings("unchecked")
    T bean = (T) (bf.containsBean(beanName) ? bf.getBean(beanName) : null);
    return bean;/* ww  w .  ja v  a  2 s  . c om*/
}

From source file:pt.webdetails.cns.notifications.sparkl.kettle.baserver.web.utils.HttpConnectionHelper.java

protected static Response invokePluginEndpoint(final String pluginName, final String endpointPath,
        final String httpMethod, final Map<String, String> queryParameters) {

    Response response = new Response();

    IPluginManager pluginManager = PentahoSystem.get(IPluginManager.class);
    if (pluginManager == null) {
        logger.error("Failed to get plugin manager");
        return response;
    }//from  www  . j  a v  a2 s . c  o m

    ClassLoader classLoader = pluginManager.getClassLoader(pluginName);
    if (classLoader == null) {
        logger.error("No such plugin: " + pluginName);
        return response;
    }

    ListableBeanFactory beanFactory = pluginManager.getBeanFactory(pluginName);

    if (beanFactory == null || !beanFactory.containsBean("api")) {
        logger.error("Bean not found for plugin: " + pluginName);
        return response;
    }

    JAXRSPluginServlet pluginServlet = (JAXRSPluginServlet) beanFactory.getBean("api",
            JAXRSPluginServlet.class);

    // create servlet request
    final InternalHttpServletRequest servletRequest = new InternalHttpServletRequest(httpMethod, "", "/plugin",
            "/" + pluginName + "/api" + endpointPath);

    for (Map.Entry<String, String> entry : queryParameters.entrySet()) {
        servletRequest.setParameter(entry.getKey(), entry.getValue());
    }

    // create servlet response
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    final InternalHttpServletResponse servletResponse = new InternalHttpServletResponse(outputStream);

    ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
    try {
        // used for calculating the response time
        long startTime = System.currentTimeMillis();

        Thread.currentThread().setContextClassLoader(classLoader);
        pluginServlet.service(servletRequest, servletResponse);
        long responseTime = System.currentTimeMillis() - startTime;

        response.setStatusCode(servletResponse.getStatus());
        response.setResult(servletResponse.getContentAsString());
        response.setResponseTime(responseTime);

    } catch (ServletException ex) {
        logger.error("Failed ", ex);
        return response;
    } catch (IOException ex) {
        logger.error("Failed ", ex);
        return response;
    } finally {
        Thread.currentThread().setContextClassLoader(contextClassLoader);
    }

    return response;
}

From source file:pt.webdetails.cpf.messaging.BeanyPluginCall.java

private static JAXRSPluginServlet getApiBean(String pluginId) {
    IPluginManager pluginManager = PentahoSystem.get(IPluginManager.class);
    ListableBeanFactory beanFactory = pluginManager.getBeanFactory(pluginId);

    if (beanFactory == null) {
        if (pluginManager.getClassLoader(pluginId) == null) {
            logger.error("No such plugin: " + pluginId);
        } else {/*from w  w  w . ja v a  2  s  .  c  om*/
            logger.error("No bean factory for plugin: " + pluginId);
        }
        return null;
    }

    if (!beanFactory.containsBean("api")) {
        logger.error("'api' bean not found in " + pluginId);
        return null;
    }

    return (JAXRSPluginServlet) beanFactory.getBean("api", JAXRSPluginServlet.class);
}

From source file:org.pentaho.di.baserver.utils.web.HttpConnectionHelper.java

protected Response invokePluginEndpoint(final String pluginName, final String endpointPath,
        final String httpMethod, final Map<String, String> queryParameters) {

    Response response = new Response();
    response.setStatusCode(404);//from ww  w.jav  a  2  s  . c  o m
    response.setResponseTime(0);

    IPluginManager pluginManager = getPluginManager();
    if (pluginManager == null) {
        logger.error("Failed to get plugin manager");
        return response;
    }

    ClassLoader classLoader = getPluginClassLoader(pluginName, pluginManager);
    if (classLoader == null) {
        logger.error("No such plugin: " + pluginName);
        return response;
    }

    ListableBeanFactory beanFactory = getListableBeanFactory(pluginName, pluginManager);

    if (beanFactory == null || !beanFactory.containsBean("api")) {
        logger.error("Bean not found for plugin: " + pluginName);
        return response;
    }

    JAXRSPluginServlet pluginServlet = getJAXRSPluginServlet(beanFactory);

    // create servlet request
    URL fullyQualifiedServerURL;
    try {
        fullyQualifiedServerURL = getUrl();
    } catch (MalformedURLException e) {
        logger.error("FullyQualifiedServerURL is incorrect");
        return response;
    }
    final InternalHttpServletRequest servletRequest = new InternalHttpServletRequest(httpMethod,
            fullyQualifiedServerURL, "/plugin", "/" + pluginName + "/api" + endpointPath);

    try {
        insertParameters(httpMethod, queryParameters, servletRequest);
    } catch (UnsupportedEncodingException e) {
        logger.error("Can't encode parameters");
        return response;
    }

    // create servlet response
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    final InternalHttpServletResponse servletResponse = new InternalHttpServletResponse(outputStream);

    ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
    try {
        // used for calculating the response time
        long startTime = System.currentTimeMillis();

        Thread.currentThread().setContextClassLoader(classLoader);
        pluginServlet.service(servletRequest, servletResponse);
        long responseTime = System.currentTimeMillis() - startTime;

        response.setStatusCode(servletResponse.getStatus());
        response.setResult(servletResponse.getContentAsString());
        response.setResponseTime(responseTime);

    } catch (ServletException ex) {
        logger.error("Failed ", ex);
        return response;
    } catch (IOException ex) {
        logger.error("Failed ", ex);
        return response;
    } finally {
        Thread.currentThread().setContextClassLoader(contextClassLoader);
    }

    return response;
}

From source file:pt.webdetails.cpf.InterPluginCall.java

private Object getBeanObject() {
    ListableBeanFactory beanFactory = getPluginManager().getBeanFactory(plugin.getName());

    if (beanFactory == null) {
        if (pluginManager.getClassLoader(plugin.getName()) == null) {
            logger.error("No such plugin: " + plugin.getName());
        } else {// www.  ja  va 2  s . co  m
            logger.error("No bean factory for plugin: " + plugin.getName());
        }
        return null;
    }

    if (!beanFactory.containsBean(service)) {
        logger.error("'" + service + "' bean not found in " + plugin.getName());
        return null;
    }

    return beanFactory.getBean(service);
}