codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
//Apr_XML.cpp #include "Apr_xml.h" Apr_xml::Apr_xml( const char * fileName ): fName( fileName ){ /* apr initial */ apr_initialize(); /*create memory pool */ apr_pool_create( &mp, NULL ); std::cout<<"Create process APR initial success."<<std::endl; } Apr_xml::Apr_xml(){ } apr_pool_t* Apr_xml::getMp(){ return mp; } apr_status_t Apr_xml::statusWriteFile( const char *fName, apr_pool_t *mp ){ std::cout<<"Set path name "<< fName<<std::endl; /* lock file */ if( ( rv = apr_file_open( &fp, fName, APR_WRITE, APR_OS_DEFAULT, mp ) ) != APR_SUCCESS ) { return rv; } if( ( rv = apr_file_lock( fp, APR_FLOCK_EXCLUSIVE | APR_FLOCK_NONBLOCK ) ) != APR_SUCCESS ){ std::cout<<"Write-lock failed"<<std::endl; apr_file_close( fp ); return rv; } return rv; } /*get path file name */ const char* Apr_xml::getFileName(){ return fName; } /* for unlock file */ const char* Apr_xml::unlockFile(){ apr_file_unlock( fp ); std::cout<<"Unlock file success"<<std::endl; return "Unlock"; } apr_status_t Apr_xml::statusReadFile( const char *fName, apr_pool_t *mp ){ if( ( rv = apr_file_open( &fp, fName, APR_READ, APR_OS_DEFAULT,mp )) != APR_SUCCESS ){ std::cout<<"Cannot open file "<<std::endl; return rv; } if( ( rv = apr_file_lock( fp, APR_FLOCK_SHARED | APR_FLOCK_NONBLOCK ) ) != APR_SUCCESS ){ std::cout<<"Read-lock failed"<<std::endl; apr_file_close( fp ); return rv; } return rv; } Apr_xml::~Apr_xml() { apr_pool_destroy( mp ); apr_terminate(); std::cout<<"Terminate memory pool "<<std::endl; }
Private
[
?
]
Run code