void rasqal_log_error_varargs(rasqal_world* world, raptor_log_level level, raptor_locator* locator, const char* message, va_list arguments) { char *buffer; size_t length; raptor_log_message logmsg; raptor_log_handler handler = world->log_handler; void* handler_data = world->log_handler_user_data; if(level == RAPTOR_LOG_LEVEL_NONE) return; buffer = NULL; if(raptor_vasprintf(&buffer, message, arguments) < 0) buffer = NULL; if(!buffer) { if(locator) { raptor_locator_print(locator, stderr); fputc(' ', stderr); } fputs("rasqal ", stderr); fputs(rasqal_log_level_labels[level], stderr); fputs(" - ", stderr); vfprintf(stderr, message, arguments); fputc('\n', stderr); return; } length=strlen(buffer); if(buffer[length-1]=='\n') buffer[length-1]='\0'; if(handler) { /* This is the single place in rasqal that the user error handler * functions are called. */ /* raptor2 raptor_log_handler */ logmsg.code = -1; /* no information to put as code */ logmsg.level = level; logmsg.locator = locator; logmsg.text = buffer; handler(handler_data, &logmsg); } else { if(locator) { raptor_locator_print(locator, stderr); fputc(' ', stderr); } fputs("rasqal ", stderr); fputs(rasqal_log_level_labels[level], stderr); fputs(" - ", stderr); fputs(buffer, stderr); fputc('\n', stderr); } RASQAL_FREE(char*, buffer); }
void raptor_log_error_varargs(raptor_world* world, raptor_log_level level, raptor_locator* locator, const char* message, va_list arguments) { char *buffer = NULL; size_t length; if(level == RAPTOR_LOG_LEVEL_NONE) return; if(world->internal_ignore_errors) return; length = raptor_vasprintf(&buffer, message, arguments); if(!buffer) { if(locator && world) { raptor_locator_print(locator, stderr); fputc(' ', stderr); } fputs("raptor ", stderr); fputs(raptor_log_level_labels[level], stderr); fputs(" - ", stderr); vfprintf(stderr, message, arguments); fputc('\n', stderr); return; } if(length >= 1 && buffer[length-1] == '\n') buffer[length-1]='\0'; raptor_log_error(world, level, locator, buffer); RAPTOR_FREE(char*, buffer); }
static int log_handler(void *user_data, librdf_log_message *message) { /* int code=message->code; */ /* The error code */ raptor_locator *locator=(raptor_locator*)(message->locator); /* Do not handle messages below warning*/ if(message->level < LIBRDF_LOG_WARN) return 0; if(message->level == LIBRDF_LOG_WARN) fprintf(stderr, ": Warning - "); else fprintf(stderr, ": Error - "); if(locator) { /* && message->facility == LIBRDF_FROM_PARSER) */ raptor_locator_print(locator, stderr); fputc(':', stderr); fputc(' ', stderr); } fputs(message->message, stderr); fputc('\n', stderr); if(message->level >= LIBRDF_LOG_FATAL) exit(1); /* Handled */ return 1; }
static void roqet_log_handler(void *data, raptor_log_message *message) { switch(message->level) { case RAPTOR_LOG_LEVEL_FATAL: case RAPTOR_LOG_LEVEL_ERROR: if(!ignore_errors) { fprintf(stderr, "%s: Error - ", program); raptor_locator_print(message->locator, stderr); fprintf(stderr, " - %s\n", message->text); } error_count++; break; case RAPTOR_LOG_LEVEL_WARN: if(warning_level > 0) { fprintf(stderr, "%s: Warning - ", program); raptor_locator_print(message->locator, stderr); fprintf(stderr, " - %s\n", message->text); } warning_count++; break; case RAPTOR_LOG_LEVEL_NONE: case RAPTOR_LOG_LEVEL_TRACE: case RAPTOR_LOG_LEVEL_DEBUG: case RAPTOR_LOG_LEVEL_INFO: fprintf(stderr, "%s: Unexpected %s message - ", program, raptor_log_level_get_label(message->level)); raptor_locator_print(message->locator, stderr); fprintf(stderr, " - %s\n", message->text); break; } }
static void to_ntriples_log_handler(void *data, raptor_log_message *message) { raptor_parser *parser = (raptor_parser*)data; switch(message->level) { case RAPTOR_LOG_LEVEL_FATAL: case RAPTOR_LOG_LEVEL_ERROR: fprintf(stderr, "%s: Error - ", program); raptor_locator_print(message->locator, stderr); fprintf(stderr, " - %s\n", message->text); raptor_parser_parse_abort(parser); error_count++; break; case RAPTOR_LOG_LEVEL_WARN: fprintf(stderr, "%s: Warning - ", program); raptor_locator_print(message->locator, stderr); fprintf(stderr, " - %s\n", message->text); warning_count++; break; case RAPTOR_LOG_LEVEL_NONE: case RAPTOR_LOG_LEVEL_TRACE: case RAPTOR_LOG_LEVEL_DEBUG: case RAPTOR_LOG_LEVEL_INFO: fprintf(stderr, "%s: Unexpected %s message - ", program, raptor_log_level_get_label(message->level)); raptor_locator_print(message->locator, stderr); fprintf(stderr, " - %s\n", message->text); break; } }
static void check_query_log_handler(void* user_data, raptor_log_message *message) { /* Only interested in errors and more severe */ if(message->level < RAPTOR_LOG_LEVEL_ERROR) return; fprintf(stderr, "%s: Error: ", program); if(message->locator) { raptor_locator_print(message->locator, stderr); fputs(" : ", stderr); } fprintf(stderr, "%s\n", message->text); error_count++; }
/* internal */ void raptor_log_error(raptor_world* world, raptor_log_level level, raptor_locator* locator, const char* text) { raptor_log_handler handler; memset(&world->message, '\0', sizeof(&world->message)); world->message.code = -1; world->message.domain = RAPTOR_DOMAIN_NONE; world->message.level = level; world->message.locator = locator; world->message.text = text; if(level == RAPTOR_LOG_LEVEL_NONE) return; if(world->internal_ignore_errors) return; handler = world->message_handler; if(handler) /* This is the place in raptor that ALL of the user error handler * functions are called. */ handler(world->message_handler_user_data, &world->message); else { if(locator) { raptor_locator_print(locator, stderr); fputc(' ', stderr); } fputs("raptor ", stderr); fputs(raptor_log_level_labels[level], stderr); fputs(" - ", stderr); fputs(text, stderr); fputc('\n', stderr); } }