blob: f4f6348969551c591ef699ea16bc3cd18f08ebab [file] [log] [blame]
Nick Gordon9212bd42017-10-23 10:59:38 -05001/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2/**
3 * Copyright (c) 2014-2017, The University of Memphis,
4 * Regents of the University of California,
5 * Arizona Board of Regents.
6 *
7 * This file is part of NLSR (Named-data Link State Routing).
8 * See AUTHORS.md for complete list of NLSR authors and contributors.
9 *
10 * NLSR is free software: you can redistribute it and/or modify it under the terms
11 * of the GNU General Public License as published by the Free Software Foundation,
12 * either version 3 of the License, or (at your option) any later version.
13 *
14 * NLSR is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
15 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
16 * PURPOSE. See the GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License along with
19 * NLSR, e.g., in COPYING.md file. If not, see <http://www.gnu.org/licenses/>.
20 **/
21
22#include "./lsa.hpp"
23
24namespace nlsr {
25namespace test {
26
27std::string
Nick Gordonfaf49f42017-10-23 12:36:28 -050028MockLsa::serialize() const
Nick Gordon9212bd42017-10-23 10:59:38 -050029{
30 return "";
31}
32
33bool
34MockLsa::initializeFromContent(const std::string& content)
35{
36 boost::char_separator<char> sep("|");
37 boost::tokenizer<boost::char_separator<char> >tokens(content, sep);
38 boost::tokenizer<boost::char_separator<char> >::iterator tok_iter =
39 tokens.begin();
40 m_origRouter = ndn::Name(*tok_iter++);
41 if (!(m_origRouter.size() > 0)) {
42 return false;
43 }
44 try {
45 if (*tok_iter++ != std::to_string(Lsa::Type::MOCK)) {
46 return false;
47 }
48 m_lsSeqNo = boost::lexical_cast<uint32_t>(*tok_iter++);
49 m_expirationTimePoint = ndn::time::fromIsoString(*tok_iter++);
50 }
51 catch (const std::exception& e) {
52 return false;
53 }
54 return true;
55}
56
57} // namespace test
58} // namespace nlsr