mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 01:37:00 +00:00
159 lines
3.8 KiB
C++
159 lines
3.8 KiB
C++
// -*- C++ -*-
|
|
//
|
|
// $Id: Log_Category.inl 97026 2013-04-15 17:48:38Z huangh $
|
|
|
|
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
|
|
|
ACE_INLINE unsigned int
|
|
ACE_Log_Category::id()
|
|
{
|
|
return id_;
|
|
}
|
|
|
|
ACE_INLINE const char*
|
|
ACE_Log_Category::name ()
|
|
{
|
|
return name_;
|
|
}
|
|
|
|
ACE_INLINE unsigned int
|
|
ACE_Log_Category_TSS::id()
|
|
{
|
|
return category_->id_;
|
|
}
|
|
|
|
ACE_INLINE const char*
|
|
ACE_Log_Category_TSS::name ()
|
|
{
|
|
return category_->name_;
|
|
}
|
|
|
|
ACE_INLINE ACE_Log_Msg*
|
|
ACE_Log_Category_TSS::logger ()
|
|
{
|
|
return logger_;
|
|
}
|
|
|
|
/// Get the current ACE_Log_Priority mask.
|
|
ACE_INLINE u_long
|
|
ACE_Log_Category_TSS::priority_mask ()
|
|
{
|
|
return priority_mask_;
|
|
}
|
|
|
|
/// Set the ACE_Log_Priority mask, returns original mask.
|
|
ACE_INLINE u_long
|
|
ACE_Log_Category_TSS::priority_mask (u_long n_mask)
|
|
{
|
|
u_long o_mask = this->priority_mask_;
|
|
this->priority_mask_ = n_mask;
|
|
return o_mask;
|
|
}
|
|
/// Return true if the requested priority is enabled.
|
|
ACE_INLINE int
|
|
ACE_Log_Category_TSS::log_priority_enabled (ACE_Log_Priority log_priority)
|
|
{
|
|
return ACE_BIT_ENABLED (this->priority_mask_ |
|
|
category_->priority_mask(),
|
|
log_priority);
|
|
}
|
|
|
|
ACE_INLINE void
|
|
ACE_Log_Category_TSS::set (const char *file,
|
|
int line,
|
|
int op_status,
|
|
int errnum)
|
|
{
|
|
logger_->set(file, line, op_status, errnum, logger_->restart (), logger_->msg_ostream (), logger_->msg_callback ());
|
|
}
|
|
|
|
/// These values are only actually set if the requested priority is
|
|
/// enabled.
|
|
ACE_INLINE
|
|
void ACE_Log_Category_TSS::conditional_set (const char *file,
|
|
int line,
|
|
int op_status,
|
|
int errnum)
|
|
{
|
|
logger_->conditional_set(file, line, op_status, errnum);
|
|
}
|
|
|
|
ACE_INLINE ssize_t
|
|
ACE_Log_Category_TSS::log (ACE_Log_Priority priority, const ACE_TCHAR *format_str, ...)
|
|
{
|
|
// Start of variable args section.
|
|
va_list argp;
|
|
|
|
va_start (argp, format_str);
|
|
|
|
ssize_t const result = this->log (format_str,
|
|
priority,
|
|
argp);
|
|
va_end (argp);
|
|
|
|
return result;
|
|
}
|
|
|
|
#if defined (ACE_HAS_WCHAR)
|
|
ACE_INLINE ssize_t
|
|
ACE_Log_Category_TSS::log (ACE_Log_Priority priority, const ACE_ANTI_TCHAR *format_str, ...)
|
|
{
|
|
// Start of variable args section.
|
|
va_list argp;
|
|
|
|
va_start (argp, format_str);
|
|
|
|
ssize_t const result = this->log (ACE_TEXT_ANTI_TO_TCHAR (format_str),
|
|
priority,
|
|
argp);
|
|
va_end (argp);
|
|
|
|
return result;
|
|
}
|
|
#endif /* ACE_HAS_WCHAR */
|
|
|
|
/**
|
|
* An alternative logging mechanism that makes it possible to
|
|
* integrate variable argument lists from other logging mechanisms
|
|
* into the ACE mechanism.
|
|
*/
|
|
|
|
ACE_INLINE ssize_t
|
|
ACE_Log_Category_TSS::log (const ACE_TCHAR *format,
|
|
ACE_Log_Priority priority,
|
|
va_list argp)
|
|
{
|
|
if (this->log_priority_enabled (priority) == 0)
|
|
return 0;
|
|
return logger_->log(format, priority, argp, this);
|
|
}
|
|
|
|
|
|
ACE_INLINE int
|
|
ACE_Log_Category_TSS::log_hexdump (ACE_Log_Priority priority,
|
|
const char *buffer,
|
|
size_t size,
|
|
const ACE_TCHAR *text)
|
|
{
|
|
if (this->log_priority_enabled (priority) == 0)
|
|
return 0;
|
|
return logger_->log_hexdump(priority, buffer, size, text, this);
|
|
}
|
|
|
|
/// Get the current ACE_Log_Priority mask.
|
|
ACE_INLINE u_long
|
|
ACE_Log_Category::priority_mask ()
|
|
{
|
|
return priority_mask_;
|
|
}
|
|
|
|
/// Set the ACE_Log_Priority mask, returns original mask.
|
|
ACE_INLINE u_long
|
|
ACE_Log_Category::priority_mask (u_long n_mask)
|
|
{
|
|
u_long o_mask = this->priority_mask_;
|
|
this->priority_mask_ = n_mask;
|
|
return o_mask;
|
|
}
|
|
|
|
ACE_END_VERSIONED_NAMESPACE_DECL
|