This is an automated email from the ASF dual-hosted git repository.
apkhmv pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git
The following commit(s) were added to refs/heads/main by this push:
new 9e0e6764499 IGNITE-26001 Simplify event log API (#6303)
9e0e6764499 is described below
commit 9e0e6764499bd0ca102753f8708da936ebff77ee
Author: Vadim Pakhnushev <[email protected]>
AuthorDate: Thu Jul 24 03:09:02 2025 +0300
IGNITE-26001 Simplify event log API (#6303)
---
.../ignite/internal/eventlog/api/EventFactory.java | 42 ---------------
.../internal/eventlog/api/IgniteEventType.java | 30 +++++++++++
.../ignite/internal/eventlog/api/IgniteEvents.java | 63 ----------------------
.../internal/eventlog/event/EventBuilder.java | 10 ++--
.../internal/eventlog/event/EventTypeRegistry.java | 4 +-
.../internal/eventlog/event/IgniteEventsTest.java | 10 ++--
.../internal/eventlog/impl/EventLogTest.java | 10 ++--
.../ignite/internal/eventlog/impl/LogSinkTest.java | 6 +--
.../internal/eventlog/impl/WebhookSinkTest.java | 22 ++++----
.../ser/JacksonBasedJsonSerializerTest.java | 14 ++---
.../authentication/AuthenticationManagerImpl.java | 11 ++--
.../sql/engine/ItSqlQueryEventLogTest.java | 3 +-
.../internal/sql/engine/QueryEventsFactory.java | 10 ++--
13 files changed, 79 insertions(+), 156 deletions(-)
diff --git
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/EventFactory.java
b/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/EventFactory.java
deleted file mode 100644
index 7e65d2dc595..00000000000
---
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/EventFactory.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.eventlog.api;
-
-import org.apache.ignite.internal.eventlog.event.EventBuilder;
-import org.apache.ignite.internal.eventlog.event.EventUser;
-
-/**
- * The factory that is responsible for creating events. This interface should
be used everywhere where events are created. Only special
- * cases should use {@link EventBuilder} directly, for example, in tests.
- */
-public interface EventFactory {
- /**
- * Creates an event object.
- *
- * @param user The user that caused the event.
- * @return The event object.
- */
- Event create(EventUser user);
-
- /**
- * Creates an event builder with the event type defined. The type is set
by the factory. For example,
- * {@link IgniteEvents.USER_AUTHENTICATION_SUCCESS.builder} will return a
builder with
- * {@link IgniteEventType.USER_AUTHENTICATION_SUCCESS} type set.
- */
- EventBuilder builder();
-}
diff --git
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/IgniteEventType.java
b/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/IgniteEventType.java
index 3149261e06c..9cc5625ebea 100644
---
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/IgniteEventType.java
+++
b/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/IgniteEventType.java
@@ -18,11 +18,18 @@
package org.apache.ignite.internal.eventlog.api;
import java.util.Arrays;
+import org.apache.ignite.internal.eventlog.event.EventBuilder;
import org.apache.ignite.internal.eventlog.event.EventTypeRegistry;
+import org.apache.ignite.internal.eventlog.event.EventUser;
/**
* Defines a subset of event types that can be created in the system. Note,
the event type is a string that is unique within the system. The
* event type is used to filter the events in the event log.
+ *
+ * <p>If you want to create an instance of the Event with the specified type,
use the {@link #create} method.
+ *
+ * <p>For example, to create an event of the type USER_AUTHENTICATED:
+ * <pre>{@code
IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.system());}</pre>
*/
public enum IgniteEventType {
USER_AUTHENTICATION_SUCCESS,
@@ -43,4 +50,27 @@ public enum IgniteEventType {
*/
public static void initialize() {
}
+
+ /**
+ * Creates an event of this type with current timestamp and specified
event user.
+ *
+ * @param user Event user.
+ * @return Created event.
+ */
+ public Event create(EventUser user) {
+ return builder()
+ .user(user)
+ .timestamp(System.currentTimeMillis())
+ .build();
+ }
+
+ /**
+ * Creates new event build of this type.
+ *
+ * @return Created event builder.
+ */
+ public EventBuilder builder() {
+ return Event.builder()
+ .type(name());
+ }
}
diff --git
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/IgniteEvents.java
b/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/IgniteEvents.java
deleted file mode 100644
index c6d62450f6b..00000000000
---
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/api/IgniteEvents.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.eventlog.api;
-
-import org.apache.ignite.internal.eventlog.event.EventBuilder;
-import org.apache.ignite.internal.eventlog.event.EventUser;
-
-/**
- * The main class for creating all Ignite events.
- *
- * <p>If you want to create an instance of the Event with the specified type,
use the {@link #create} method.
- *
- * <p>For example, to create an event of the type USER_AUTHENTICATED:
- * <pre>{@code
IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.system());}</pre>
- */
-public final class IgniteEvents implements EventFactory {
- public static final IgniteEvents USER_AUTHENTICATION_SUCCESS = new
IgniteEvents(IgniteEventType.USER_AUTHENTICATION_SUCCESS);
- public static final IgniteEvents USER_AUTHENTICATION_FAILURE = new
IgniteEvents(IgniteEventType.USER_AUTHENTICATION_FAILURE);
-
- public static final IgniteEvents CLIENT_CONNECTION_ESTABLISHED = new
IgniteEvents(IgniteEventType.CLIENT_CONNECTION_ESTABLISHED);
- public static final IgniteEvents CLIENT_CONNECTION_CLOSED = new
IgniteEvents(IgniteEventType.CLIENT_CONNECTION_CLOSED);
- public static final IgniteEvents QUERY_STARTED = new
IgniteEvents(IgniteEventType.QUERY_STARTED);
- public static final IgniteEvents QUERY_FINISHED = new
IgniteEvents(IgniteEventType.QUERY_FINISHED);
-
- private final IgniteEventType type;
-
- private IgniteEvents(IgniteEventType type) {
- this.type = type;
- }
-
- public String type() {
- return type.name();
- }
-
- @Override
- public Event create(EventUser user) {
- return Event.builder()
- .type(type.name())
- .user(user)
- .timestamp(System.currentTimeMillis())
- .build();
- }
-
- @Override
- public EventBuilder builder() {
- return new EventBuilder().type(type.name());
- }
-}
diff --git
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/event/EventBuilder.java
b/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/event/EventBuilder.java
index bc62c8e0e63..1495ce4767a 100644
---
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/event/EventBuilder.java
+++
b/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/event/EventBuilder.java
@@ -19,7 +19,7 @@ package org.apache.ignite.internal.eventlog.event;
import java.util.Map;
import org.apache.ignite.internal.eventlog.api.Event;
-import org.apache.ignite.internal.eventlog.api.EventFactory;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import
org.apache.ignite.internal.eventlog.event.exception.InvalidEventTypeException;
import
org.apache.ignite.internal.eventlog.event.exception.InvalidProductVersionException;
import
org.apache.ignite.internal.eventlog.event.exception.MissingEventTypeException;
@@ -27,8 +27,9 @@ import
org.apache.ignite.internal.eventlog.event.exception.MissingEventUserExcep
import org.apache.ignite.internal.properties.IgniteProductVersion;
/**
- * The event builder that should be used only where the {@link EventFactory}
is not enough to create an event. For example, in tests, where
- * you want to put some special event. In all other cases, use {@link
EventFactory} to create events.
+ * The event builder that should be used only where the {@link
IgniteEventType#builder()} is not enough to create an event. For example, in
+ * tests, where you want to put some special event. In all other cases, use
{@link IgniteEventType#create(EventUser)} or
+ * {@link IgniteEventType#builder()} to create events.
*/
public class EventBuilder {
private static final String DEFAULT_VERSION =
IgniteProductVersion.CURRENT_VERSION.toString();
@@ -43,9 +44,6 @@ public class EventBuilder {
private Map<String, Object> fields;
- public EventBuilder() {
- }
-
/** The type of the event. The type must be not null and registered in the
{@link EventTypeRegistry}. */
public EventBuilder type(String type) {
this.type = type;
diff --git
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/event/EventTypeRegistry.java
b/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/event/EventTypeRegistry.java
index f5d37c86769..35a267472ae 100644
---
a/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/event/EventTypeRegistry.java
+++
b/modules/eventlog/src/main/java/org/apache/ignite/internal/eventlog/event/EventTypeRegistry.java
@@ -20,12 +20,12 @@ package org.apache.ignite.internal.eventlog.event;
import java.util.HashSet;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import
org.apache.ignite.internal.eventlog.event.exception.NotUniqueEventTypeException;
/**
* Registry of all event types that are known to the system. Every new event
type must be registered in this registry once. For the example
- * of usage, see {@link IgniteEvents}. The class is thread-safe.
+ * of usage, see {@link IgniteEventType}. The class is thread-safe.
*/
public final class EventTypeRegistry {
private static final Object DUMMY = new Object();
diff --git
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/event/IgniteEventsTest.java
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/event/IgniteEventsTest.java
index ef738e7efc1..b91547299e5 100644
---
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/event/IgniteEventsTest.java
+++
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/event/IgniteEventsTest.java
@@ -23,7 +23,7 @@ import static org.hamcrest.Matchers.equalTo;
import java.util.stream.Stream;
import org.apache.ignite.internal.eventlog.api.Event;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import org.apache.ignite.internal.properties.IgniteProductVersion;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.Arguments;
@@ -37,21 +37,21 @@ class IgniteEventsTest {
private static Stream<Arguments> events() {
return Stream.of(
Arguments.of(
-
IgniteEvents.CLIENT_CONNECTION_CLOSED.create(EventUser.of(USER, PROVIDER)),
+
IgniteEventType.CLIENT_CONNECTION_CLOSED.create(EventUser.of(USER, PROVIDER)),
Event.builder()
.type("CLIENT_CONNECTION_CLOSED")
.productVersion(IgniteProductVersion.CURRENT_VERSION.toString())
.user(EventUser.of(USER, PROVIDER))
),
Arguments.of(
-
IgniteEvents.CLIENT_CONNECTION_ESTABLISHED.create(EventUser.of(USER, PROVIDER)),
+
IgniteEventType.CLIENT_CONNECTION_ESTABLISHED.create(EventUser.of(USER,
PROVIDER)),
Event.builder()
.type("CLIENT_CONNECTION_ESTABLISHED")
.productVersion(IgniteProductVersion.CURRENT_VERSION.toString())
.user(EventUser.of(USER, PROVIDER))
),
Arguments.of(
-
IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.of(USER, PROVIDER)),
+
IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.of(USER,
PROVIDER)),
Event.builder()
.type("USER_AUTHENTICATION_SUCCESS")
.productVersion(IgniteProductVersion.CURRENT_VERSION.toString())
@@ -59,7 +59,7 @@ class IgniteEventsTest {
),
Arguments.of(
-
IgniteEvents.USER_AUTHENTICATION_FAILURE.create(EventUser.of(USER, PROVIDER)),
+
IgniteEventType.USER_AUTHENTICATION_FAILURE.create(EventUser.of(USER,
PROVIDER)),
Event.builder()
.type("USER_AUTHENTICATION_FAILURE")
.productVersion(IgniteProductVersion.CURRENT_VERSION.toString())
diff --git
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/EventLogTest.java
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/EventLogTest.java
index fad37dcfa63..2242bfc42ed 100644
---
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/EventLogTest.java
+++
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/EventLogTest.java
@@ -33,7 +33,7 @@ import java.util.function.Supplier;
import org.apache.ignite.internal.eventlog.api.Event;
import org.apache.ignite.internal.eventlog.api.EventChannel;
import org.apache.ignite.internal.eventlog.api.EventLog;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import org.apache.ignite.internal.eventlog.api.Sink;
import org.apache.ignite.internal.eventlog.event.EventUser;
import org.junit.jupiter.api.BeforeEach;
@@ -41,7 +41,7 @@ import org.junit.jupiter.api.Test;
class EventLogTest {
private static final EventUser TEST_USER = EventUser.of("testuser",
"basicAuthenticator");
- private static final Event TEST_EVENT =
IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(TEST_USER);
+ private static final Event TEST_EVENT =
IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(TEST_USER);
private static final String TEST_CHANNEL_NAME = "testChannel";
private EventLog eventLog;
@@ -84,7 +84,7 @@ class EventLogTest {
assertThat(container, hasItem(TEST_EVENT));
// When log event with a type that is not supported by the channel.
- Event event = IgniteEvents.CLIENT_CONNECTION_CLOSED.create(TEST_USER);
+ Event event =
IgniteEventType.CLIENT_CONNECTION_CLOSED.create(TEST_USER);
// Then nothing thrown.
assertDoesNotThrow(() -> eventLog.log(event));
@@ -119,7 +119,7 @@ class EventLogTest {
assertThat(container, hasItem(TEST_EVENT));
// When log event with a type that is not supported by the channel.
- Event event = IgniteEvents.CLIENT_CONNECTION_CLOSED.create(TEST_USER);
+ Event event =
IgniteEventType.CLIENT_CONNECTION_CLOSED.create(TEST_USER);
// Then nothing thrown.
assertDoesNotThrow(() -> eventLog.log(event.getType(), () -> event));
@@ -141,7 +141,7 @@ class EventLogTest {
IllegalArgumentException.class,
() -> eventLog.log(
TEST_EVENT.getType(),
- () ->
IgniteEvents.CLIENT_CONNECTION_CLOSED.create(TEST_USER)
+ () ->
IgniteEventType.CLIENT_CONNECTION_CLOSED.create(TEST_USER)
)
);
}
diff --git
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/LogSinkTest.java
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/LogSinkTest.java
index 0642f1fabc6..468abd8b73b 100644
---
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/LogSinkTest.java
+++
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/LogSinkTest.java
@@ -29,7 +29,7 @@ import java.util.UUID;
import
org.apache.ignite.internal.configuration.testframework.ConfigurationExtension;
import
org.apache.ignite.internal.configuration.testframework.InjectConfiguration;
import org.apache.ignite.internal.eventlog.api.Event;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import org.apache.ignite.internal.eventlog.api.Sink;
import org.apache.ignite.internal.eventlog.config.schema.EventLogConfiguration;
import org.apache.ignite.internal.eventlog.config.schema.LogSinkChange;
@@ -73,7 +73,7 @@ class LogSinkTest extends BaseIgniteAbstractTest {
Sink logSink = new SinkFactoryImpl(new
EventSerializerFactory().createEventSerializer(), UUID::randomUUID, "default")
.createSink(cfg.sinks().get("logSink").value());
// And event.
- Event event = IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(
+ Event event = IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(
EventUser.of("user1", "basicProvider")
);
@@ -93,7 +93,7 @@ class LogSinkTest extends BaseIgniteAbstractTest {
assertThat(Files.readAllLines(eventlogPath),
hasItem(expectedEventJson));
// When write one more event.
- Event event2 = IgniteEvents.CLIENT_CONNECTION_CLOSED.create(
+ Event event2 = IgniteEventType.CLIENT_CONNECTION_CLOSED.create(
EventUser.of("user2", "basicProvider")
);
diff --git
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/WebhookSinkTest.java
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/WebhookSinkTest.java
index ecd77bef1ed..8d539e23b9b 100644
---
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/WebhookSinkTest.java
+++
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/impl/WebhookSinkTest.java
@@ -34,7 +34,7 @@ import java.util.stream.Stream;
import
org.apache.ignite.internal.configuration.testframework.ConfigurationExtension;
import
org.apache.ignite.internal.configuration.testframework.InjectConfiguration;
import org.apache.ignite.internal.eventlog.api.Event;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import org.apache.ignite.internal.eventlog.config.schema.EventLogConfiguration;
import org.apache.ignite.internal.eventlog.config.schema.WebhookSinkChange;
import org.apache.ignite.internal.eventlog.event.EventUser;
@@ -74,9 +74,9 @@ class WebhookSinkTest extends BaseIgniteAbstractTest {
WebhookSink sink = createSink(c -> c.changeBatchSize(2));
Stream<Event> events = Stream.of(
-
IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")),
-
IgniteEvents.USER_AUTHENTICATION_FAILURE.create(EventUser.of("user2",
"basicProvider")),
-
IgniteEvents.CLIENT_CONNECTION_ESTABLISHED.create(EventUser.of("user3",
"basicProvider"))
+
IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")),
+
IgniteEventType.USER_AUTHENTICATION_FAILURE.create(EventUser.of("user2",
"basicProvider")),
+
IgniteEventType.CLIENT_CONNECTION_ESTABLISHED.create(EventUser.of("user3",
"basicProvider"))
);
events.forEach(sink::write);
@@ -114,7 +114,7 @@ class WebhookSinkTest extends BaseIgniteAbstractTest {
WebhookSink sink = createSink(c ->
c.changeBatchSendFrequencyMillis(200L));
-
sink.write(IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")));
+
sink.write(IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")));
Awaitility.await()
.atMost(Duration.ofMillis(500L))
@@ -146,7 +146,7 @@ class WebhookSinkTest extends BaseIgniteAbstractTest {
WebhookSink sink = createSink(c -> c.changeBatchSize(2));
-
sink.write(IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")));
+
sink.write(IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")));
Awaitility.await()
.timeout(Duration.ofMillis(500L))
@@ -167,9 +167,9 @@ class WebhookSinkTest extends BaseIgniteAbstractTest {
@Test
void shouldRemoveEventsIfQueueIsFull() {
- var user1Event =
IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider"));
- var user2Event =
IgniteEvents.USER_AUTHENTICATION_FAILURE.create(EventUser.of("user2",
"basicProvider"));
- var user3Event =
IgniteEvents.CLIENT_CONNECTION_ESTABLISHED.create(EventUser.of("user3",
"basicProvider"));
+ var user1Event =
IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider"));
+ var user2Event =
IgniteEventType.USER_AUTHENTICATION_FAILURE.create(EventUser.of("user2",
"basicProvider"));
+ var user3Event =
IgniteEventType.CLIENT_CONNECTION_ESTABLISHED.create(EventUser.of("user3",
"basicProvider"));
Stream<Event> events = Stream.of(user1Event, user2Event, user3Event);
@@ -192,7 +192,7 @@ class WebhookSinkTest extends BaseIgniteAbstractTest {
WebhookSink sink = createSink(c ->
c.changeBatchSize(1).changeRetryPolicy().changeInitBackoffMillis(100L));
-
sink.write(IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")));
+
sink.write(IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")));
Awaitility.await()
.atMost(Duration.ofMillis(500L))
@@ -225,7 +225,7 @@ class WebhookSinkTest extends BaseIgniteAbstractTest {
WebhookSink sink = createSink(c ->
c.changeBatchSize(1).changeRetryPolicy().changeInitBackoffMillis(100L));
-
sink.write(IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")));
+
sink.write(IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.of("user1",
"basicProvider")));
Awaitility.await()
.atMost(Duration.ofMillis(500L))
diff --git
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/ser/JacksonBasedJsonSerializerTest.java
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/ser/JacksonBasedJsonSerializerTest.java
index 845f79a3de7..a46c40c9d76 100644
---
a/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/ser/JacksonBasedJsonSerializerTest.java
+++
b/modules/eventlog/src/test/java/org/apache/ignite/internal/eventlog/ser/JacksonBasedJsonSerializerTest.java
@@ -23,7 +23,7 @@ import static
uk.co.datumedge.hamcrest.json.SameJSONAs.sameJSONAs;
import java.util.Map;
import java.util.stream.Stream;
import org.apache.ignite.internal.eventlog.api.Event;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import org.apache.ignite.internal.eventlog.event.EventUser;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.params.ParameterizedTest;
@@ -34,7 +34,7 @@ class JacksonBasedJsonSerializerTest {
private static Stream<Arguments> events() {
return Stream.of(
Arguments.of(
- IgniteEvents.CLIENT_CONNECTION_CLOSED.builder()
+ IgniteEventType.CLIENT_CONNECTION_CLOSED.builder()
.productVersion("3.0.0")
.timestamp(1234567890)
.user(EventUser.of("test_user",
"test_provider"))
@@ -47,7 +47,7 @@ class JacksonBasedJsonSerializerTest {
+ "}"
),
Arguments.of(
- IgniteEvents.CLIENT_CONNECTION_ESTABLISHED.builder()
+ IgniteEventType.CLIENT_CONNECTION_ESTABLISHED.builder()
.productVersion("3.0.0")
.timestamp(1234567890)
.user(EventUser.of("test_user",
"test_provider"))
@@ -60,7 +60,7 @@ class JacksonBasedJsonSerializerTest {
+ "}"
),
Arguments.of(
- IgniteEvents.USER_AUTHENTICATION_FAILURE.builder()
+ IgniteEventType.USER_AUTHENTICATION_FAILURE.builder()
.productVersion("3.0.0")
.timestamp(1234567890)
.user(EventUser.of("test_user",
"test_provider"))
@@ -73,7 +73,7 @@ class JacksonBasedJsonSerializerTest {
+ "}"
),
Arguments.of(
- IgniteEvents.USER_AUTHENTICATION_SUCCESS.builder()
+ IgniteEventType.USER_AUTHENTICATION_SUCCESS.builder()
.productVersion("3.0.0")
.timestamp(1234567890)
.user(EventUser.of("test_user",
"test_provider"))
@@ -86,7 +86,7 @@ class JacksonBasedJsonSerializerTest {
+ "}"
),
Arguments.of(
- IgniteEvents.USER_AUTHENTICATION_SUCCESS.builder()
+ IgniteEventType.USER_AUTHENTICATION_SUCCESS.builder()
.productVersion("3.0.0")
.timestamp(1234567890)
.user(EventUser.of("test_user",
"test_provider"))
@@ -115,7 +115,7 @@ class JacksonBasedJsonSerializerTest {
+ "}"
),
Arguments.of(
- IgniteEvents.USER_AUTHENTICATION_SUCCESS.builder()
+ IgniteEventType.USER_AUTHENTICATION_SUCCESS.builder()
.productVersion("3.0.0")
.timestamp(1234567890)
.user(EventUser.of("test_user",
"test_provider"))
diff --git
a/modules/security/src/main/java/org/apache/ignite/internal/security/authentication/AuthenticationManagerImpl.java
b/modules/security/src/main/java/org/apache/ignite/internal/security/authentication/AuthenticationManagerImpl.java
index 13a94a6f015..9cc298acfc8 100644
---
a/modules/security/src/main/java/org/apache/ignite/internal/security/authentication/AuthenticationManagerImpl.java
+++
b/modules/security/src/main/java/org/apache/ignite/internal/security/authentication/AuthenticationManagerImpl.java
@@ -32,7 +32,7 @@ import org.apache.ignite.configuration.NamedListView;
import org.apache.ignite.configuration.notifications.ConfigurationListener;
import org.apache.ignite.internal.event.AbstractEventProducer;
import org.apache.ignite.internal.eventlog.api.EventLog;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import org.apache.ignite.internal.eventlog.event.EventUser;
import org.apache.ignite.internal.logger.IgniteLogger;
import org.apache.ignite.internal.logger.Loggers;
@@ -208,9 +208,10 @@ public class AuthenticationManagerImpl
private void logAuthenticationFailure(AuthenticationRequest<?, ?>
authenticationRequest) {
eventLog.log(
- IgniteEvents.USER_AUTHENTICATION_FAILURE.type(),
- () -> IgniteEvents.USER_AUTHENTICATION_FAILURE.builder()
+ IgniteEventType.USER_AUTHENTICATION_FAILURE.name(),
+ () -> IgniteEventType.USER_AUTHENTICATION_FAILURE.builder()
.user(EventUser.system())
+ .timestamp(System.currentTimeMillis())
.fields(Map.of("identity",
tryGetUsernameOrUnknown(authenticationRequest)))
.build()
);
@@ -225,8 +226,8 @@ public class AuthenticationManagerImpl
private void logUserAuthenticated(UserDetails userDetails) {
eventLog.log(
- IgniteEvents.USER_AUTHENTICATION_SUCCESS.type(),
- () ->
IgniteEvents.USER_AUTHENTICATION_SUCCESS.create(EventUser.of(
+ IgniteEventType.USER_AUTHENTICATION_SUCCESS.name(),
+ () ->
IgniteEventType.USER_AUTHENTICATION_SUCCESS.create(EventUser.of(
userDetails.username(), userDetails.providerName()
))
);
diff --git
a/modules/sql-engine/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItSqlQueryEventLogTest.java
b/modules/sql-engine/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItSqlQueryEventLogTest.java
index ad310b728a1..0c39a87125c 100644
---
a/modules/sql-engine/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItSqlQueryEventLogTest.java
+++
b/modules/sql-engine/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItSqlQueryEventLogTest.java
@@ -41,7 +41,6 @@ import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.ignite.InitParametersBuilder;
import org.apache.ignite.internal.eventlog.api.IgniteEventType;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
import org.apache.ignite.internal.eventlog.event.EventUser;
import org.apache.ignite.internal.lang.IgniteStringBuilder;
import org.apache.ignite.internal.properties.IgniteProductVersion;
@@ -64,7 +63,7 @@ import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
/**
- * Integration tests to check the {@link IgniteEvents#QUERY_STARTED} and
{@link IgniteEvents#QUERY_FINISHED} events.
+ * Integration tests to check the {@link IgniteEventType#QUERY_STARTED} and
{@link IgniteEventType#QUERY_FINISHED} events.
*/
public class ItSqlQueryEventLogTest extends BaseSqlIntegrationTest {
private static final String UUID_PATTERN =
"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}";
diff --git
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/QueryEventsFactory.java
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/QueryEventsFactory.java
index 576f88101a2..6876e05ef2f 100644
---
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/QueryEventsFactory.java
+++
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/QueryEventsFactory.java
@@ -21,7 +21,7 @@ import static
org.apache.ignite.internal.util.ExceptionUtils.unwrapCause;
import java.util.Map;
import org.apache.ignite.internal.eventlog.api.Event;
-import org.apache.ignite.internal.eventlog.api.IgniteEvents;
+import org.apache.ignite.internal.eventlog.api.IgniteEventType;
import org.apache.ignite.internal.eventlog.event.EventUser;
import org.apache.ignite.internal.sql.engine.exec.fsm.QueryInfo;
import org.apache.ignite.internal.util.IgniteUtils;
@@ -36,20 +36,20 @@ public class QueryEventsFactory {
this.localNode = localNode;
}
- /** Creates new {@link IgniteEvents#QUERY_STARTED} event. */
+ /** Creates new {@link IgniteEventType#QUERY_STARTED} event. */
public Event makeStartEvent(QueryInfo queryInfo, EventUser user) {
Map<String, Object> fields = IgniteUtils.newLinkedHashMap(7);
fillCommonFields(fields, queryInfo);
- return IgniteEvents.QUERY_STARTED.builder()
+ return IgniteEventType.QUERY_STARTED.builder()
.user(user)
.timestamp(queryInfo.startTime().toEpochMilli())
.fields(fields)
.build();
}
- /** Creates new {@link IgniteEvents#QUERY_FINISHED} event. */
+ /** Creates new {@link IgniteEventType#QUERY_FINISHED} event. */
public Event makeFinishEvent(QueryInfo queryInfo, EventUser user, long
finishTime) {
Map<String, Object> fields = IgniteUtils.newLinkedHashMap(10);
@@ -65,7 +65,7 @@ public class QueryEventsFactory {
fields.put(FieldNames.ERROR, error == null ? null :
unwrapCause(error).getMessage());
- return IgniteEvents.QUERY_FINISHED.builder()
+ return IgniteEventType.QUERY_FINISHED.builder()
.user(user)
.timestamp(finishTime)
.fields(fields)