protected void onStartup()

in persistence-commons/persistence-commons-reporting-parent/persistence-commons-reporting-api/src/main/java/org/kie/kogito/persistence/reporting/bootstrap/BaseStartupHandler.java [63:101]


    protected void onStartup() {
        switch (action) {
            case NONE:
                LOGGER.info("Database Schema Action is 'NONE'. Exiting.");
                break;
            case DROP:
                LOGGER.info("Database Schema Action is 'DROP'. Destroying existing database artifacts...");
                mappingService.getAllMappingDefinitions().forEach(databaseManager::destroyArtifacts);
                break;
            case DROP_AND_CREATE:
                LOGGER.info("Database Schema Action is 'DROP-AND-CREATE'. Destroying existing database artifacts...");
                mappingService.getAllMappingDefinitions().forEach(databaseManager::destroyArtifacts);
            case CREATE:
                LOGGER.info("Loading bootstrap Mapping Definitions...");

                loader.load().ifPresent(mappingDefinitions -> {
                    try {
                        final ObjectMapper mapper = CloudEventUtils.Mapper.mapper();
                        LOGGER.info(String.format("Bootstrap Mapping Definitions are:%n%s",
                                mapper.writerWithDefaultPrettyPrinter().writeValueAsString(mappingDefinitions)));
                    } catch (JsonProcessingException jpe) {
                        LOGGER.error(String.format("Failed to load bootstrap Mapping Definitions: %s",
                                jpe.getMessage()));
                    }

                    mappingDefinitions.getMappingDefinitions().forEach(definition -> {
                        try {
                            mappingService.saveMappingDefinition(definition);
                            databaseManager.createArtifacts(definition);
                        } catch (Exception e) {
                            LOGGER.error(String.format("Failed to process MappingDefinition '%s'%n%s",
                                    definition.getMappingId(),
                                    e.getMessage()));
                        }
                    });
                });
        }

    }