private void stubGetListOfDatabaseConnectionsMethod( DatabaseAccessType... databaseAccessTypes ) throws ObjectFactoryException, DatasourceMgmtServiceException { List<IDatabaseConnection> databaseConnections = new LinkedList<IDatabaseConnection>(); for ( DatabaseAccessType databaseAccessType : databaseAccessTypes ) { IDatabaseConnection connection = mock( DatabaseConnection.class ); when( connection.getAccessType() ).thenReturn( databaseAccessType ); when( connection.getName() ).thenReturn( "" ); databaseConnections.add( connection ); } when( nonPooledDatasourceSystemListenerSpy.getListOfDatabaseConnections( any( IPentahoSession.class ) ) ) .thenReturn( databaseConnections ); }
@Test public void testRetrieveDatabaseConnection() throws Exception { when( mgmtService.getDatasourceByName( testName ) ).thenReturn( connection ); when( connection.getAccessType() ).thenReturn( DatabaseAccessType.ODBC ); service.retrieve( testName ); verify( service ).resolveDatabaseConnection( connection ); verify( cacheManager ).putInRegionCache( IDBDatasourceService.JDBC_DATASOURCE, testName, databaseConnectionDataSource ); }
@Test public void testRetrieveJNDIConnection_3() throws Exception { service = spy( getPreparedService( mgmtService, cacheManager, null, null ) ); when( mgmtService.getDatasourceByName( testName ) ).thenReturn( connection ); when( connection.getAccessType() ).thenReturn( DatabaseAccessType.JNDI ); service.retrieve( testName ); verify( service, times( 2 ) ).getJndiDataSource( anyString() ); verify( cacheManager, never() ).putInRegionCache( IDBDatasourceService.JDBC_DATASOURCE, testName, jndiDataSource ); }
@Test public void testRetrieveJNDIConnection_1() throws Exception { when( mgmtService.getDatasourceByName( testName ) ).thenReturn( connection ); when( connection.getAccessType() ).thenReturn( DatabaseAccessType.JNDI ); service.retrieve( testName ); verify( service ).getJndiDataSource( testName ); verify( cacheManager ).putInRegionCache( IDBDatasourceService.JDBC_DATASOURCE, testName, jndiDataSource ); }
@Test public void testRetrieveJNDIConnection_4() throws Exception { service = spy( getPreparedService( mgmtService, cacheManager, null, null ) ); when( mgmtService.getDatasourceByName( testName ) ).thenReturn( connection ); when( service.getJndiDataSource( testName ) ).thenThrow( DBDatasourceServiceException.class ).thenCallRealMethod(); when( connection.getAccessType() ).thenReturn( DatabaseAccessType.JNDI ); service.retrieve( testName ); verify( service, times( 2 ) ).getJndiDataSource( anyString() ); verify( cacheManager, never() ).putInRegionCache( IDBDatasourceService.JDBC_DATASOURCE, testName, jndiDataSource ); }
@Test public void testSetupPooledDataSourceForJNDI() { try { IDatabaseConnection databaseConnection = mock( IDatabaseConnection.class ); when( databaseConnection.getAccessType() ).thenReturn( DatabaseAccessType.JNDI ); PooledDatasourceHelper.setupPooledDataSource( databaseConnection ); fail( "Expecting the exception to be thrown" ); } catch ( DBDatasourceServiceException ex ) { assertNotNull( ex ); } }
@Before public void setUp(){ IDatabaseConnection mockConnection = mock(IDatabaseConnection.class); // Set it up - this is a JNDI connection when( mockConnection.getAccessType()).thenReturn( DatabaseAccessType.JNDI ); when( mockConnection.getDatabaseName()).thenReturn( dsName ); DataSource mockDs = mock(DataSource.class); IDatasourceMgmtService mockMgmtService = mock(IDatasourceMgmtService.class); spyService = spy(service ); try { when( mockMgmtService.getDatasourceByName( dsName ) ).thenReturn( mockConnection ); } catch ( DatasourceMgmtServiceException e ) { e.printStackTrace(); } try { doReturn(mockDs).when( spyService ).getJndiDataSource( dsName ); } catch ( DBDatasourceServiceException e ) { e.printStackTrace(); } doReturn( mockMgmtService ).when( spyService ).getDatasourceMgmtService(); service.clearCache(); }
@Before public void setUp(){ mockConnection = mock(IDatabaseConnection.class); // Set it up - this is a NATIVE connection when( mockConnection.getAccessType()).thenReturn( DatabaseAccessType.NATIVE ); when( mockConnection.getDatabaseName()).thenReturn( dsName ); DataSource mockDs = mock(DataSource.class); IDatasourceMgmtService mockMgmtService = mock(IDatasourceMgmtService.class); spyService = spy(service ); try { when( mockMgmtService.getDatasourceByName( dsName ) ).thenReturn( mockConnection ); } catch ( DatasourceMgmtServiceException e ) { e.printStackTrace(); } try { doReturn(mockDs).when( spyService ).resolveDatabaseConnection( mockConnection ); } catch ( DBDatasourceServiceException e ) { e.printStackTrace(); } doReturn( mockMgmtService ).when( spyService ).getDatasourceMgmtService(); service.clearCache(); }
public boolean addConnection( IDatabaseConnection connection ) throws ConnectionServiceException { ensureDataAccessPermission(); try { if ( connection.getAccessType() != null && connection.getAccessType().equals( DatabaseAccessType.JNDI ) ) { IPentahoConnection pentahoConnection = null; pentahoConnection = PentahoConnectionFactory
@Before public void setUp() { mockConnection = mock( IDatabaseConnection.class ); // Set it up - this is a NATIVE connection when( mockConnection.getAccessType() ).thenReturn( DatabaseAccessType.NATIVE ); when( mockConnection.getDatabaseName() ).thenReturn( dsName ); DataSource mockDs = mock( DataSource.class ); IDatasourceMgmtService mockMgmtService = mock( IDatasourceMgmtService.class ); DynamicallyPooledOrJndiDatasourceService dynamic = new DynamicallyPooledOrJndiDatasourceService(); dynamic.setNonPooledDatasourceService( nonPooledSpyService ); dynamic.setPooledDatasourceService( pooledSpyService ); spyService = spy(dynamic ); try { when( mockMgmtService.getDatasourceByName( dsName ) ).thenReturn( mockConnection ); } catch ( DatasourceMgmtServiceException e ) { e.printStackTrace(); } try { doReturn( mockDs ).when( nonPooledSpyService ).resolveDatabaseConnection( mockConnection ); doReturn( mockDs ).when( pooledSpyService ).resolveDatabaseConnection( mockConnection ); } catch ( DBDatasourceServiceException e ) { e.printStackTrace(); } doReturn( mockMgmtService ).when( nonPooledSpyService ).getDatasourceMgmtService(); doReturn( mockMgmtService ).when( pooledSpyService ).getDatasourceMgmtService(); doReturn( mockMgmtService ).when( spyService ).getDatasourceMgmtService(); spyService.clearCache(); }
public boolean updateConnection( IDatabaseConnection connection ) throws ConnectionServiceException { IDatabaseConnection conn = getConnectionByName( connection.getName() ); if ( conn != null ) { // conn.setDriverClass(connection.getDriverClass()); conn.setAccessType( connection.getAccessType() ); conn.setPassword( connection.getPassword() ); conn.setUsername( connection.getUsername() ); return true; } else { logger.error( Messages.getErrorString( "ConnectionServiceInMemoryDelegate.ERROR_0005_UNABLE_TO_UPDATE_CONNECTION", connection.getName(), null ) ); throw new ConnectionServiceException( Messages .getErrorString( "ConnectionServiceInMemoryDelegate.ERROR_0005_UNABLE_TO_UPDATE_CONNECTION", connection.getName(), null ) ); } }
@Override protected DataSource getDataSource( IDatabaseConnection connection ) { DataSource ds = null; try { if (!connection.getAccessType().equals( DatabaseAccessType.JNDI ) ) { ds = PooledDatasourceHelper.setupPooledDataSource( connection ); } else { ds = PooledDatasourceHelper.getJndiDataSource( connection.getDatabaseName() ); } } catch ( DBDatasourceServiceException e ) { Logger.error( this, Messages.getInstance().getErrorString( "DatasourceSystemListener.ERROR_0003_UNABLE_TO_POOL_DATASOURCE", connection.getName(), e.getMessage() ) ); //$NON-NLS-1$ } return ds; }
IDatabaseConnection databaseConnection = datasourceMgmtSvc.getDatasourceByName( dsName ); if ( databaseConnection != null && !databaseConnection.getAccessType().equals( DatabaseAccessType.JNDI ) ) { ds = resolveDatabaseConnection( databaseConnection );
rootAttrs.setAttribute( ConnectionModule.NAMESPACE, PROP_CONTYPE, setNull( databaseConnection.getAccessType() .getName() ) ); rootAttrs.setAttribute( ConnectionModule.NAMESPACE, PROP_HOST_NAME, setNull( databaseConnection.getHostname() ) );
@Override public String getURL( IDatabaseConnection databaseConnection ) throws DatabaseDialectException { return SimbaUrl.Builder.create() .withAccessType( databaseConnection.getAccessType().ordinal() ) .withDatabaseName( databaseConnection.getDatabaseName() ) .withPort( databaseConnection.getDatabasePort() ) .withDefaultPort( getDefaultDatabasePort() ) .withHostname( databaseConnection.getHostname() ) .withJdbcPrefix( getNativeJdbcPre() ) .withUsername( databaseConnection.getUsername() ) .withPassword( databaseConnection.getPassword() ) .withIsKerberos( isKerberos( databaseConnection ) ) .build() .getURL(); }
if ( !databaseConnection.getAccessType().equals( DatabaseAccessType.JNDI ) ) {
conn.setAccessType( connection.getAccessType() ); conn.setConnectionPoolingProperties( connection.getConnectionPoolingProperties() ); conn.setConnectSql( connection.getConnectSql() );
protected void copyDatabaseConnectionProperties( IDatabaseConnection source, IDatabaseConnection target ) { target.setId( source.getId() ); target.setAccessType( source.getAccessType() ); target.setDatabaseType( source.getDatabaseType() ); target.setExtraOptions( source.getExtraOptions() );
protected void copyDatabaseConnectionProperties( IDatabaseConnection source, IDatabaseConnection target ) { target.setId( source.getId() ); target.setAccessType( source.getAccessType() ); target.setDatabaseType( source.getDatabaseType() ); target.setExtraOptions( source.getExtraOptions() );
connectionImpl.setAccessType( connectionBean.getAccessType() ); if ( connectionImpl.getAccessType() != null ) { connectionImpl.setAccessTypeValue( connectionImpl.getAccessType().toString() );