laforge
/
openbts-osmo
Archived
1
0
Fork 0

Add comments anf better formating to USSDHandler::postUSSDData().

This commit is contained in:
Alexander Chemeris 2010-08-11 22:04:03 +04:00
parent dd366df4f4
commit 58821a8f74
1 changed files with 24 additions and 15 deletions

View File

@ -670,21 +670,30 @@ unsigned USSDHandler::waitUSSDData(Control::USSDData::USSDMessageType* messageTy
void USSDHandler::postUSSDData(Control::USSDData::USSDMessageType messageType, std::string USSDString) void USSDHandler::postUSSDData(Control::USSDData::USSDMessageType messageType, std::string USSDString)
{ {
if (USSDString.length()>USSD_MAX_CHARS_7BIT) if (USSDString.length()>USSD_MAX_CHARS_7BIT)
{ {
int contLen = mContinueStr.length(); int contLen = mContinueStr.length();
mString = USSDString.substr(USSD_MAX_CHARS_7BIT-contLen, mString = USSDString.substr(USSD_MAX_CHARS_7BIT-contLen,
USSDString.length()-(USSD_MAX_CHARS_7BIT-contLen)); USSDString.length()-(USSD_MAX_CHARS_7BIT-contLen));
USSDString.erase(USSDString.begin()+USSD_MAX_CHARS_7BIT-contLen, USSDString.end()); USSDString.erase(USSDString.begin()+USSD_MAX_CHARS_7BIT-contLen, USSDString.end());
USSDString += mContinueStr; USSDString += mContinueStr;
} }
else mString = ""; else
TransactionEntry transaction; {
gTransactionTable.find(mTransactionID, transaction); mString = "";
transaction.ussdData()->MessageType(messageType); }
transaction.ussdData()->USSDString(USSDString);
gTransactionTable.update(transaction); // Step 1 -- Find transaction
transaction.ussdData()->postNW(); TransactionEntry transaction;
gTransactionTable.find(mTransactionID, transaction);
// Step 2 -- Update transaction with the data to send
transaction.ussdData()->MessageType(messageType);
transaction.ussdData()->USSDString(USSDString);
gTransactionTable.update(transaction);
// Step 3 -- Notify the dispatcher thread that data is ready to be sent
transaction.ussdData()->postNW();
} }
void *USSDHandler::runWrapper(void *pThis) void *USSDHandler::runWrapper(void *pThis)