projects
/
metaproxy-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Move methods jump_to_... and check_element_yp2 to xmlutil.
[metaproxy-moved-to-github.git]
/
src
/
filter_session_shared.cpp
diff --git
a/src/filter_session_shared.cpp
b/src/filter_session_shared.cpp
index
ee06d30
..
70602ee
100644
(file)
--- a/
src/filter_session_shared.cpp
+++ b/
src/filter_session_shared.cpp
@@
-1,4
+1,4
@@
-/* $Id: filter_session_shared.cpp,v 1.1 2005-11-14 23:35:22 adam Exp $
+/* $Id: filter_session_shared.cpp,v 1.5 2006-01-09 21:20:15 adam Exp $
Copyright (c) 2005, Index Data.
%LICENSE%
Copyright (c) 2005, Index Data.
%LICENSE%
@@
-7,7
+7,6
@@
#include "config.hpp"
#include "filter.hpp"
#include "config.hpp"
#include "filter.hpp"
-#include "router.hpp"
#include "package.hpp"
#include <boost/thread/mutex.hpp>
#include "package.hpp"
#include <boost/thread/mutex.hpp>
@@
-28,32
+27,32
@@
namespace yf = yp2::filter;
namespace yp2 {
namespace filter {
namespace yp2 {
namespace filter {
- class Session_shared::Rep {
- friend class Session_shared;
+ class SessionShared::Rep {
+ friend class SessionShared;
void handle_init(Z_InitRequest *req, Package &package);
void handle_search(Z_SearchRequest *req, Package &package);
public:
void handle_init(Z_InitRequest *req, Package &package);
void handle_search(Z_SearchRequest *req, Package &package);
public:
- typedef boost::shared_ptr<Session_shared::List> SharedList;
+ typedef boost::shared_ptr<SessionShared::List> SharedList;
- typedef std::map<Session_shared::InitKey,SharedList> InitListMap;
+ typedef std::map<SessionShared::InitKey,SharedList> InitListMap;
InitListMap m_init_list_map;
typedef std::map<Session,SharedList> SessionListMap;
SessionListMap m_session_list_map;
};
InitListMap m_init_list_map;
typedef std::map<Session,SharedList> SessionListMap;
SessionListMap m_session_list_map;
};
- class Session_shared::InitKey {
- friend class Session_shared;
- friend class Session_shared::Rep;
+ class SessionShared::InitKey {
+ friend class SessionShared;
+ friend class SessionShared::Rep;
std::string m_vhost;
std::string m_open;
std::string m_user;
std::string m_group;
std::string m_password;
public:
std::string m_vhost;
std::string m_open;
std::string m_user;
std::string m_group;
std::string m_password;
public:
- bool operator < (const Session_shared::InitKey &k) const;
+ bool operator < (const SessionShared::InitKey &k) const;
};
};
- class Session_shared::List {
+ class SessionShared::List {
public:
yazpp_1::GDU m_init_response; // init response for backend
Session m_session; // session for backend
public:
yazpp_1::GDU m_init_response; // init response for backend
Session m_session; // session for backend
@@
-65,7
+64,9
@@
namespace yp2 {
using namespace yp2;
using namespace yp2;
-bool yf::Session_shared::InitKey::operator < (const Session_shared::InitKey &k) const {
+bool yf::SessionShared::InitKey::operator < (const SessionShared::InitKey
+ &k) const
+{
if (m_vhost < k.m_vhost)
return true;
else if (m_vhost < k.m_vhost)
if (m_vhost < k.m_vhost)
return true;
else if (m_vhost < k.m_vhost)
@@
-93,15
+94,15
@@
bool yf::Session_shared::InitKey::operator < (const Session_shared::InitKey &k)
return false;
}
return false;
}
-yf::Session_shared::Session_shared() : m_p(new Rep)
+yf::SessionShared::SessionShared() : m_p(new Rep)
{
}
{
}
-yf::Session_shared::~Session_shared()
+yf::SessionShared::~SessionShared()
{
}
{
}
-void yf::Session_shared::Rep::handle_search(Z_SearchRequest *req,
+void yf::SessionShared::Rep::handle_search(Z_SearchRequest *req,
Package &package)
{
yaz_log(YLOG_LOG, "Got search");
Package &package)
{
yaz_log(YLOG_LOG, "Got search");
@@
-127,11
+128,11
@@
void yf::Session_shared::Rep::handle_search(Z_SearchRequest *req,
package.response() = search_package.response();
}
package.response() = search_package.response();
}
-void yf::Session_shared::Rep::handle_init(Z_InitRequest *req, Package &package)
+void yf::SessionShared::Rep::handle_init(Z_InitRequest *req, Package &package)
{
yaz_log(YLOG_LOG, "Got init");
{
yaz_log(YLOG_LOG, "Got init");
- Session_shared::InitKey key;
+ SessionShared::InitKey key;
const char *vhost =
yaz_oi_get_string_oidval(&req->otherInfo, VAL_PROXY, 1, 0);
if (vhost)
const char *vhost =
yaz_oi_get_string_oidval(&req->otherInfo, VAL_PROXY, 1, 0);
if (vhost)
@@
-174,7
+175,7
@@
void yf::Session_shared::Rep::handle_init(Z_InitRequest *req, Package &package)
yaz_log(YLOG_LOG, "New KEY");
// building new package with original init and new session
yaz_log(YLOG_LOG, "New KEY");
// building new package with original init and new session
- SharedList l(new Session_shared::List); // new session for backend
+ SharedList l(new SessionShared::List); // new session for backend
Package init_package(l->m_session, package.origin());
init_package.copy_filter(package);
Package init_package(l->m_session, package.origin());
init_package.copy_filter(package);
@@
-208,7
+209,7
@@
void yf::Session_shared::Rep::handle_init(Z_InitRequest *req, Package &package)
}
}
}
}
-void yf::Session_shared::process(Package &package) const
+void yf::SessionShared::process(Package &package) const
{
// don't tell the backend if the "fronent" filter closes..
// we want to keep them alive
{
// don't tell the backend if the "fronent" filter closes..
// we want to keep them alive
@@
-249,6
+250,20
@@
void yf::Session_shared::process(Package &package) const
package.move(); // Not Z39.50 or not Init
}
package.move(); // Not Z39.50 or not Init
}
+static yp2::filter::Base* filter_creator()
+{
+ return new yp2::filter::SessionShared;
+}
+
+extern "C" {
+ struct yp2_filter_struct yp2_filter_session_shared = {
+ 0,
+ "session_shared",
+ filter_creator
+ };
+}
+
+
/*
* Local variables:
/*
* Local variables: