void DataDrivenNumberFormatTestSuite::showFailure(const UnicodeString &message) {
    UChar lineStr[20];
    uprv_itou(
            lineStr, UPRV_LENGTHOF(lineStr), (uint32_t) fFileLineNumber, 10, 1);
    UnicodeString fullMessage("line ");
    dataerrln(fullMessage.append(lineStr).append(": ")
            .append(prettify(message)));
    showLineInfo();
}
예제 #2
0
void JSExecutor::handleError(const ErrorInfo& errorInfo)
{
	std::string fullMessage(errorInfo.message);
	fullMessage += " [in \"";
	fullMessage += errorInfo.uri;
	fullMessage += "\"";
	if (errorInfo.lineNo)
	{
		fullMessage += Poco::format(", line %d", errorInfo.lineNo);
	}
	fullMessage += "]";
	_pContext->logger().error(fullMessage);
}
예제 #3
0
/* throw a SQLiteException for a given error code, sqlite3message, and
   user message
 */
ECode throw_sqlite3_exception(int errcode, const char* sqlite3Message, const char* message) {
    ECode ec = NOERROR;
    char* temp = const_cast<char*>(sqlite3Message);
    switch (errcode & 0xff) { /* mask off extended error code */
    case SQLITE_IOERR:
        ec = E_SQLITE_DISK_IO_EXCEPTION;
        break;
    case SQLITE_CORRUPT:
    case SQLITE_NOTADB: // treat "unsupported file format" error as corruption also
        ec = E_SQLITE_DATABASE_CORRUPT_EXCEPTION;
        break;
    case SQLITE_CONSTRAINT:
        ec = E_SQLITE_CONSTRAINT_EXCEPTION;
        break;
    case SQLITE_ABORT:
        ec = E_SQLITE_ABORT_EXCEPTION;
        break;
    case SQLITE_DONE:
        ec = E_SQLITE_DONE_EXCEPTION;
        temp = NULL; // SQLite error message is irrelevant in this case
        break;
    case SQLITE_FULL:
        ec = E_SQLITE_FULL_EXCEPTION;
        break;
    case SQLITE_MISUSE:
        ec = E_SQLITE_MISUSE_EXCEPTION;
        break;
    case SQLITE_PERM:
        ec = E_SQLITE_ACCESS_PERM_EXCEPTION;
        break;
    case SQLITE_BUSY:
        ec = E_SQLITE_DATABASE_LOCKED_EXCEPTION;
        break;
    case SQLITE_LOCKED:
        ec = E_SQLITE_TABLE_LOCKED_EXCEPTION;
        break;
    case SQLITE_READONLY:
        ec = E_SQLITE_READONLY_DATABASE_EXCEPTION;
        break;
    case SQLITE_CANTOPEN:
        ec = E_SQLITE_CANT_OPEN_DATABASE_EXCEPTION;
        break;
    case SQLITE_TOOBIG:
        ec = E_SQLITE_BLOB_TOO_BIG_EXCEPTION;
        break;
    case SQLITE_RANGE:
        ec = E_SQLITE_BIND_OR_COLUMN_INDEX_OUTOF_RANGE_EXCEPTION;
        break;
    case SQLITE_NOMEM:
        ec = E_SQLITE_OUTOF_MEMORY_EXCEPTION;
        break;
    case SQLITE_MISMATCH:
        ec = E_SQLITE_DATA_TYPE_MISMATCH_EXCEPTION;
        break;
    case SQLITE_INTERRUPT:
        ec = E_OPERATION_CANCELED_EXCEPTION;
        break;
    default:
        ec = E_SQLITE_EXCEPTION;
        break;
    }

    if (temp) {
        StringBuilder fullMessage(sqlite3Message);
        fullMessage.AppendCStr(" (code %d)");
        fullMessage.AppendInt32(errcode); // print extended error code
        if (message) {
            fullMessage.AppendCStr(": ");
            fullMessage.AppendCStr(message);
        }
        Slogger::E(String("SQLiteException"), "%s", fullMessage.ToString().string());
        return ec;
    }
    else {
        Slogger::E(String("SQLiteException"), "%s", message);
        return ec;
    }
}
/*! \internal */
QVariant QMailMessageModelBase::data(const QMailMessageMetaData &message, int role) const
{
    static QIcon outgoingIcon(":icon/sendmail");
    static QIcon incomingIcon(":icon/getmail");

    static QIcon readIcon(":icon/flag_normal");
    static QIcon unreadIcon(":icon/flag_unread");
    static QIcon toGetIcon(":icon/flag_toget");
    static QIcon toSendIcon(":icon/flag_tosend");
    static QIcon unfinishedIcon(":icon/flag_unfinished");
    static QIcon removedIcon(":icon/flag_removed");

    /* No longer used...
    static QIcon noPresenceIcon(":icon/presence-none");
    static QIcon offlineIcon(":icon/presence-offline");
    static QIcon awayIcon(":icon/presence-away");
    static QIcon busyIcon(":icon/presence-busy");
    static QIcon onlineIcon(":icon/presence-online");

    static QIcon messageIcon(":icon/txt");
    static QIcon mmsIcon(":icon/multimedia");
    static QIcon emailIcon(":icon/email");
    static QIcon instantMessageIcon(":icon/im");
    */

    bool sent(message.status() & QMailMessage::Sent);
    bool incoming(message.status() & QMailMessage::Incoming);

    switch(role)
    {
        case Qt::DisplayRole:
        case MessageAddressTextRole:
            return messageAddressText(message,incoming);
        break;

        case MessageSizeTextRole:
            return messageSizeText(message);
        break;

        case MessageTimeStampTextRole:
        {
            QString action;
            if (incoming) {
                action = qApp->translate("QMailMessageModelBase", "Received");
            } else {
                if (sent) {
                    action = qApp->translate("QMailMessageModelBase", "Sent");
                } else {
                    action = qApp->translate("QMailMessageModelBase", "Last edited");
                }
            }

            QDateTime messageTime(message.date().toLocalTime());
            QString date(messageTime.date().toString("dd MMM"));
            QString time(messageTime.time().toString("h:mm"));
            QString sublabel(QString("%1 %2 %3").arg(action).arg(date).arg(time));
            return sublabel;
        }
        break;

        case MessageSubjectTextRole:
            return message.subject();
        break;

        case MessageFilterTextRole:
            return messageAddressText(message,incoming) + " " + message.subject();
        break;

        case Qt::DecorationRole:
        case MessageTypeIconRole:
        {
            // Not currently implemented...
            return QIcon();
        }
        break;

        case MessageDirectionIconRole:
        {
            QIcon mainIcon = incoming ? incomingIcon : outgoingIcon;
            return mainIcon;
        }
        break;

        case MessageStatusIconRole:
        {
            if (incoming) { 
                quint64 status = message.status();
                if ( status & QMailMessage::Removed ) {
                    return removedIcon;
                } else if ( status & QMailMessage::PartialContentAvailable ) {
                    if ( status & QMailMessage::Read || status & QMailMessage::ReadElsewhere ) {
                        return readIcon;
                    } else {
                        return unreadIcon;
                    }
                } else {
                    return toGetIcon;
                }
            } else {
                if (sent) {
                    return readIcon;
                } else if ( message.to().isEmpty() ) {
                    // Not strictly true - there could be CC or BCC addressees
                    return unfinishedIcon;
                } else {
                    return toSendIcon;
                }
            }
        }
        break;

        case MessagePresenceIconRole:
        {
            // Not currently implemented...
            return QIcon();
        }
        break;

        case MessageBodyTextRole:
        {
            if ((message.messageType() == QMailMessage::Instant) && !message.subject().isEmpty()) {
                // For IMs that contain only text, the body is replicated in the subject
                return message.subject();
            } else {
                QMailMessage fullMessage(message.id());

                // Some items require the entire message data
                if (fullMessage.hasBody())
                    return fullMessage.body().data();

                return QString();
            }
        }
        break;
    }

    return QVariant();
}