OpenTREP Logo  0.6.0
C++ Open Travel Request Parsing Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
OPENTREP_ServiceContext.cpp
Go to the documentation of this file.
1 // //////////////////////////////////////////////////////////////////////
2 // Import section
3 // //////////////////////////////////////////////////////////////////////
4 // STL
5 #include <cassert>
6 #include <ostream>
7 #include <sstream>
8 // OpenTrep
10 #include <opentrep/bom/World.hpp>
12 
13 namespace OPENTREP {
14 
15  // //////////////////////////////////////////////////////////////////////
16  OPENTREP_ServiceContext::OPENTREP_ServiceContext()
17  : _world (NULL),
18  _porFilePath (DEFAULT_OPENTREP_POR_FILEPATH),
19  _travelDBFilePath (DEFAULT_OPENTREP_XAPIAN_DB_FILEPATH),
20  _sqliteDBFilePath (DEFAULT_OPENTREP_SQLITE_DB_FILEPATH) {
21  assert (false);
22  }
23 
24  // //////////////////////////////////////////////////////////////////////
25  OPENTREP_ServiceContext::
26  OPENTREP_ServiceContext (const TravelDBFilePath_T& iTravelDBFilePath,
27  const SQLiteDBFilePath_T& iSQLiteDBFilePath)
28  : _world (NULL),
29  _porFilePath (DEFAULT_OPENTREP_POR_FILEPATH),
30  _travelDBFilePath (iTravelDBFilePath),
31  _sqliteDBFilePath (iSQLiteDBFilePath) {
32  }
33 
34  // //////////////////////////////////////////////////////////////////////
35  OPENTREP_ServiceContext::
36  OPENTREP_ServiceContext (const PORFilePath_T& iPORFilePath,
37  const TravelDBFilePath_T& iTravelDBFilePath,
38  const SQLiteDBFilePath_T& iSQLiteDBFilePath)
39  : _world (NULL), _porFilePath (iPORFilePath),
40  _travelDBFilePath (iTravelDBFilePath),
41  _sqliteDBFilePath (iSQLiteDBFilePath) {
42  }
43 
44  // //////////////////////////////////////////////////////////////////////
45  OPENTREP_ServiceContext::~OPENTREP_ServiceContext() {
46  }
47 
48  // //////////////////////////////////////////////////////////////////////
50  assert (_world != NULL);
51  return *_world;
52  }
53 
54  // //////////////////////////////////////////////////////////////////////
55  const std::string OPENTREP_ServiceContext::shortDisplay() const {
56  std::ostringstream oStr;
57  oStr << "OPENTREP_ServiceContext: "
58  << "file-path of the POR file: " << _porFilePath
59  << "; Xapian database (directory of the index): " << _travelDBFilePath
60  << "; SQLite3 database file-path: " << _sqliteDBFilePath
61  << std::endl;
62  return oStr.str();
63  }
64 
65  // //////////////////////////////////////////////////////////////////////
66  const std::string OPENTREP_ServiceContext::display() const {
67  std::ostringstream oStr;
68  oStr << shortDisplay();
69  if (_world != NULL) {
70  oStr << _world->display();
71  }
72  return oStr.str();
73  }
74 
75 }
const std::string DEFAULT_OPENTREP_SQLITE_DB_FILEPATH
const std::string DEFAULT_OPENTREP_XAPIAN_DB_FILEPATH
const std::string DEFAULT_OPENTREP_POR_FILEPATH
std::string display() const
Definition: World.cpp:60