提交 8995ad94 编写于 作者: S serge-rider

QMDB - session events

上级 e71e088e
......@@ -323,6 +323,8 @@ public class QMMCollectorImpl extends DefaultExecutionHandler implements QMMColl
}
final List<QMMetaListener> listeners = getListeners();
if (!listeners.isEmpty() && !events.isEmpty()) {
// Reverse collection. Fresh events must come first.
Collections.reverse(events);
// Dispatch all events
for (QMMetaListener listener : listeners) {
try {
......
......@@ -125,11 +125,11 @@ public class QueryLogViewer extends Viewer implements QMMetaListener, DBPPrefere
private LogColumn COLUMN_TIME = new LogColumn("time", CoreMessages.controls_querylog_column_time_name, CoreMessages.controls_querylog_column_time_tooltip, 80) {
private final DateFormat timeFormat = new SimpleDateFormat(DBConstants.DEFAULT_TIME_FORMAT, Locale.getDefault()); //$NON-NLS-1$
private final DateFormat timestampFormat = new SimpleDateFormat(DBConstants.DEFAULT_TIMESTAMP_FORMAT, Locale.getDefault()); //$NON-NLS-1$
private final DateFormat timestampFormat = new SimpleDateFormat("MMM-dd HH:mm:ss", Locale.getDefault()); //$NON-NLS-1$
@Override
String getText(QMMetaEvent event)
{
return timeFormat.format(event.getObject().getOpenTime());
return timestampFormat.format(event.getObject().getOpenTime());
}
String getToolTipText(QMMetaEvent event) {
return timestampFormat.format(event.getObject().getOpenTime());
......@@ -668,12 +668,12 @@ public class QueryLogViewer extends Viewer implements QMMetaListener, DBPPrefere
try {
// Add events in reverse order
int itemIndex = 0;
for (int i = events.size(); i > 0; i--) {
for (int i = 0; i < events.size(); i++) {
if (useDefaultFilter && itemIndex >= entriesPerPage) {
// Do not add remaining (older) events - they don't fit page anyway
break;
}
QMMetaEvent event = events.get(i - 1);
QMMetaEvent event = events.get(i);
if ((filter != null && !filter.accept(event)) || (useDefaultFilter && !defaultFilter.accept(event))) {
continue;
}
......@@ -1059,7 +1059,10 @@ public class QueryLogViewer extends Viewer implements QMMetaListener, DBPPrefere
@Override
protected SQLDialect getSQLDialect() {
if (object.getObject() instanceof QMMStatementExecuteInfo) {
return ((QMMStatementExecuteInfo) object.getObject()).getStatement().getSession().getSQLDialect();
SQLDialect dialect = ((QMMStatementExecuteInfo) object.getObject()).getStatement().getSession().getSQLDialect();
if (dialect != null) {
return dialect;
}
}
return super.getSQLDialect();
}
......
......@@ -25,9 +25,29 @@ import org.jkiss.dbeaver.model.qm.meta.QMMObject;
public class QMMetaEvent {
public enum Action {
BEGIN,
END,
UPDATE,
BEGIN(0),
END(1),
UPDATE(2),
;
private final int id;
Action(int id) {
this.id = id;
}
public int getId() {
return id;
}
public static Action getById(int id) {
for (Action action : values()) {
if (action.id == id) {
return action;
}
}
return BEGIN;
}
}
private final QMMObject object;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册