/* * Unsubscribe from all specified symbols. */ void MamaEntitle::unsubscribeFromSymbols (void) { SubscriptionList::const_iterator i; for (i = mSubscriptionList.begin (); i != mSubscriptionList.end (); i++) { ((MamaSubscription*)*i)->destroy(); delete *i; } }
MamdaSubscription* BookPublisher::getMamdaSubscription (const char * symbol) { SubscriptionList::const_iterator i; for (i = mSubscriptionList.begin (); i != mSubscriptionList.end (); i++) { if (strcmp(((MamdaSubscription*)*i)->getSymbol() , symbol)==0) { return (MamdaSubscription*)*i; } } return NULL; }
void MamaEntitle::shutdown () { if (mQueueGroup != NULL) { mQueueGroup->stopDispatch(); } if (mDictionary != NULL) { delete mDictionary; mDictionary = NULL; } SubscriptionList::const_iterator i; for (i = mSubscriptionList.begin (); i != mSubscriptionList.end (); i++) { ((MamaSubscription*)*i)->destroy(); delete *i; } if (mQueueGroup != NULL) { delete mQueueGroup; mQueueGroup = NULL; } if ((mDictTransport != NULL) && (mDictTransport != mTransport)) { delete mDictTransport; mDictTransport = NULL; } if (mTransport != NULL) { delete mTransport; mTransport = NULL; } Mama::close (); }