List of usage examples for org.springframework.integration.jdbc StoredProcExecutor afterPropertiesSet
@Override public void afterPropertiesSet()
From source file:org.springframework.integration.jdbc.StoredProcExecutorTests.java
@Test public void testStoredProcExecutorWithNullProcedureName() { DataSource datasource = mock(DataSource.class); try {// ww w . j av a2 s . c om StoredProcExecutor storedProcExecutor = new StoredProcExecutor(datasource); storedProcExecutor.setBeanFactory(mock(BeanFactory.class)); storedProcExecutor.afterPropertiesSet(); } catch (IllegalArgumentException e) { assertEquals( "You must either provide a " + "Stored Procedure Name or a Stored Procedure Name Expression.", e.getMessage()); return; } fail("Exception expected."); }
From source file:org.springframework.integration.jdbc.StoredProcExecutorTests.java
@Test public void testGetStoredProcedureNameExpressionAsString() throws Exception { DataSource datasource = mock(DataSource.class); StoredProcExecutor storedProcExecutor = new StoredProcExecutor(datasource); final ExpressionFactoryBean efb = new ExpressionFactoryBean("headers['stored_procedure_name']"); efb.afterPropertiesSet();//from w w w. ja va2 s .co m final Expression expression = efb.getObject(); storedProcExecutor.setStoredProcedureNameExpression(expression); storedProcExecutor.setBeanFactory(mock(BeanFactory.class)); storedProcExecutor.afterPropertiesSet(); assertEquals("headers['stored_procedure_name']", storedProcExecutor.getStoredProcedureNameExpressionAsString()); }
From source file:org.springframework.integration.jdbc.StoredProcExecutorTests.java
@Test public void testGetStoredProcedureNameExpressionAsString2() throws Exception { DataSource datasource = mock(DataSource.class); StoredProcExecutor storedProcExecutor = new StoredProcExecutor(datasource); storedProcExecutor.setStoredProcedureName("123"); storedProcExecutor.setBeanFactory(mock(BeanFactory.class)); storedProcExecutor.afterPropertiesSet(); assertEquals("123", storedProcExecutor.getStoredProcedureName()); assertEquals("123", storedProcExecutor.getStoredProcedureNameExpressionAsString()); }
From source file:org.springframework.integration.jdbc.StoredProcExecutorTests.java
@Test public void testStoredProcExecutorWithNonResolvingExpression() throws Exception { final DataSource datasource = mock(DataSource.class); final StoredProcExecutor storedProcExecutor = new StoredProcExecutor(datasource); final ExpressionFactoryBean efb = new ExpressionFactoryBean("headers['stored_procedure_name']"); efb.afterPropertiesSet();/*from w ww . j a v a 2 s . co m*/ final Expression expression = efb.getObject(); storedProcExecutor.setStoredProcedureNameExpression(expression); storedProcExecutor.setBeanFactory(mock(BeanFactory.class)); storedProcExecutor.afterPropertiesSet(); this.mockTheOperationsCache(storedProcExecutor); //This should work storedProcExecutor.executeStoredProcedure( MessageBuilder.withPayload("test").setHeader("stored_procedure_name", "123").build()); //This should cause an exception try { storedProcExecutor.executeStoredProcedure( MessageBuilder.withPayload("test").setHeader("some_other_header", "123").build()); } catch (IllegalArgumentException e) { assertEquals( "Unable to resolve Stored Procedure/Function name for the provided Expression 'headers['stored_procedure_name']'.", e.getMessage()); return; } fail("IllegalArgumentException expected."); }
From source file:org.springframework.integration.jdbc.StoredProcExecutorTests.java
@Test public void testStoredProcExecutorJdbcCallOperationsCache() throws Exception { final DataSource datasource = mock(DataSource.class); final StoredProcExecutor storedProcExecutor = new StoredProcExecutor(datasource); final ExpressionFactoryBean efb = new ExpressionFactoryBean("headers['stored_procedure_name']"); efb.afterPropertiesSet();/*from w w w . j av a 2 s .c o m*/ final Expression expression = efb.getObject(); storedProcExecutor.setStoredProcedureNameExpression(expression); storedProcExecutor.setBeanFactory(mock(BeanFactory.class)); storedProcExecutor.afterPropertiesSet(); this.mockTheOperationsCache(storedProcExecutor); for (int i = 1; i <= 3; i++) { storedProcExecutor.executeStoredProcedure( MessageBuilder.withPayload("test").setHeader("stored_procedure_name", "123").build()); } final CacheStats stats = (CacheStats) storedProcExecutor.getJdbcCallOperationsCacheStatistics(); LOGGER.info(stats); LOGGER.info(stats.totalLoadTime() / 1000 / 1000); assertEquals(stats.hitCount(), 2); assertEquals(stats.missCount(), 1); assertEquals(stats.loadCount(), 1); }
From source file:org.springframework.integration.jdbc.StoredProcExecutorTests.java
@Test public void testSetJdbcCallOperationsCacheSize() throws Exception { final DataSource datasource = mock(DataSource.class); final StoredProcExecutor storedProcExecutor = new StoredProcExecutor(datasource); storedProcExecutor.setJdbcCallOperationsCacheSize(0); final ExpressionFactoryBean efb = new ExpressionFactoryBean("headers['stored_procedure_name']"); efb.afterPropertiesSet();/*from w ww. ja va 2s. c o m*/ final Expression expression = efb.getObject(); storedProcExecutor.setStoredProcedureNameExpression(expression); storedProcExecutor.setBeanFactory(mock(BeanFactory.class)); storedProcExecutor.afterPropertiesSet(); this.mockTheOperationsCache(storedProcExecutor); for (int i = 1; i <= 10; i++) { storedProcExecutor.executeStoredProcedure( MessageBuilder.withPayload("test").setHeader("stored_procedure_name", "123").build()); } final CacheStats stats = (CacheStats) storedProcExecutor.getJdbcCallOperationsCacheStatistics(); LOGGER.info(stats); assertEquals("Expected a cache misscount of 10", 10, stats.missCount()); }