Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: installer/src/installer-lib/record.cpp

Issue 5992177905696768: Issue #1186 - Rename symbols defined in 'installer-lib' (Closed)
Patch Set: fixed issues; rebased; new fixes from rebase Created June 19, 2015, 4:09 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « installer/src/installer-lib/record.h ('k') | installer/src/installer-lib/session.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: installer/src/installer-lib/record.cpp
===================================================================
--- a/installer/src/installer-lib/record.cpp
+++ b/installer/src/installer-lib/record.cpp
@@ -5,78 +5,78 @@
#include "installer-lib.h"
#include "record.h"
#include "msiquery.h"
-
-//-----------------------------------------------------------------------------------------
-// Record
-//-----------------------------------------------------------------------------------------
-Record::Record( unsigned int n_fields )
-{
- _handle = MsiCreateRecord( n_fields ) ;
- if ( ! _handle )
- {
- throw windows_api_error( "MsiCreateRecord", 0 ) ;
- }
-}
-
-Record::~Record()
-{
- if ( _handle != 0 )
- {
- MsiCloseHandle( _handle ) ;
- }
-}
-
-void Record::only_non_null()
-{
- if ( _handle == 0 )
- {
- throw std::runtime_error( "Operation only permitted for non-null objects" ) ;
- }
-}
-
-void Record::assign_string( unsigned int field_index, const char *value )
-{
- only_non_null() ;
- MsiRecordSetStringA( _handle, field_index, value ) ;
-}
-
-void Record::assign_string( unsigned int field_index, const wchar_t *value )
-{
- only_non_null() ;
- MsiRecordSetStringW( _handle, field_index, value ) ;
-}
-
-/**
-* \par Implementation
-* - MSDN [MsiRecordGetString](http://msdn.microsoft.com/en-us/library/aa370368%28v=vs.85%29.aspx)
-*/
-std::wstring Record::value_string( unsigned int field_index )
-{
- static wchar_t initial_buffer[ 1024 ] = L"" ;
- DWORD length = 1023 ; // one less than the buffer length to hold a terminating null character
- UINT x = MsiRecordGetStringW( _handle, field_index, initial_buffer, & length ) ;
- if ( x == ERROR_SUCCESS )
- {
- return std::wstring( initial_buffer ) ;
- }
- if ( x == ERROR_MORE_DATA )
- {
- // Future: handle longer strings.
- /*
- * The present custom action only uses this function for strings that appear in dialog boxes.
- * A thousand characters is about a dozen lines of text, which is far more than enough.
- */
- throw not_yet_supported( "retrieving string values longer than 1023 from a record" ) ;
- }
- throw windows_api_error( "MsiRecordGetStringW", x ) ;
-}
-
-size_t Record::n_fields() const
-{
- unsigned int x = MsiRecordGetFieldCount( _handle ) ;
- if ( x == 0xFFFFFFFF )
- {
- throw windows_api_error( "MsiRecordGetFieldCount", x, "invalid handle" ) ;
- }
- return x ;
+
+//-----------------------------------------------------------------------------------------
+// Record
+//-----------------------------------------------------------------------------------------
+Record::Record( unsigned int nFields )
+{
+ handle = MsiCreateRecord( nFields ) ;
+ if ( ! handle )
+ {
+ throw WindowsApiError( "MsiCreateRecord", 0 ) ;
+ }
+}
+
+Record::~Record()
+{
+ if ( handle != 0 )
+ {
+ MsiCloseHandle( handle ) ;
+ }
+}
+
+void Record::OnlyNonNull()
+{
+ if ( handle == 0 )
+ {
+ throw std::runtime_error( "Operation only permitted for non-null objects" ) ;
+ }
+}
+
+void Record::AssignString( unsigned int fieldIndex, const char *value )
+{
+ OnlyNonNull() ;
+ MsiRecordSetStringA( handle, fieldIndex, value ) ;
+}
+
+void Record::AssignString( unsigned int fieldIndex, const wchar_t *value )
+{
+ OnlyNonNull() ;
+ MsiRecordSetStringW( handle, fieldIndex, value ) ;
+}
+
+/**
+* \par Implementation
+* - MSDN [MsiRecordGetString](http://msdn.microsoft.com/en-us/library/aa370368%28v=vs.85%29.aspx)
+*/
+std::wstring Record::ValueString( unsigned int fieldIndex )
+{
+ static wchar_t initialBuffer[ 1024 ] = L"" ;
+ DWORD length = 1023 ; // one less than the buffer length to hold a terminating null character
+ UINT x = MsiRecordGetStringW( handle, fieldIndex, initialBuffer, & length ) ;
+ if ( x == ERROR_SUCCESS )
+ {
+ return std::wstring( initialBuffer ) ;
+ }
+ if ( x == ERROR_MORE_DATA )
+ {
+ // Future: handle longer strings.
+ /*
+ * The present custom action only uses this function for strings that appear in dialog boxes.
+ * A thousand characters is about a dozen lines of text, which is far more than enough.
+ */
+ throw NotYetSupported( "retrieving string values longer than 1023 from a record" ) ;
+ }
+ throw WindowsApiError( "MsiRecordGetStringW", x ) ;
+}
+
+size_t Record::NumberOfFields() const
+{
+ unsigned int x = MsiRecordGetFieldCount( handle ) ;
+ if ( x == 0xFFFFFFFF )
+ {
+ throw WindowsApiError( "MsiRecordGetFieldCount", x, "invalid handle" ) ;
+ }
+ return x ;
}
« no previous file with comments | « installer/src/installer-lib/record.h ('k') | installer/src/installer-lib/session.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld