From 3dff46b8e9d4367acd4381709e267eb25d7bf99b Mon Sep 17 00:00:00 2001 From: PerryWerneck Date: Sun, 5 Mar 2017 05:18:33 -0300 Subject: [PATCH] Implementando novo módulo de serviço. --- src/include/pw3270cpp.h | 2 ++ src/libpw3270cpp/service.cc | 11 +++++++++++ src/libpw3270cpp/session.cc | 7 ++++++- src/libpw3270cpp/testprogram.cc | 3 ++- 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/include/pw3270cpp.h b/src/include/pw3270cpp.h index 05c263a..8874675 100644 --- a/src/include/pw3270cpp.h +++ b/src/include/pw3270cpp.h @@ -144,6 +144,8 @@ static bool has_default(void); static void set_plugin(session * (*factory)(const char *name)); + virtual string get_session_name(void) const; + // Log management void log(const char *fmt, ...); void logva(const char *fmt, va_list args); diff --git a/src/libpw3270cpp/service.cc b/src/libpw3270cpp/service.cc index 9134526..0445c24 100644 --- a/src/libpw3270cpp/service.cc +++ b/src/libpw3270cpp/service.cc @@ -266,7 +266,11 @@ DBusError err; dbus_error_init(&err); +#ifdef DEBUG conn = dbus_bus_get(DBUS_BUS_SESSION, &err); +#else + conn = dbus_bus_get(DBUS_BUS_SYSTEM, &err); +#endif if(dbus_error_is_set(&err)) { @@ -305,6 +309,13 @@ } + virtual string get_session_name(void) const + { + string rc = "service://"; + rc += this->name; + return rc; + } + virtual bool is_connected(void) { return getInteger("isConnected", DBUS_TYPE_STRING, &this->id, DBUS_TYPE_INVALID); diff --git a/src/libpw3270cpp/session.cc b/src/libpw3270cpp/session.cc index eccb201..d2dafc4 100644 --- a/src/libpw3270cpp/session.cc +++ b/src/libpw3270cpp/session.cc @@ -692,7 +692,8 @@ int rows = get_height(); int cols = get_width(); - for(int r = 0; r < rows; r++) { + for(int r = 0; r < rows; r++) + { rc += get_string_at(r+1,0,cols).c_str(); rc += "\n"; } @@ -700,6 +701,10 @@ return rc; } + string session::get_session_name(void) const + { + return string(); + } } diff --git a/src/libpw3270cpp/testprogram.cc b/src/libpw3270cpp/testprogram.cc index b6e5fe6..617b5f1 100644 --- a/src/libpw3270cpp/testprogram.cc +++ b/src/libpw3270cpp/testprogram.cc @@ -47,7 +47,8 @@ // session *session = session::start("new"); cout << "pw3270 version: " << session->get_version() << endl; - cout << "pw3270 revision: " << session->get_revision() << endl << endl; + cout << "pw3270 revision: " << session->get_revision() << endl; + cout << "pw3270 session: " << session->get_session_name() << endl << endl; if(session->is_connected()) cout << "\tConnected to host" << endl; -- libgit2 0.21.2