ClearBox Server™ v1.2 Developer's Guide

ICSVAccounting::SetCSVOptions

Server extension should call this method or SetLoggedAttributesNames to specify list of attributes that are logged into accounting logfile. It's necessary to call one of these methods prior to using LogRADPacketCSV, LogTACPacketCSV, LogRADPacketCSVEx or LogTACPacketCSVEx methods.

HRESULT SetCSVOptions(
	[in] BSTR sepCharacter,
	[in] VARIANT_BOOL logEnumeratedNames,
	[in] VARIANT_BOOL logAttributeNames);

Parameters

sepCharacter
[in] Specifies a character that separates values in logs. If it is a valid string, then it must be 1 character in length. If this parameter is NULL, default value ',' is used.
logEnumeratedNames
[in] Specifies whether enumerated attribute values should be logged as their names (VARIANT_TRUE) or their numeric values (VARIANT_FALSE). For example, if logEnumeratedNames=VARIANT_TRUE, then 'Service-Type' attribute value 'Framed' is logged as 'Framed'. If it is VARIANT_FALSE, then value 2 is logged.
logAttributeNames
[in] Specifies whether server should write list of attribute names that are logged as a first header line in the logfile (VARIANT_TRUE) or not (VARIANT_FALSE).

Return Values

This method may return E_INVALIDARG if length of sepCharacter is not 1 character.

Thread Safety

This method can be called from any thread.

Memory Management

Server extension should allocate and free memory for sepCharacter parameter.

Remarks

If this method is called after call to LogRADPacketCSV or LogTACPacketCSV, it still affects server behavior.

Example Code

This code uses m_pServer as IServer interface pointer stored in ICommonExtenderEx::InitializeEx implementation. It instructs the server that it should separate logged data with ';' and put logged attributes names in the first line of the logfile.

ICSVAccounting* pAcc=NULL;
m_pServer->QueryInterface(IID_ICSVAccounting,(void**)&pAcc;
//QueryInterface will always succeed

BSTR delimiter=SysAllocString(L";");
pAcc->SetLoggedAttributes(4,pTypes);
SysFreeString(delimiter);
// Call to  pAcc->Release() is not necessary 

See Also

ICSVAccounting, Server services, CSV Accounting Logging, SetLoggedAttributesNames, LogRADPacketCSV, LogTACPacketCSV


© 2001-2003 XPerience Technologies. www.xperiencetech.com

Created by chm2web html help conversion utility.