Search in sources :

Example 11 with PollingConsumer

use of org.apache.camel.PollingConsumer in project camel by apache.

the class RssUriEncodingIssueTest method testUriIssue.

@Test
public void testUriIssue() throws Exception {
    String uri = "rss:http://api.flickr.com/services/feeds/photos_public.gne?id=23353282@N05&tags=lowlands&lang=en-us&format=rss_200";
    PollingConsumer consumer = context.getEndpoint(uri).createPollingConsumer();
    consumer.start();
    Exchange exchange = consumer.receive();
    log.info("Receive " + exchange);
    assertNotNull(exchange);
    assertNotNull(exchange.getIn().getBody());
    consumer.stop();
}
Also used : Exchange(org.apache.camel.Exchange) PollingConsumer(org.apache.camel.PollingConsumer) Test(org.junit.Test)

Example 12 with PollingConsumer

use of org.apache.camel.PollingConsumer in project camel by apache.

the class InvalidConfigurationTest method testSMTPSCanNotBeUsedForConsumingMails.

@Test
public void testSMTPSCanNotBeUsedForConsumingMails() throws Exception {
    Endpoint endpoint = context.getEndpoint("smtps://localhost?username=james");
    PollingConsumer consumer = endpoint.createPollingConsumer();
    try {
        consumer.start();
        fail("Should have thrown NoSuchProviderException as stmp protocol cannot be used for consuming mails");
    } catch (IllegalArgumentException e) {
    // expected
    }
}
Also used : PollingConsumer(org.apache.camel.PollingConsumer) Endpoint(org.apache.camel.Endpoint) Test(org.junit.Test)

Example 13 with PollingConsumer

use of org.apache.camel.PollingConsumer in project camel by apache.

the class FtpConsumerDeleteNoWritePermissionTest method testConsumerDeleteNoWritePermission.

@Test
public void testConsumerDeleteNoWritePermission() throws Exception {
    PollingConsumer consumer = context.getEndpoint(getFtpUrl()).createPollingConsumer();
    consumer.start();
    Exchange out = consumer.receive(3000);
    assertNotNull("Should get the file", out);
    try {
        // give consumer time to try to delete the file
        Thread.sleep(1000);
        consumer.stop();
    } catch (GenericFileOperationFailedException fofe) {
    // expected, ignore
    }
}
Also used : Exchange(org.apache.camel.Exchange) PollingConsumer(org.apache.camel.PollingConsumer) GenericFileOperationFailedException(org.apache.camel.component.file.GenericFileOperationFailedException) Test(org.junit.Test)

Example 14 with PollingConsumer

use of org.apache.camel.PollingConsumer in project camel by apache.

the class ManagedConsumerCacheTest method testManageConsumerCache.

public void testManageConsumerCache() throws Exception {
    // JMX tests dont work well on AIX CI servers (hangs them)
    if (isPlatform("aix")) {
        return;
    }
    // always register services in JMX so we can enlist our consumer template/cache
    context.getManagementStrategy().getManagementAgent().setRegisterAlways(true);
    ConsumerCache cache = new ConsumerCache(this, context);
    context.addService(cache);
    template.sendBody("direct:start", "Hello World");
    Endpoint endpoint = context.getEndpoint("seda:queue");
    PollingConsumer consumer = cache.getConsumer(endpoint);
    Exchange out = consumer.receive(3000);
    assertNotNull("Should got an exchange", out);
    assertEquals("Hello World", out.getIn().getBody());
    // get the stats for the route
    MBeanServer mbeanServer = getMBeanServer();
    Set<ObjectName> set = mbeanServer.queryNames(new ObjectName("*:type=services,*"), null);
    List<ObjectName> list = new ArrayList<ObjectName>(set);
    ObjectName on = null;
    for (ObjectName name : list) {
        if (name.getCanonicalName().contains("ConsumerCache")) {
            on = name;
            break;
        }
    }
    assertNotNull("Should have found ConsumerCache", on);
    Integer max = (Integer) mbeanServer.getAttribute(on, "MaximumCacheSize");
    assertEquals(1000, max.intValue());
    Integer current = (Integer) mbeanServer.getAttribute(on, "Size");
    assertEquals(1, current.intValue());
    String source = (String) mbeanServer.getAttribute(on, "Source");
    assertNotNull(source);
    assertTrue(source.contains("testManageConsumerCache"));
    // purge
    mbeanServer.invoke(on, "purge", null, null);
    current = (Integer) mbeanServer.getAttribute(on, "Size");
    assertEquals(0, current.intValue());
    // stop the consumer as it was purged from the cache
    // so we need to manually stop it
    consumer.stop();
    cache.stop();
}
Also used : Exchange(org.apache.camel.Exchange) PollingConsumer(org.apache.camel.PollingConsumer) Endpoint(org.apache.camel.Endpoint) ArrayList(java.util.ArrayList) ConsumerCache(org.apache.camel.impl.ConsumerCache) MBeanServer(javax.management.MBeanServer) ObjectName(javax.management.ObjectName)

Example 15 with PollingConsumer

use of org.apache.camel.PollingConsumer in project camel by apache.

the class CamelPostProcessorHelper method createInjectionPollingConsumer.

/**
     * Factory method to create a started
     * {@link org.apache.camel.PollingConsumer} to be injected into a POJO
     */
protected PollingConsumer createInjectionPollingConsumer(Endpoint endpoint, Object bean, String beanName) {
    try {
        PollingConsumer consumer = endpoint.createPollingConsumer();
        startService(consumer, endpoint.getCamelContext(), bean, beanName);
        return consumer;
    } catch (Exception e) {
        throw ObjectHelper.wrapRuntimeCamelException(e);
    }
}
Also used : PollingConsumer(org.apache.camel.PollingConsumer) NoSuchBeanException(org.apache.camel.NoSuchBeanException) ProxyInstantiationException(org.apache.camel.ProxyInstantiationException)

Aggregations

PollingConsumer (org.apache.camel.PollingConsumer)21 Endpoint (org.apache.camel.Endpoint)9 Exchange (org.apache.camel.Exchange)9 Test (org.junit.Test)5 File (java.io.File)2 FailedToCreateConsumerException (org.apache.camel.FailedToCreateConsumerException)2 IsSingleton (org.apache.camel.IsSingleton)2 ArrayList (java.util.ArrayList)1 MBeanServer (javax.management.MBeanServer)1 ObjectName (javax.management.ObjectName)1 CamelExchangeException (org.apache.camel.CamelExchangeException)1 CamelExecutionException (org.apache.camel.CamelExecutionException)1 Consumer (org.apache.camel.Consumer)1 NoSuchBeanException (org.apache.camel.NoSuchBeanException)1 Processor (org.apache.camel.Processor)1 ProxyInstantiationException (org.apache.camel.ProxyInstantiationException)1 RuntimeCamelException (org.apache.camel.RuntimeCamelException)1 ServicePoolAware (org.apache.camel.ServicePoolAware)1 RouteBuilder (org.apache.camel.builder.RouteBuilder)1 GenericFileOperationFailedException (org.apache.camel.component.file.GenericFileOperationFailedException)1