MCPcopy Create free account
hub / github.com/apache/mesos / create

Method create

src/slave/container_logger.cpp:35–65  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

33namespace slave {
34
35Try<ContainerLogger*> ContainerLogger::create(const Option<string>& type)
36{
37 ContainerLogger* logger = nullptr;
38
39 if (type.isNone()) {
40 logger = new internal::slave::SandboxContainerLogger();
41 } else {
42 // Try to load container logger from module.
43 Try<ContainerLogger*> module =
44 modules::ModuleManager::create<ContainerLogger>(type.get());
45
46 if (module.isError()) {
47 return Error(
48 "Failed to create container logger module '" + type.get() +
49 "': " + module.error());
50 }
51
52 logger = module.get();
53 }
54
55 // Initialize the module.
56 Try<Nothing> initialize = logger->initialize();
57 if (initialize.isError()) {
58 delete logger;
59
60 return Error(
61 "Failed to initialize container logger module: " + initialize.error());
62 }
63
64 return logger;
65}
66
67} // namespace slave {
68} // namespace mesos {

Callers

nothing calls this directly

Calls 6

errorMethod · 0.65
ErrorFunction · 0.50
isNoneMethod · 0.45
getMethod · 0.45
isErrorMethod · 0.45
initializeMethod · 0.45

Tested by

no test coverage detected