X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=service%2Fsystem%2Flogger_service%2Fserver%2Fsrc%2Freader.cpp;fp=service%2Fsystem%2Flogger_service%2Fserver%2Fsrc%2Freader.cpp;h=04880f02fa04ba579ca3cb66e7de89c3c2a8ea41;hb=17cf21bcf8a2e29d2cbcf0a313474d2a4ee44f5d;hp=0000000000000000000000000000000000000000;hpb=9e86046cdb356913ae026f616e5bf17f6f238aa5;p=staging%2Fbasesystem.git diff --git a/service/system/logger_service/server/src/reader.cpp b/service/system/logger_service/server/src/reader.cpp new file mode 100755 index 0000000..04880f0 --- /dev/null +++ b/service/system/logger_service/server/src/reader.cpp @@ -0,0 +1,86 @@ +/* + * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION. + * + * 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. + */ + +/////////////////////////////////////////////////////////////////////////////// +/// \ingroup tag_SS_LoggerService +/// \brief TODO +/// +/////////////////////////////////////////////////////////////////////////////// +#include "readerWriter/reader/reader.h" +#include +#include +#include +#include "readerWriter/reader/queue_reader.h" +#include "readerWriter/reader/mem_reader.h" +#include "ss_logger_cfg.h" +namespace ReaderWriter { +CReader::CReader() + : m_pLoggerCfg(NULL) { +} + +CReader::~CReader() { +} + +CReader* CReader::OpenReader(CLoggerCfg* f_pLoggerCfg, EReaderType f_type, + std::string f_name, UI_32 f_maxSize) { + FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "+"); + CReader* l_ret = NULL; + if (f_pLoggerCfg != NULL) { // LCOV_EXCL_BR_LINE 200:As it is not always NULL + if (f_name.length() != 0) { // LCOV_EXCL_BR_LINE 200:Because it is not always an empty string + switch (f_type) { // LCOV_EXCL_BR_LINE 200:As it must be eReaderWriterTypeQueue or eReaderWriterTypeMem + case eReaderWriterTypeFile: + break; + + case eReaderWriterTypeQueue: + l_ret = new (std::nothrow) CQueueReader(); // LCOV_EXCL_BR_LINE 5:Cannot pass because it cannot be new + break; + + case eReaderWriterTypeMem: + l_ret = new (std::nothrow) CMemReader(); // LCOV_EXCL_BR_LINE 5:Cannot pass because it cannot be new + break; + + default: + break; + } + } + if (NULL != l_ret) { // LCOV_EXCL_BR_LINE 200:As it is not always NULL + if (eFrameworkunifiedStatusOK != l_ret->Initialize(f_pLoggerCfg, f_name, f_maxSize)) { + delete (l_ret); + l_ret = NULL; + } + } + } + FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "-"); + return l_ret; +} + + +EFrameworkunifiedStatus CReader::ReadToFile(std::string f_fileName, UI_32& f_Written) { + FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "+"); + EFrameworkunifiedStatus l_eStatus = eFrameworkunifiedStatusNotImplemented; + + FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "-"); + return l_eStatus; +} + +EFrameworkunifiedStatus CReader::ResetPosition(void) { + FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "+"); + EFrameworkunifiedStatus l_eStatus = eFrameworkunifiedStatusNotImplemented; + + FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "-"); + return l_eStatus; +} +} // namespace ReaderWriter