Esempio n. 1
0
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);
}
Esempio n. 2
0
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);
}
Esempio n. 3
0
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;
}
Esempio n. 4
0
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;
    }

}
Esempio n. 5
0
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;
  }
}
Esempio n. 6
0
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++;
}
Esempio n. 7
0
/* 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);
  }
}