--- a
+++ b/src/Common/APNamingInfo.cc
@@ -0,0 +1,57 @@
+//
+// 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 "APNamingInfo.h"
+
+APNamingInfo::APNamingInfo() : apinstance(""), aename(""), aeinstance("") {
+}
+
+APNamingInfo::APNamingInfo(APN napn) : apinstance(""), aename(""), aeinstance("") {
+ this->apn = napn;
+}
+
+APNamingInfo::APNamingInfo(APN napn, std::string napinstance,
+ std::string naename, std::string naeinstance) {
+ this->apn = napn;
+ this->apinstance = napinstance;
+ this->aename = naename;
+ this->aeinstance = naeinstance;
+}
+
+
+APNamingInfo::~APNamingInfo() {
+ this->apinstance = "";
+ this->aename = "";
+ this->aeinstance = "";
+}
+
+std::string APNamingInfo::info() const{
+ std::stringstream os;
+ os << "AP: "<< apn;
+ if (!apinstance.empty())
+ os << " (" << apinstance << ")";
+ if (!aename.empty())
+ os << " AE: " << aename;
+ if (!aeinstance.empty())
+ os << " (" << aeinstance << ")";
+ //os << endl;
+ return os.str();
+}
+
+//Free function
+std::ostream& operator<< (std::ostream& os, const APNamingInfo& apni) {
+ return os << apni.info();
+}
+