public Object getValueAt()

in src/main/java/org/apache/log4j/chainsaw/ChainsawCyclicBufferTableModel.java [530:615]


    public Object getValueAt(int rowIndex, int columnIndex) {
        ChainsawLoggingEvent event = null;

        synchronized (mutex) {
            if (rowIndex < filteredList.size() && rowIndex > -1) {
                event = ((LoggingEventWrapper) filteredList.get(rowIndex)).getLoggingEvent();
            }
        }

        if (event == null) {
            return null;
        }

        LocationInfo info = event.m_locationInfo;

        switch (columnIndex + 1) {
            case ChainsawColumns.INDEX_ID_COL_NAME:

                Object id = event.getProperty(Constants.LOG4J_ID_KEY);

                if (id != null) {
                    return id;
                }

                return rowIndex;

            case ChainsawColumns.INDEX_LEVEL_COL_NAME:
                return event.m_level;

            case ChainsawColumns.INDEX_LOG4J_MARKER_COL_NAME:
                return event.getProperty(ChainsawConstants.LOG4J_MARKER_COL_NAME_LOWERCASE);

            case ChainsawColumns.INDEX_MILLIS_DELTA_COL_NAME:
                return event.getProperty(ChainsawConstants.MILLIS_DELTA_COL_NAME_LOWERCASE);

            case ChainsawColumns.INDEX_LOGGER_COL_NAME:
                return event.m_logger;

            case ChainsawColumns.INDEX_TIMESTAMP_COL_NAME:
                return event.m_timestamp;

            case ChainsawColumns.INDEX_MESSAGE_COL_NAME:
                return event.m_message;

            case ChainsawColumns.INDEX_NDC_COL_NAME:
                return event.m_ndc;

            case ChainsawColumns.INDEX_THREAD_COL_NAME:
                return event.m_threadName;

            case ChainsawColumns.INDEX_THROWABLE_COL_NAME:
                return "IMPLEMENT ME";

            case ChainsawColumns.INDEX_CLASS_COL_NAME:
                return info == null ? "" : info.className;

            case ChainsawColumns.INDEX_FILE_COL_NAME:
                return info == null ? "" : info.fileName;

            case ChainsawColumns.INDEX_LINE_COL_NAME:
                return info == null ? -1 : info.lineNumber;

            case ChainsawColumns.INDEX_METHOD_COL_NAME:
                return info == null ? "" : info.methodName;

            default:

//                if (columnIndex < columnNames.size()) {
//                    //case may not match..try case sensitive and fall back to case-insensitive
//                    String result = event.getProperty(columnNames.get(columnIndex).toString());
//                    if (result == null) {
//                        String lowerColName = columnNames.get(columnIndex).toString().toLowerCase(Locale.ENGLISH);
//                        Set<String> entrySet = event.entrySet();
//                        for (String entry : entrySet) {
//                            if (entry.equalsIgnoreCase(lowerColName)) {
//                                result = thisEntry.getValue().toString();
//                            }
//                        }
//                    }
//                    if (result != null) {
//                        return result;
//                    }
//                }
        }
        return "";
    }