00001 #include "tao/Compression/bzip2/Bzip2Compressor_Factory.h" 00002 #include "tao/Compression/bzip2/Bzip2Compressor.h" 00003 00004 ACE_RCSID (BZIP2, 00005 Bzip2_Compressor_Factory, 00006 "$Id: Bzip2Compressor_Factory.cpp 82351 2008-07-22 08:15:32Z johnnyw $") 00007 00008 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00009 00010 namespace TAO 00011 { 00012 00013 Bzip2_CompressorFactory::Bzip2_CompressorFactory (void) : 00014 ::TAO::CompressorFactory (::Compression::COMPRESSORID_BZIP2), 00015 compressor_ (::Compression::Compressor::_nil ()) 00016 { 00017 } 00018 00019 ::Compression::Compressor_ptr 00020 Bzip2_CompressorFactory::get_compressor ( 00021 ::Compression::CompressionLevel compression_level) 00022 { 00023 // @todo, make a array based on compression level 00024 if (CORBA::is_nil (compressor_.in ())) 00025 { 00026 compressor_ = new Bzip2Compressor (compression_level, this); 00027 } 00028 00029 return ::Compression::Compressor::_duplicate (compressor_.in ()); 00030 } 00031 } 00032 00033 TAO_END_VERSIONED_NAMESPACE_DECL