32     Enter_Method(
"resolveApnToBestAddress()");
 
   36         EV << 
"DA does not know target application" << endl;
 
   46     EV << 
"None of found DIFs is local!" << endl;
 
   51     Enter_Method(
"resolveApnToBestAddress()");
 
   55         EV << 
"DA does not know target application" << endl;
 
   61         if (it->getDifName() == difName && 
isDifLocal(it->getDifName()))
 
   65     EV << 
"None of found DIFs is local!" << endl;
 
   94     cModule* top = ipc->getParentModule();
 
   95     for (cModule::SubmoduleIterator j(top); !j.end(); j++) {
 
   96         cModule *submodp = j();
 
   98                 && !opp_strcmp(submodp->par(
PAR_DIFNAME), difName.c_str())                    
 
  114     return ipcX->getParentModule() == ipcY->getParentModule()
 
  120     cModule* top = this->getModuleByPath(
"^.^");
 
  121     for (cModule::SubmoduleIterator j(top); !j.end(); j++) {
 
  122         cModule* submodp = j();
 
  135     cModule* top = this->getModuleByPath(
"^.^");
 
  136     for (cModule::SubmoduleIterator j(top); !j.end(); j++) {
 
  137         cModule* submodp = j();
 
  149     cModule* top = this->getModuleByPath(
"^.^");
 
  150     for (cModule::SubmoduleIterator j(top); !j.end(); j++) {
 
  151         cModule* submodp = j();
 
  159     cModule* top = this->getModuleByPath(
"^.^");
 
  160     for (cModule::SubmoduleIterator j(top); !j.end(); j++) {
 
  161         cModule* submodp = j();
 
  171     cModule* top = this->getModuleByPath(
"^.^");
 
  172     for (cModule::SubmoduleIterator j(top); !j.end(); j++) {
 
  173         cModule *submodp = j();
 
  188     Enter_Method(
"resolveApn()");
 
  191     for (
ApnCItem it = apns.begin(); it != apns.end(); ++it) {
 
  205     cModule* top = this->getModuleByPath(
"^.^");
 
  206     for (cModule::SubmoduleIterator j(top); !j.end(); j++) {
 
  207         cModule *submodp = j();
 
  217     Enter_Method(
"resolveApnToAddressList()");
 
  221         EV << 
"DA does not know target application" << endl;
 
  228         if (it->getDifName() == difName && 
isDifLocal(it->getDifName()))
 
  229             addrs->push_back(*it);
 
  232     if (addrs->empty()) {
 
  233         EV << 
"None of found DIFs is local!" << endl;
 
std::list< Address > Addresses
const APNList * findNeigborApns(const APN &neighbor)
virtual void initialize()
const APNList * findApnNeigbors(const APN &apn)
const char * MOD_NEIGHBORTABLE
Application Process Name class. 
bool isDifLocalToIpc(const std::string difName, cModule *ipc)
NamingInformation * NamInfo
Addresses::const_iterator AddrCItem
cModule * findIpc(const Address &addr)
DirectoryEntry * findDirEntryByApn(const APN &apn)
bool isDifLocal(const DAP &difName)
std::list< APN > APNList
APNList represents the list of APNs. 
cModule * findApp(const APN &apn)
const char * MOD_SEARCHTAB
NeighborTable * NeighborTab
FABase * findFaInsideIpc(cModule *ipc)
const APNList * findNeighborsByApn(const APN &apn)
const char * MOD_DIRECTORY
bool isAppLocal(const APN &apn)
virtual void handleMessage(cMessage *msg)
const char * MOD_FLOWALLOC
const std::string & getName() const 
Gets DAP string name representation. 
bool isIpcLocal(cModule *ipc)
const Addresses & getSupportedDifs() const 
const Addresses * resolveApnToAddressList(const APN &apn, const DAP &difName)
APNList::const_iterator ApnCItem
APNList constant iterator. 
const std::string & getName() const 
Gets APN string name representation. 
cModule * getDifMember(const DAP &difName)
const APNList * findApnsByNeighbor(const APN &neighbor)
Address class holds IPC Process identification. 
bool isIpcXLocalToIpcY(cModule *ipcX, cModule *ipcY)
const Address * resolveApnToBestAddress(const APN &apn)
Distributed Application Process name a.k.a. DAP class. 
DirectoryEntry * resolveApn(const APN &apn)