1
0
Fork 0
arangodb/lib/ApplicationFeatures/GreetingsFeature.cpp

56 lines
3.0 KiB
C++

////////////////////////////////////////////////////////////////////////////////
/// DISCLAIMER
///
/// Copyright 2016 ArangoDB GmbH, Cologne, Germany
///
/// 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.
///
/// Copyright holder is ArangoDB GmbH, Cologne, Germany
///
/// @author Jan Steemann
////////////////////////////////////////////////////////////////////////////////
#include "GreetingsFeature.h"
#include "Logger/Logger.h"
#include "Rest/Version.h"
#include <iostream>
namespace arangodb {
GreetingsFeature::GreetingsFeature(
application_features::ApplicationServer& server
)
: ApplicationFeature(server, "Greetings") {
setOptional(false);
startsAfter("Logger");
}
void GreetingsFeature::prepare() {
#ifdef __linux__
if (isatty(STDOUT_FILENO)) {
std::cout << "\x1b[0;1;35;95m╔═\x1b[0;1;31;91m║╔\x1b[0;1;33;93m═║\x1b[0;1;32;92m╔═\x1b[0;1;36;96m║╔\x1b[0;1;34;94m═\x1b[0m \x1b[0;1;35;95m╔═\x1b[0;1;31;91m╝╔\x1b[0;1;33;93m═║\x1b[0;1;32;92m╔═\x1b[0m \x1b[0;1;36;96m╔\x1b[0;1;34;94m═\x1b[0m \x1b[0;1;31;91m══\x1b[0;1;33;93m║\x1b[0m \x1b[0;1;32;92m║\x1b[0m \x1b[0;1;36;96m║\x1b[0m \x1b[0;1;34;94m╔\x1b[0;1;35;95m═║\x1b[0;1;31;91m╔═\x1b[0;1;33;93m╝═\x1b[0;1;32;92m═║\x1b[0m" << std::endl;
std::cout << "\x1b[0;1;31;91m╔═\x1b[0;1;33;93m║╔\x1b[0;1;32;92m╔╝\x1b[0;1;36;96m╔═\x1b[0;1;34;94m║║\x1b[0m \x1b[0;1;35;95m║\x1b[0;1;31;91m║\x1b[0m \x1b[0;1;33;93m║║\x1b[0m \x1b[0;1;32;92m║\x1b[0;1;36;96m║\x1b[0m \x1b[0;1;34;94m║╔\x1b[0;1;35;95m═║\x1b[0m \x1b[0;1;33;93m══\x1b[0;1;32;92m║\x1b[0m \x1b[0;1;36;96m══\x1b[0;1;34;94m║═\x1b[0;1;35;95m╝╔\x1b[0;1;31;91m╔╝\x1b[0;1;33;93m║\x1b[0m \x1b[0;1;32;92m╔\x1b[0;1;36;96m═╝\x1b[0m" << std::endl;
std::cout << "\x1b[0;1;33;93m╝\x1b[0m \x1b[0;1;32;92m╝╝\x1b[0m \x1b[0;1;36;96m╝\x1b[0;1;34;94m╝\x1b[0m \x1b[0;1;35;95m╝╝\x1b[0m \x1b[0;1;31;91m╝\x1b[0;1;33;93m══\x1b[0;1;32;92m╝═\x1b[0;1;36;96m═╝\x1b[0;1;34;94m══\x1b[0m \x1b[0;1;35;95m═\x1b[0;1;31;91m═\x1b[0m \x1b[0;1;32;92m══\x1b[0;1;36;96m╝╝\x1b[0m \x1b[0;1;35;95m╝\x1b[0m \x1b[0;1;31;91m╝\x1b[0m \x1b[0;1;33;93m╝\x1b[0;1;32;92m══\x1b[0;1;36;96m╝═\x1b[0;1;34;94m═╝\x1b[0m" << std::endl;
std::cout << std::endl;
}
#endif
LOG_TOPIC(INFO, arangodb::Logger::FIXME) << "" << rest::Version::getVerboseVersionString();
}
void GreetingsFeature::unprepare() {
LOG_TOPIC(INFO, arangodb::Logger::FIXME) << "ArangoDB has been shut down";
}
} // arangodb