summaryrefslogtreecommitdiff
path: root/src/components/transport_manager/src/tcp/tcp_device.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/transport_manager/src/tcp/tcp_device.cc')
-rw-r--r--src/components/transport_manager/src/tcp/tcp_device.cc88
1 files changed, 44 insertions, 44 deletions
diff --git a/src/components/transport_manager/src/tcp/tcp_device.cc b/src/components/transport_manager/src/tcp/tcp_device.cc
index 2540c26ed..92848a424 100644
--- a/src/components/transport_manager/src/tcp/tcp_device.cc
+++ b/src/components/transport_manager/src/tcp/tcp_device.cc
@@ -1,4 +1,4 @@
-/**
+/*
*
* Copyright (c) 2013, Ford Motor Company
* All rights reserved.
@@ -30,31 +30,34 @@
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
-
+#include "utils/logger.h"
#include "transport_manager/tcp/tcp_device.h"
-#include "utils/logger.h"
namespace transport_manager {
namespace transport_adapter {
+//CREATE_LOGGERPTR_LOCAL(logger_, "TransportManager")
CREATE_LOGGERPTR_GLOBAL(logger_, "TransportManager")
+
TcpDevice::TcpDevice(const in_addr_t& in_addr, const std::string& name)
- :
- Device(name, name),
- in_addr_(in_addr),
- last_handle_(0) {
- pthread_mutex_init(&applications_mutex_, 0);
+ : Device(name, name),
+ applications_mutex_(),
+ in_addr_(in_addr),
+ last_handle_(0) {
+ LOG4CXX_AUTO_TRACE(logger_);
}
bool TcpDevice::IsSameAs(const Device* other) const {
- LOG4CXX_TRACE(logger_, "enter. Device: " << other);
+ LOG4CXX_AUTO_TRACE(logger_);
+ LOG4CXX_DEBUG(logger_, "Device: " << other);
const TcpDevice* other_tcp_device = static_cast<const TcpDevice*>(other);
if (other_tcp_device->in_addr_ == in_addr_) {
- LOG4CXX_TRACE(logger_,
- "exit with TRUE. Condition: other_tcp_device->in_addr_ == in_addr_");
+ LOG4CXX_TRACE(
+ logger_,
+ "exit with TRUE. Condition: other_tcp_device->in_addr_ == in_addr_");
return true;
} else {
LOG4CXX_TRACE(logger_, "exit with FALSE");
@@ -63,91 +66,88 @@ bool TcpDevice::IsSameAs(const Device* other) const {
}
ApplicationList TcpDevice::GetApplicationList() const {
- LOG4CXX_TRACE(logger_, "enter");
- pthread_mutex_lock(&applications_mutex_);
+ LOG4CXX_AUTO_TRACE(logger_);
+ sync_primitives::AutoLock locker(applications_mutex_);
ApplicationList app_list;
for (std::map<ApplicationHandle, Application>::const_iterator it =
- applications_.begin(); it != applications_.end(); ++it) {
+ applications_.begin(); it != applications_.end(); ++it) {
app_list.push_back(it->first);
}
- pthread_mutex_unlock(&applications_mutex_);
- LOG4CXX_TRACE(logger_, "exit with app_list. It's size = " << app_list.size());
return app_list;
}
ApplicationHandle TcpDevice::AddIncomingApplication(int socket_fd) {
- LOG4CXX_TRACE(logger_, "enter. Socket_fd: " << socket_fd);
+ LOG4CXX_AUTO_TRACE(logger_);
+ LOG4CXX_DEBUG(logger_, "Socket_fd: " << socket_fd);
Application app;
app.incoming = true;
app.socket = socket_fd;
- app.port = 0; // this line removes compiler warning
- pthread_mutex_lock(&applications_mutex_);
+ app.port = 0; // this line removes compiler warning
+ sync_primitives::AutoLock locker(applications_mutex_);
const ApplicationHandle app_handle = ++last_handle_;
applications_[app_handle] = app;
- pthread_mutex_unlock(&applications_mutex_);
- LOG4CXX_TRACE(logger_, "exit with app_handle " << app_handle);
+ LOG4CXX_DEBUG(logger_, "App_handle " << app_handle);
return app_handle;
}
ApplicationHandle TcpDevice::AddDiscoveredApplication(int port) {
- LOG4CXX_TRACE(logger_, "enter. port " << port);
+ LOG4CXX_AUTO_TRACE(logger_);
+ LOG4CXX_DEBUG(logger_, "Port " << port);
Application app;
app.incoming = false;
app.socket = 0; // this line removes compiler warning
app.port = port;
- pthread_mutex_lock(&applications_mutex_);
+ sync_primitives::AutoLock locker(applications_mutex_);
const ApplicationHandle app_handle = ++last_handle_;
applications_[app_handle] = app;
- pthread_mutex_unlock(&applications_mutex_);
- LOG4CXX_TRACE(logger_, "exit with app_handle " << app_handle);
+ LOG4CXX_DEBUG(logger_, "App_handle " << app_handle);
return app_handle;
}
-
void TcpDevice::RemoveApplication(const ApplicationHandle app_handle) {
- LOG4CXX_TRACE(logger_, "enter. ApplicationHandle: " << app_handle);
- pthread_mutex_lock(&applications_mutex_);
+ LOG4CXX_AUTO_TRACE(logger_);
+ LOG4CXX_DEBUG(logger_, "ApplicationHandle: " << app_handle);
+ sync_primitives::AutoLock locker(applications_mutex_);
applications_.erase(app_handle);
- pthread_mutex_unlock(&applications_mutex_);
- LOG4CXX_TRACE(logger_, "exit");
}
TcpDevice::~TcpDevice() {
- pthread_mutex_destroy(&applications_mutex_);
+ LOG4CXX_AUTO_TRACE(logger_);
}
int TcpDevice::GetApplicationSocket(const ApplicationHandle app_handle) const {
- LOG4CXX_TRACE(logger_, "enter. ApplicationHandle: " << app_handle);
- std::map<ApplicationHandle, Application>::const_iterator it = applications_.find(
- app_handle);
+ LOG4CXX_AUTO_TRACE(logger_);
+ LOG4CXX_DEBUG(logger_, "ApplicationHandle: " << app_handle);
+ std::map<ApplicationHandle, Application>::const_iterator it = applications_
+ .find(app_handle);
if (applications_.end() == it) {
- LOG4CXX_TRACE(logger_, "exit with -1. Condition: applications_.end() == it");
+ LOG4CXX_WARN(logger_, "Application was not found");
return -1;
}
if (!it->second.incoming) {
- LOG4CXX_TRACE(logger_, "exit with -1. Condition: !it->second.incoming");
+ LOG4CXX_WARN(logger_, "Application is not incoming");
return -1;
}
- LOG4CXX_TRACE(logger_, "exit with socket " << it->second.socket);
+ LOG4CXX_DEBUG(logger_, "socket " << it->second.socket);
return it->second.socket;
}
int TcpDevice::GetApplicationPort(const ApplicationHandle app_handle) const {
- LOG4CXX_TRACE(logger_, "enter. ApplicationHandle: " << app_handle);
- std::map<ApplicationHandle, Application>::const_iterator it = applications_.find(
- app_handle);
+ LOG4CXX_AUTO_TRACE(logger_);
+ LOG4CXX_DEBUG(logger_, "ApplicationHandle: " << app_handle);
+ std::map<ApplicationHandle, Application>::const_iterator it = applications_
+ .find(app_handle);
if (applications_.end() == it) {
- LOG4CXX_TRACE(logger_, "exit with -1. Condition: applications_.end() == it");
+ LOG4CXX_WARN(logger_, "Application was not found");
return -1;
}
if (it->second.incoming) {
- LOG4CXX_TRACE(logger_, "exit with -1. Condition: it->second.incoming");
+ LOG4CXX_WARN(logger_, "Application is incoming");
return -1;
}
- LOG4CXX_TRACE(logger_, "exit with port " << it->second.port);
+ LOG4CXX_DEBUG(logger_, "port " << it->second.port);
return it->second.port;
}
-
} // namespace transport_adapter
} // namespace transport_manager