CB-3544 clarify logs (#1820)

Co-authored-by: dariamarutkina <125263541+dariamarutkina@users.noreply.github.com>
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
This commit is contained in:
Alexander Skoblikov
2023-07-18 14:34:33 +03:00
committed by GitHub
co-authored by dariamarutkina mr-anton-t
parent 78c19187de
commit 7550915e9c
2 changed files with 20 additions and 9 deletions
@@ -702,7 +702,7 @@ public abstract class CBApplication extends BaseWebApplication implements WebAut
public Map<String, Object> readConfigurationFile(File configFile) throws DBException {
try (Reader reader = new InputStreamReader(new FileInputStream(configFile), StandardCharsets.UTF_8)) {
return JSONUtils.parseMap(getGson(), reader);
} catch (IOException e) {
} catch (Exception e) {
throw new DBException("Error parsing server configuration", e);
}
}
@@ -60,6 +60,7 @@ import java.net.InetAddress;
import java.nio.charset.StandardCharsets;
import java.sql.*;
import java.util.*;
import java.util.stream.Collectors;
/**
* Database management
@@ -275,7 +276,7 @@ public class CBDatabase {
}
@Nullable
CBDatabaseInitialData getInitialData() {
CBDatabaseInitialData getInitialData() throws DBException {
String initialDataPath = databaseConfiguration.getInitialDataConfiguration();
if (CommonUtils.isEmpty(initialDataPath)) {
return null;
@@ -287,8 +288,7 @@ public class CBDatabase {
Gson gson = new GsonBuilder().setLenient().create();
return gson.fromJson(reader, CBDatabaseInitialData.class);
} catch (Exception e) {
log.error("Error loading initial data configuration", e);
return null;
throw new DBException("Error loading initial data configuration", e);
}
}
@@ -412,15 +412,26 @@ public class CBDatabase {
String adminName = initialData.getAdminName();
String adminPassword = initialData.getAdminPassword();
if (!CommonUtils.isEmpty(initialData.getTeams())) {
List<SMTeam> initialTeams = initialData.getTeams();
String defaultTeam = application.getAppConfiguration().getDefaultUserTeam();
if (CommonUtils.isNotEmpty(defaultTeam)) {
Set<String> initialTeamNames = initialTeams == null
? Set.of()
: initialTeams.stream().map(SMTeam::getTeamId).collect(Collectors.toSet());
if (!initialTeamNames.contains(defaultTeam)) {
throw new DBException("Initial teams configuration doesn't contain default team " + defaultTeam);
}
}
if (!CommonUtils.isEmpty(initialTeams)) {
// Create teams
for (SMTeam team : initialData.getTeams()) {
for (SMTeam team : initialTeams) {
adminSecurityController.createTeam(team.getTeamId(), team.getName(), team.getDescription(), adminName);
if (adminName != null && !application.isMultiNode()) {
adminSecurityController.setSubjectPermissions(team.getTeamId(),
adminSecurityController.setSubjectPermissions(
team.getTeamId(),
new ArrayList<>(team.getPermissions()),
adminName);
adminName
);
}
}
}