mirror of
https://github.com/dbeaver/cloudbeaver.git
synced 2026-10-13 07:47:05 +08:00
Merge remote-tracking branch 'origin/devel' into tech/CB-2077
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
FROM eclipse-temurin:11.0.14.1_1-jre-focal
|
||||
FROM eclipse-temurin:17.0.4.1_1-jre-focal
|
||||
#adoptopenjdk/openjdk11:jdk-11.0.12_7-ubuntu-slim
|
||||
|
||||
COPY cloudbeaver /opt/cloudbeaver
|
||||
|
||||
+2
@@ -167,6 +167,7 @@ public class LocalResourceController implements RMController {
|
||||
RMProjectType.SHARED, true)
|
||||
)
|
||||
.filter(Objects::nonNull)
|
||||
.sorted(Comparator.comparing(RMProject::getDisplayName))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@@ -364,6 +365,7 @@ public class LocalResourceController implements RMController {
|
||||
) throws IOException {
|
||||
try (Stream<Path> files = Files.list(folderPath)) {
|
||||
return files.filter(path -> !path.getFileName().toString().startsWith(".")) // skip hidden files
|
||||
.sorted(Comparator.comparing(path -> path.getFileName().toString(), String.CASE_INSENSITIVE_ORDER))
|
||||
.map((Path path) -> makeResourceFromPath(projectId, path, readProperties, readHistory, recursive))
|
||||
.filter(Objects::nonNull)
|
||||
.toArray(RMResource[]::new);
|
||||
|
||||
+5
-5
@@ -104,7 +104,7 @@ public class WebSessionAuthProcessor {
|
||||
var newAuthInfos = new ArrayList<WebAuthInfo>();
|
||||
for (Map.Entry<String, Object> entry : authInfo.getAuthData().entrySet()) {
|
||||
String providerId = entry.getKey();
|
||||
Map<String, Object> userCredentials = (Map<String, Object>) entry.getValue();
|
||||
Map<String, Object> authAttrs = (Map<String, Object>) entry.getValue();
|
||||
|
||||
var authProviderDescriptor = getAuthProvider(providerId);
|
||||
SMAuthProvider<?> authProviderInstance = authProviderDescriptor.getInstance();
|
||||
@@ -127,7 +127,7 @@ public class WebSessionAuthProcessor {
|
||||
if (authProviderExternal != null && !configMode && !alreadyLoggedIn) {
|
||||
// We may need to associate new credentials with active user
|
||||
if (linkWithActiveUser) {
|
||||
securityController.setUserCredentials(userId, authProviderDescriptor.getId(), userCredentials);
|
||||
securityController.setUserCredentials(userId, authProviderDescriptor.getId(), authAttrs);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -143,7 +143,7 @@ public class WebSessionAuthProcessor {
|
||||
authProviderExternal.getUserIdentity(
|
||||
webSession.getProgressMonitor(),
|
||||
providerConfig,
|
||||
userCredentials);
|
||||
authAttrs);
|
||||
} catch (DBException e) {
|
||||
log.debug("Error reading auth display name from provider " + providerId, e);
|
||||
}
|
||||
@@ -159,7 +159,7 @@ public class WebSessionAuthProcessor {
|
||||
webSession.getProgressMonitor(),
|
||||
webSession,
|
||||
providerConfig,
|
||||
userCredentials);
|
||||
authAttrs);
|
||||
|
||||
if (!configMode && securityController.getUserPermissions(userId, authInfo.getAuthRole()).isEmpty()) {
|
||||
throw new DBWebException("Access denied (no permissions)");
|
||||
@@ -177,7 +177,7 @@ public class WebSessionAuthProcessor {
|
||||
OffsetDateTime.now());
|
||||
webAuthInfo.setMessage("Authenticated with " + authProviderDescriptor.getLabel() + " provider");
|
||||
if (configMode) {
|
||||
webAuthInfo.setUserCredentials(userCredentials);
|
||||
webAuthInfo.setUserCredentials(authAttrs);
|
||||
}
|
||||
|
||||
webSession.addAuthInfo(webAuthInfo);
|
||||
|
||||
+4
@@ -358,6 +358,10 @@ public class WebServiceCore implements DBWServiceCore {
|
||||
webSession.addInfoMessage("Create new connection");
|
||||
DBPDataSourceRegistry sessionRegistry = webSession.getProjectById(projectId).getDataSourceRegistry();
|
||||
|
||||
// we don't need to save credentials for templates
|
||||
if (connectionConfig.isTemplate()) {
|
||||
connectionConfig.setSaveCredentials(false);
|
||||
}
|
||||
DBPDataSourceContainer newDataSource = WebServiceUtils.createConnectionFromConfig(connectionConfig, sessionRegistry);
|
||||
if (CommonUtils.isEmpty(newDataSource.getName())) {
|
||||
newDataSource.setName(CommonUtils.notNull(connectionConfig.getName(), "NewConnection"));
|
||||
|
||||
+2
-1
@@ -82,7 +82,8 @@ public class WebNavigatorNodeInfo {
|
||||
|
||||
@Property
|
||||
public String getProjectId() {
|
||||
return node.getOwnerProject().getId();
|
||||
DBPProject ownerProject = node.getOwnerProject();
|
||||
return ownerProject == null ? null : ownerProject.getId();
|
||||
}
|
||||
|
||||
@Property
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog -web-config conf/cloudbeaver.conf"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx512m"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="C:\devel\my\cloudbeaver\deploy\cloudbeaver\"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc}/../opt/cloudbeaver"/>
|
||||
<stringAttribute key="pde.version" value="3.3"/>
|
||||
<stringAttribute key="product" value="io.cloudbeaver.product.ce.product"/>
|
||||
<stringAttribute key="productFile" value="\web-server\DBeaverWebServer.product"/>
|
||||
@@ -97,7 +97,7 @@
|
||||
<setEntry value="org.jkiss.bundle.influxdb@default:default"/>
|
||||
<setEntry value="org.jkiss.bundle.jaxb@default:default"/>
|
||||
<setEntry value="org.jkiss.bundle.sshj@default:default"/>
|
||||
<setEntry value="org.objectweb.asm*9.1.0.v20210209-1849@default:default"/>
|
||||
<setEntry value="org.objectweb.asm@default:default"/>
|
||||
<setEntry value="org.slf4j.api@default:default"/>
|
||||
</setAttribute>
|
||||
<setAttribute key="selected_workspace_bundles">
|
||||
|
||||
Reference in New Issue
Block a user