1
0
mirror of https://github.com/OpenNebula/one.git synced 2025-02-03 13:47:01 +03:00

feature #1483: Moved implementation of util functions to a cc file

This commit is contained in:
Ruben S. Montero 2013-02-08 21:50:40 +01:00
parent f4434f00ad
commit 4e41c91022
4 changed files with 60 additions and 30 deletions

View File

@ -21,37 +21,13 @@
namespace one_util
{
inline string& toupper(string& st)
{
transform(st.begin(),st.end(),st.begin(),(int(*)(int))std::toupper);
return st;
};
std::string& toupper(std::string& st);
inline string& tolower(string& st)
{
transform(st.begin(),st.end(),st.begin(),(int(*)(int))std::tolower);
return st;
};
std::string& tolower(std::string& st);
inline string log_time(time_t the_time)
{
char time_str[26];
std::string log_time(time_t the_time);
#ifdef SOLARIS
ctime_r(&(the_time),time_str,sizeof(char)*26);
#else
ctime_r(&(the_time),time_str);
#endif
time_str[24] = '\0'; // Get rid of final enter character
return string(time_str);
};
inline string log_time()
{
return log_time( time(0) );
};
std::string log_time();
};
#endif /* UTIL_H_ */

View File

@ -25,7 +25,8 @@ source_files=[
'ActionManager.cc',
'Attribute.cc',
'mem_collector.c',
'SSLTools.cc'
'SSLTools.cc',
'Util.cc'
]
# Build library

53
src/common/Util.cc Normal file
View File

@ -0,0 +1,53 @@
/* -------------------------------------------------------------------------- */
/* Copyright 2002-2013, OpenNebula Project (OpenNebula.org), C12G Labs */
/* */
/* 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 "Util.h"
#include <algorithm>
using namespace std;
string& one_util::toupper(string& st)
{
transform(st.begin(),st.end(),st.begin(),(int(*)(int))toupper);
return st;
};
string& one_util::tolower(string& st)
{
transform(st.begin(),st.end(),st.begin(),(int(*)(int))tolower);
return st;
};
string one_util::log_time(time_t the_time)
{
char time_str[26];
#ifdef SOLARIS
ctime_r(&(the_time),time_str,sizeof(char)*26);
#else
ctime_r(&(the_time),time_str);
#endif
time_str[24] = '\0'; // Get rid of final enter character
return string(time_str);
};
string one_util::log_time()
{
return log_time( time(0) );
};

View File

@ -25,7 +25,7 @@ lib_name='nebula_core'
source_files=[
'SystemDB.cc',
'Nebula.cc',
'NebulaTemplate.cc',
'NebulaTemplate.cc'
]
# Build library