--- a
+++ b/src/Common/CongestionDescriptor.cc
@@ -0,0 +1,59 @@
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Lesser General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public License
+// along with this program. If not, see http://www.gnu.org/licenses/.
+//
+
+#include <CongestionDescriptor.h>
+
+CongestionDescriptor::CongestionDescriptor()
+{
+ ConId.setSrcCepId(-1);
+ ConId.setDstCepId(-1);
+ ConId.setQoSId(0);
+}
+
+CongestionDescriptor::~CongestionDescriptor() {
+ ConId.setSrcCepId(-1);
+ ConId.setDstCepId(-1);
+ ConId.setQoSId(0);
+}
+
+ConnectionId& CongestionDescriptor::getConnectionId() {
+ return ConId;
+}
+
+CongestionDescriptor::CongestionDescriptor(int srcCepId, int dstCepId,
+ unsigned short qosId)
+{
+ ConId.setSrcCepId(srcCepId);
+ ConId.setDstCepId(dstCepId);
+ ConId.setQoSId(qosId);
+}
+
+void CongestionDescriptor::setConnectionId(const ConnectionId& conId) {
+ ConId = conId;
+}
+
+std::string CongestionDescriptor::getCongesDescrName() const {
+ std::stringstream os;
+ os << ConId.getSrcCepId() << "<=>" << ConId.getDstCepId();
+ return os.str();
+}
+
+CongestionDescriptor* CongestionDescriptor::dup() const {
+ CongestionDescriptor* congDesc = new CongestionDescriptor();
+ congDesc->getConnectionId().setSrcCepId(ConId.getSrcCepId());
+ congDesc->getConnectionId().setDstCepId(ConId.getDstCepId());
+ congDesc->getConnectionId().setQoSId(ConId.getQoSId());
+ return congDesc;
+}