use of org.apache.camel.Component in project camel by apache.
the class ComponentConfigurationTest method testCreateNewDefaultComponentEndpoint.
@Test
public void testCreateNewDefaultComponentEndpoint() throws Exception {
Component component = context.getComponent("cheese");
ComponentConfiguration configuration = component.createComponentConfiguration();
assertNotNull("Should have created a ComponentConfiguration for component " + component, configuration);
// configure the base URI properties
configuration.setBaseUri("something");
// lets try set and get a valid parameter
configuration.setParameter("foo", "xyz");
configuration.setParameter("bar", 5);
NonUriEndpoint endpoint = TestSupport.assertIsInstanceOf(NonUriEndpoint.class, configuration.createEndpoint());
assertEquals("foo", "xyz", endpoint.getFoo());
assertEquals("bar", 5, endpoint.getBar());
LOG.info("Created endpoint " + endpoint + " on URI " + endpoint.getEndpointUri());
// lets try configure a parameter
configuration.setEndpointParameter(endpoint, "bar", 6);
assertEquals("bar", 6, endpoint.getBar());
// lets try configure an invalid parameter
try {
configuration.setEndpointParameter(endpoint, "doesNotExist", 1000);
fail("Should have got InvalidPropertyException thrown!");
} catch (InvalidPropertyException e) {
LOG.info("Got expected exception: " + e);
}
ComponentConfiguration badConfiguration = component.createComponentConfiguration();
badConfiguration.setBaseUri(configuration.getBaseUri());
badConfiguration.setParameters(configuration.getParameters());
// lets try set an invalid parameter on a configuration
// there is no way to validate on non UriEndpoint unless the endpoint
// creates its own configuration object so this always works...
badConfiguration.setParameter("doesNotExist", 1000);
// however it fails if we now try create an
try {
badConfiguration.createEndpoint();
fail("Should have got ResolveEndpointFailedException thrown!");
} catch (ResolveEndpointFailedException e) {
LOG.info("Got expected exception: " + e);
}
}
use of org.apache.camel.Component in project camel by apache.
the class ComponentConfigurationTest method testCreateNewSedaUriEndpoint.
/**
* Use the {@link ComponentConfiguration}, set some parameters then lets turn it into an endpoint
*/
@Test
public void testCreateNewSedaUriEndpoint() throws Exception {
Component component = context.getComponent("seda");
ComponentConfiguration configuration = component.createComponentConfiguration();
assertNotNull("Should have created a ComponentConfiguration for component " + component, configuration);
// configure the base URI properties
configuration.setBaseUri("foo");
// lets try set and get a valid parameter
configuration.setParameter("concurrentConsumers", 5);
configuration.setParameter("size", 1000);
// lets try set an invalid parameter
try {
configuration.setParameter("doesNotExist", 1000);
fail("Should have got InvalidPropertyException thrown!");
} catch (InvalidPropertyException e) {
LOG.info("Got expected exception: " + e);
}
SedaEndpoint endpoint = TestSupport.assertIsInstanceOf(SedaEndpoint.class, configuration.createEndpoint());
assertEquals("concurrentConsumers", 5, endpoint.getConcurrentConsumers());
assertEquals("size", 1000, endpoint.getSize());
assertEquals("endpoint uri", "foo?concurrentConsumers=5&size=1000", endpoint.getEndpointUri());
// lets try configure a parameter
configuration.setEndpointParameter(endpoint, "concurrentConsumers", 6);
assertEquals("concurrentConsumers", 6, endpoint.getConcurrentConsumers());
// lets try set an invalid parameter
try {
configuration.setEndpointParameter(endpoint, "doesNotExist", 1000);
fail("Should have got InvalidPropertyException thrown!");
} catch (InvalidPropertyException e) {
LOG.info("Got expected exception: " + e);
}
}
use of org.apache.camel.Component in project camel by apache.
the class ComponentConfigurationTest method testSetParametersFromUriStringOnDefaultComponent.
/**
* Tests that parameters can be used on non-{@link UriEndpointComponent} implementations
* but that their types tend to be String until we try to create an Endpoint
*/
@Test
public void testSetParametersFromUriStringOnDefaultComponent() throws Exception {
Component component = context.getComponent("cheese");
ComponentConfiguration configuration = component.createComponentConfiguration();
assertNotNull("Should have created a ComponentConfiguration for component " + component, configuration);
// configure the uri and query parameters
configuration.setUriString("somePath?foo=something&bar=123");
// notice the parameters are all Strings since we don't use UriEndpointComponent
assertEquals("foo", "something", configuration.getParameter("foo"));
assertEquals("bar", "123", configuration.getParameter("bar"));
configuration.setUriString("somePath?foo=another&bar=456");
assertEquals("foo", "another", configuration.getParameter("foo"));
assertEquals("bar", "456", configuration.getParameter("bar"));
}
use of org.apache.camel.Component in project camel by apache.
the class DefaultCamelContextResolverTest method testComponentWithBothNames.
@Test
public void testComponentWithBothNames() throws Exception {
Component component = context.getComponent("yellow");
assertNotNull("Component not found in registry", component);
assertTrue("Wrong instance type of the Component", component instanceof SampleComponent);
assertFalse("Here we should NOT have the fallback Component", ((SampleComponent) component).isFallback());
}
use of org.apache.camel.Component in project camel by apache.
the class DefaultCamelContextResolverTest method testNullLookupComponent.
@Test
public void testNullLookupComponent() throws Exception {
Component component = context.getComponent("xxxxxxxxx");
assertNull("Non-existent Component should be null", component);
}
Aggregations