@Before public void setUp() throws Exception { factory = CompressionProviderFactory.getInstance(); CompressionProvider provider = factory.getCompressionProviderByName( PROVIDER_NAME ); ByteArrayInputStream in = new ByteArrayInputStream( "Test".getBytes() ); inStream = new ZIPCompressionInputStream( in, provider ) { }; }
@Override public InputStream getInputStream( final CsvInputAwareMeta meta ) { InputStream fileInputStream; CompressionInputStream inputStream = null; try { FileObject fileObject = meta.getHeaderFileObject( getTransMeta() ); fileInputStream = KettleVFS.getInputStream( fileObject ); CompressionProvider provider = CompressionProviderFactory.getInstance().createCompressionProviderInstance( ( (TextFileInputMeta) meta ).content.fileCompression ); inputStream = provider.createInputStream( fileInputStream ); } catch ( final Exception e ) { logError( BaseMessages.getString( "FileInputDialog.ErrorGettingFileDesc.DialogMessage" ), e ); } return inputStream; } }
@Override public Collection<CompressionProvider> getCompressionProviders() { Collection<CompressionProvider> providerClasses = new ArrayList<CompressionProvider>(); List<PluginInterface> providers = getPlugins(); if ( providers != null ) { for ( PluginInterface plugin : providers ) { try { providerClasses.add( PluginRegistry.getInstance().loadClass( plugin, CompressionProvider.class ) ); } catch ( Exception e ) { // Do nothing here, if we can't load the provider, don't add it to the list } } } return providerClasses; }
@Test public void getNonExistentProvider() { CompressionProvider provider = factory.createCompressionProviderInstance( "Fake" ); assertNull( provider ); provider = factory.getCompressionProviderByName( null ); assertNull( provider ); provider = factory.getCompressionProviderByName( "Invalid" ); assertNull( provider ); } }
wCompression.setToolTipText( BaseMessages.getString( PKG, "TextFileInputDialog.Compression.Tooltip" ) ); props.setLook( wCompression ); wCompression.setItems( CompressionProviderFactory.getInstance().getCompressionProviderNames() );
@Test public void testCreateInputStream() throws IOException { GZIPCompressionProvider provider = (GZIPCompressionProvider) factory.getCompressionProviderByName( PROVIDER_NAME ); // Create an in-memory GZIP output stream for use by the input stream (to avoid exceptions) ByteArrayOutputStream baos = new ByteArrayOutputStream(); GZIPOutputStream gos = new GZIPOutputStream( baos ); byte[] testBytes = "Test".getBytes(); gos.write( testBytes ); ByteArrayInputStream in = new ByteArrayInputStream( baos.toByteArray() ); // Test stream creation paths GZIPInputStream gis = new GZIPInputStream( in ); in = new ByteArrayInputStream( baos.toByteArray() ); GZIPCompressionInputStream ncis = provider.createInputStream( in ); assertNotNull( ncis ); GZIPCompressionInputStream ncis2 = provider.createInputStream( gis ); assertNotNull( ncis2 ); }
@Before public void setUp() throws Exception { factory = CompressionProviderFactory.getInstance(); }
/** * Test that all core compression plugins' expected names (None, Zip, GZip) are available via the factory */ @Test public void getCoreProviderNames() { @SuppressWarnings( "serial" ) final HashMap<String, Boolean> foundProvider = new HashMap<String, Boolean>() { { put( "None", false ); put( "Zip", false ); put( "GZip", false ); put( "Snappy", false ); put( "Hadoop-snappy", false ); } }; String[] providers = factory.getCompressionProviderNames(); assertNotNull( providers ); for ( String provider : providers ) { assertNotNull( foundProvider.get( provider ) ); foundProvider.put( provider, true ); } boolean foundAllProviders = true; for ( Boolean b : foundProvider.values() ) { foundAllProviders = foundAllProviders && b; } assertTrue( foundAllProviders ); }
@Test public void testCreateCoreProviders() { CompressionProvider provider = factory.createCompressionProviderInstance( "None" ); assertNotNull( provider ); assertTrue( provider.getClass().isAssignableFrom( NoneCompressionProvider.class ) ); assertEquals( "None", provider.getName() ); assertEquals( "No compression", provider.getDescription() ); provider = factory.createCompressionProviderInstance( "Zip" ); assertNotNull( provider ); assertTrue( provider.getClass().isAssignableFrom( ZIPCompressionProvider.class ) ); assertEquals( "Zip", provider.getName() ); assertEquals( "ZIP compression", provider.getDescription() ); provider = factory.createCompressionProviderInstance( "GZip" ); assertNotNull( provider ); assertTrue( provider.getClass().isAssignableFrom( GZIPCompressionProvider.class ) ); assertEquals( "GZip", provider.getName() ); assertEquals( "GZIP compression", provider.getDescription() ); provider = factory.createCompressionProviderInstance( "Snappy" ); assertNotNull( provider ); assertTrue( provider.getClass().isAssignableFrom( SnappyCompressionProvider.class ) ); assertEquals( "Snappy", provider.getName() ); assertEquals( "Snappy compression", provider.getDescription() ); provider = factory.createCompressionProviderInstance( "Hadoop-snappy" ); assertNotNull( provider ); assertTrue( provider.getClass().isAssignableFrom( HadoopSnappyCompressionProvider.class ) ); assertEquals( "Hadoop-snappy", provider.getName() ); assertEquals( "Hadoop Snappy compression", provider.getDescription() ); }
/** * Test that all core compression plugins (None, Zip, GZip) are available via the factory */ @Test public void getCoreProviders() { @SuppressWarnings( "serial" ) final HashMap<String, Boolean> foundProvider = new HashMap<String, Boolean>() { { put( "None", false ); put( "Zip", false ); put( "GZip", false ); put( "Snappy", false ); put( "Hadoop-snappy", false ); } }; Collection<CompressionProvider> providers = factory.getCompressionProviders(); assertNotNull( providers ); for ( CompressionProvider provider : providers ) { assertNotNull( foundProvider.get( provider.getName() ) ); foundProvider.put( provider.getName(), true ); } boolean foundAllProviders = true; for ( Boolean b : foundProvider.values() ) { foundAllProviders = foundAllProviders && b; } assertTrue( foundAllProviders ); }
wCompression.setToolTipText( BaseMessages.getString( PKG, "TextFileInputDialog.Compression.Tooltip" ) ); props.setLook( wCompression ); wCompression.setItems( CompressionProviderFactory.getInstance().getCompressionProviderNames() );
@Test public void testCreateInputStream() throws IOException { NoneCompressionProvider provider = (NoneCompressionProvider) factory.getCompressionProviderByName( PROVIDER_NAME ); ByteArrayInputStream in = new ByteArrayInputStream( "Test".getBytes() ); NoneCompressionInputStream inStream = new NoneCompressionInputStream( in, provider ); assertNotNull( inStream ); NoneCompressionInputStream ncis = (NoneCompressionInputStream) provider.createInputStream( in ); assertNotNull( ncis ); }
@Before public void setUp() throws Exception { factory = CompressionProviderFactory.getInstance(); }
private CompressionProvider getCompressionProvider() throws KettleException { String compressionType = meta.getFileCompression(); if ( Utils.isEmpty( compressionType ) ) { compressionType = FILE_COMPRESSION_TYPE_NONE; } CompressionProvider compressionProvider = CompressionProviderFactory.getInstance().getCompressionProviderByName( compressionType ); if ( compressionProvider == null ) { throw new KettleException( "No compression provider found with name = " + compressionType ); } if ( !compressionProvider.supportsOutput() ) { throw new KettleException( "Compression provider " + compressionType + " does not support output streams!" ); } return compressionProvider; }
props.setLook( wCompression ); wCompression.setItems( CompressionProviderFactory.getInstance().getCompressionProviderNames() ); wCompression.addModifyListener( lsMod ); fdCompression = new FormData();
CompressionProviderFactory.getInstance().createCompressionProviderInstance( meta.content.fileCompression ); f = provider.createInputStream( fi );
@Test public void testCreateInputStream() throws IOException { ZIPCompressionProvider provider = (ZIPCompressionProvider) factory.getCompressionProviderByName( PROVIDER_NAME ); ByteArrayInputStream in = new ByteArrayInputStream( "Test".getBytes() ); ZipInputStream zis = new ZipInputStream( in ); ZIPCompressionInputStream inStream = new ZIPCompressionInputStream( in, provider ); assertNotNull( inStream ); ZIPCompressionInputStream ncis = provider.createInputStream( in ); assertNotNull( ncis ); ZIPCompressionInputStream ncis2 = provider.createInputStream( zis ); assertNotNull( ncis2 ); }
@Before public void setUp() throws Exception { factory = CompressionProviderFactory.getInstance(); }
@Override public String[] getCompressionProviderNames() { ArrayList<String> providerNames = new ArrayList<String>(); List<PluginInterface> providers = getPlugins(); if ( providers != null ) { for ( PluginInterface plugin : providers ) { try { CompressionProvider provider = PluginRegistry.getInstance().loadClass( plugin, CompressionProvider.class ); if ( provider != null ) { providerNames.add( provider.getName() ); } } catch ( Exception e ) { // Do nothing here, if we can't load the provider, don't add it to the list } } } return providerNames.toArray( new String[providerNames.size()] ); }
@Before public void setUp() throws Exception { factory = CompressionProviderFactory.getInstance(); CompressionProvider provider = factory.getCompressionProviderByName( PROVIDER_NAME ); ByteArrayOutputStream in = new ByteArrayOutputStream(); outStream = new SnappyCompressionOutputStream( in, provider ); }