Commit 2bb5aec4 authored by nikolajev's avatar nikolajev
Browse files

DiameterPort update

parent 7264a2fd
Loading
Loading
Loading
Loading
+47 −0
Original line number Original line Diff line number Diff line
#include "DiameterPort.h"

#include <iostream>

#include "Logger/Logger.h"
#include "LowerTestAdapter.h"

using namespace t3devlib;
using namespace std;

DiameterPort::DiameterPort (PortId& portId) 
:Port(portId) {
  Logger::Instance().LogInfo("DiameterPort::DiameterPort");
  LowerTestAdapter::Instance().RegisterDiameterPort(this);  
}

DiameterPort::~DiameterPort() {
    Logger::Instance().LogInfo("~DiameterPort::DiameterPort");
}

bool DiameterPort::Map (const PortId& connectedPortId)
{
  m_connectedPorts.push_back(&connectedPortId);
  return true; 
} 
 
bool DiameterPort::Unmap (const PortId& connectedPortId) { 

  //TODO: remove from m_connectedPorts
  return true; 
}

bool DiameterPort::Send (const ComponentId& from,const Bitstring& bsMsg)
{
  return true;
}

const t3devlib::PortId& DiameterPort::GetConnectedPort(const ComponentId *pComponentId)
{
  std::list<const PortId *>::iterator it;
  for(it = m_connectedPorts.begin(); it != m_connectedPorts.end(); it++) {
    if(&((*it)->GetComponentId()) == pComponentId) {
		Logger::Instance().LogInfo((*it)->GetName());
      return **it;
    }
  }
}
+24 −0
Original line number Original line Diff line number Diff line
#ifndef DiameterPort_h
#define DiameterPort_h

#include <t3devlib/t3devlib.h>

class DiameterPort : public t3devlib::Port
{
 public:
  DiameterPort(t3devlib::PortId& portId);
  const t3devlib::PortId& GetConnectedPort() const;
  const t3devlib::PortId& GetConnectedPort(const t3devlib::ComponentId *pComponentId);
  ~DiameterPort();
  
 protected:
  bool Map(const t3devlib::PortId& connectedPortId);
  bool Unmap(const t3devlib::PortId& connectedPortId);
  bool Send(const t3devlib::ComponentId& from, const t3devlib::Bitstring& bsMsg);

 private:
  std::list<const t3devlib::PortId *> m_connectedPorts;
};


#endif //DiameterPort_h
+3 −1
Original line number Original line Diff line number Diff line
@@ -41,6 +41,7 @@
#include <t3devlib/t3devlib.h>
#include <t3devlib/t3devlib.h>


#include "Ports/DataPort.h"
#include "Ports/DataPort.h"
#include "Ports/DiameterPort.h"
#include "Ports/AdapterConfigPort.h"
#include "Ports/AdapterConfigPort.h"
#include "Ports/EquipmentAccessPort.h"
#include "Ports/EquipmentAccessPort.h"
#include <fstream>
#include <fstream>
@@ -64,6 +65,7 @@ namespace t3devlib {
    Port::RegisterType("AtsImsIot_TestSystem", "DataPort", &createPort<DataPort>);
    Port::RegisterType("AtsImsIot_TestSystem", "DataPort", &createPort<DataPort>);
    Port::RegisterType("LibIot_TestInterface", "EquipmentAccessPort", &createPort<EquipmentAccessPort>);
    Port::RegisterType("LibIot_TestInterface", "EquipmentAccessPort", &createPort<EquipmentAccessPort>);
    Port::RegisterType("LibIot_TestInterface", "AdapterConfigPort", &createPort<AdapterConfigPort>);
    Port::RegisterType("LibIot_TestInterface", "AdapterConfigPort", &createPort<AdapterConfigPort>);
	Port::RegisterType("AtsImsIot_TestSystem", "DiameterPort", &createPort<DiameterPort>);
  }
  }


  void CDInit()
  void CDInit()
+1 −0
Original line number Original line Diff line number Diff line
@@ -45,6 +45,7 @@ namespace t3devlib { namespace gen {
	"e_diameter",
	"e_diameter",
	"e_naptr",
	"e_naptr",
	"e_msrp",
	"e_msrp",
	"e_gtp",
    ""
    ""
  };
  };