std::string value;
bool found = self->py_modules->get_config(self->this_module->get_name(),
what, &value);
+
+ PyEval_RestoreThread(tstate);
+
if (found) {
dout(10) << __func__ << " " << what << " found: " << value.c_str() << dendl;
- return PyString_FromString(value.c_str());
+ return self->this_module->py_module->get_typed_option_value(what, value);
} else {
dout(4) << __func__ << " " << what << " not found " << dendl;
Py_RETURN_NONE;
status_code = 0
output_buffer = "Output buffer is for data results"
output_string = "Output string is for informative text"
- message = "hello world!"
-
if 'person_name' in cmd:
- message = "hello, " + cmd['person_name'] + "!"
+ message = "Hello, " + cmd['person_name']
+ else:
+ message = "Hello " + self.get_module_option('place');
+ if self.get_module_option('emphatic'):
+ message += '!'
- return status_code, output_buffer, message + "\n" + output_string
+ return HandleCommandResult(retval=status_code, stdout=output_buffer,
+ stderr=message + "\n" + output_string)
+
def serve(self):
"""