diff --git a/openex-api/pom.xml b/openex-api/pom.xml index 56492d2d1c..6fa6c13eba 100644 --- a/openex-api/pom.xml +++ b/openex-api/pom.xml @@ -53,6 +53,11 @@ openex-collector-users 3.5.0-SNAPSHOT + + io.openex + openex-collector-caldera + 3.5.0-SNAPSHOT + diff --git a/openex-api/src/main/resources/application.properties b/openex-api/src/main/resources/application.properties index 5abaf332cd..56a736d040 100644 --- a/openex-api/src/main/resources/application.properties +++ b/openex-api/src/main/resources/application.properties @@ -172,4 +172,10 @@ lade.password= http.enable=true # Collectors +## Collector user collector.users.enable=false + +## Collector Caldera +collector.caldera.enable=false +collector.caldera.url=http://localhost:8888 +collector.caldera.api-key=ChangeMe diff --git a/openex-framework/src/main/java/io/openex/service/AssetEndpointService.java b/openex-framework/src/main/java/io/openex/service/AssetEndpointService.java index d75c8bce15..5da2baf030 100644 --- a/openex-framework/src/main/java/io/openex/service/AssetEndpointService.java +++ b/openex-framework/src/main/java/io/openex/service/AssetEndpointService.java @@ -23,6 +23,10 @@ public Endpoint createEndpoint(@NotNull final Endpoint endpoint) { return this.endpointRepository.save(endpoint); } + public Iterable createEndpoints(@NotNull final List endpoints) { + return this.endpointRepository.saveAll(endpoints); + } + public Endpoint endpoint(@NotBlank final String endpointId) { return this.endpointRepository.findById(endpointId).orElseThrow(); } @@ -40,6 +44,11 @@ public Endpoint updateEndpoint(@NotNull final Endpoint endpoint) { return this.endpointRepository.save(endpoint); } + public Iterable updateEndpoints(@NotNull final List endpoints) { + endpoints.forEach((e) -> e.setUpdatedAt(now())); + return this.endpointRepository.saveAll(endpoints); + } + public void deleteEndpoint(@NotBlank final String endpointId) { this.endpointRepository.deleteById(endpointId); } diff --git a/openex-model/src/main/java/io/openex/database/model/Endpoint.java b/openex-model/src/main/java/io/openex/database/model/Endpoint.java index 9adec2cd70..2dee9d09ae 100644 --- a/openex-model/src/main/java/io/openex/database/model/Endpoint.java +++ b/openex-model/src/main/java/io/openex/database/model/Endpoint.java @@ -44,7 +44,7 @@ public enum OS_TYPE { @JsonProperty("endpoint_last_seen") private Instant lastSeen; - @ElementCollection(fetch = FetchType.EAGER) + @ElementCollection(fetch = FetchType.LAZY) @CollectionTable(name = "macadresses", joinColumns = @JoinColumn(name = "endpoint_id")) @Column(name = "mac_adress") @JsonProperty("endpoint_mac_adresses")