diff options
author | Shawn Willden <swillden@google.com> | 2014-12-30 23:23:40 -0700 |
---|---|---|
committer | Shawn Willden <swillden@google.com> | 2015-02-25 12:33:04 -0700 |
commit | 538b0654fd5096841e12da15271c74429a37be18 (patch) | |
tree | 3f86878f9f636c5649d0e85da3d39b0b0dc33c07 /logger.cpp | |
parent | 63ac043f81f8e2a15bbadcb6628b92096295ab6a (diff) | |
download | android_system_keymaster-538b0654fd5096841e12da15271c74429a37be18.tar.gz android_system_keymaster-538b0654fd5096841e12da15271c74429a37be18.tar.bz2 android_system_keymaster-538b0654fd5096841e12da15271c74429a37be18.zip |
Refactor logging, to stop passing Logger references everywhere.
Change-Id: I9380c21872710743413ca6a4340ae19f58b1e983
Diffstat (limited to 'logger.cpp')
-rw-r--r-- | logger.cpp | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/logger.cpp b/logger.cpp new file mode 100644 index 0000000..d84abc8 --- /dev/null +++ b/logger.cpp @@ -0,0 +1,130 @@ +/* + * Copyright 2014 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include <keymaster/logger.h> + +namespace keymaster { + +Logger* Logger::instance_ = 0; + +int Logger::log(LogLevel level, const char* fmt, ...) const { + va_list args; + va_start(args, fmt); + int result = log_msg(level, fmt, args); + va_end(args); + return result; +} + +int Logger::debug(const char* fmt, ...) const { + va_list args; + va_start(args, fmt); + int result = log_msg(DEBUG_LVL, fmt, args); + va_end(args); + return result; +} + +int Logger::info(const char* fmt, ...) const { + va_list args; + va_start(args, fmt); + int result = log_msg(INFO_LVL, fmt, args); + va_end(args); + return result; +} + +int Logger::warning(const char* fmt, ...) const { + va_list args; + va_start(args, fmt); + int result = log_msg(WARNING_LVL, fmt, args); + va_end(args); + return result; +} + +int Logger::error(const char* fmt, ...) const { + va_list args; + va_start(args, fmt); + int result = log_msg(ERROR_LVL, fmt, args); + va_end(args); + return result; +} + +int Logger::severe(const char* fmt, ...) const { + va_list args; + va_start(args, fmt); + int result = log_msg(SEVERE_LVL, fmt, args); + va_end(args); + return result; +} + +/* static */ +int Logger::Log(LogLevel level, const char* fmt, va_list args) { + if (!instance_) + return 0; + return instance_->log_msg(level, fmt, args); +} + +/* static */ +int Logger::Log(LogLevel level, const char* fmt, ...) { + va_list args; + va_start(args, fmt); + int result = Log(level, fmt, args); + va_end(args); + return result; +} + +/* static */ +int Logger::Debug(const char* fmt, ...) { + va_list args; + va_start(args, fmt); + int result = Log(DEBUG_LVL, fmt, args); + va_end(args); + return result; +} + +/* static */ +int Logger::Info(const char* fmt, ...) { + va_list args; + va_start(args, fmt); + int result = Log(INFO_LVL, fmt, args); + va_end(args); + return result; +} +/* static */ +int Logger::Warning(const char* fmt, ...) { + va_list args; + va_start(args, fmt); + int result = Log(WARNING_LVL, fmt, args); + va_end(args); + return result; +} +/* static */ +int Logger::Error(const char* fmt, ...) { + va_list args; + va_start(args, fmt); + int result = Log(ERROR_LVL, fmt, args); + va_end(args); + return result; +} +/* static */ +int Logger::Severe(const char* fmt, ...) { + va_list args; + va_start(args, fmt); + int result = Log(SEVERE_LVL, fmt, args); + va_end(args); + return result; +} + + +} // namespace keymaster |