Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#913: Added support for SquirrelSQL #1136

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
import com.devonfw.tools.ide.tool.python.Python;
import com.devonfw.tools.ide.tool.quarkus.Quarkus;
import com.devonfw.tools.ide.tool.sonar.Sonar;
import com.devonfw.tools.ide.tool.squirrelsql.SquirrelSql;
import com.devonfw.tools.ide.tool.terraform.Terraform;
import com.devonfw.tools.ide.tool.tomcat.Tomcat;
import com.devonfw.tools.ide.tool.vscode.Vscode;
Expand Down Expand Up @@ -108,6 +109,7 @@ public CommandletManagerImpl(IdeContext context) {
add(new Terraform(context));
add(new Oc(context));
add(new Quarkus(context));
add(new SquirrelSql(context));
add(new Kotlinc(context));
add(new KotlincNative(context));
add(new KubeCtl(context));
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package com.devonfw.tools.ide.tool.squirrelsql;

import java.util.Set;

import com.devonfw.tools.ide.common.Tag;
import com.devonfw.tools.ide.context.IdeContext;
import com.devonfw.tools.ide.tool.LocalToolCommandlet;
import com.devonfw.tools.ide.tool.ToolCommandlet;

/**
* {@link ToolCommandlet} for SQuirreL SQL Client.
*/
public class SquirrelSql extends LocalToolCommandlet {

/**
* The constructor.
*
* @param context the {@link IdeContext}.
*/
public SquirrelSql(IdeContext context) {

super(context, "squirrelsql", Set.of(Tag.DB));
}

@Override
public String getToolHelpArguments() {

return "--help";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package com.devonfw.tools.ide.tool.squirrelsql;

import com.devonfw.tools.ide.url.model.folder.UrlVersion;
import com.devonfw.tools.ide.url.updater.GithubUrlUpdater;
import com.devonfw.tools.ide.version.VersionIdentifier;

/**
* {@link GithubUrlUpdater} for SquirrelSQL
*/
public class SquirrelSqlUrlUpdater extends GithubUrlUpdater {

public static final VersionIdentifier MIN_SQUIRRELSQL_VID = VersionIdentifier.of("4.4.0");

@Override
protected String getTool() {

return "squirrelsql";
}

@Override
protected String getGithubOrganization() {

return "squirrel-sql-client";
}

@Override
protected String getGithubRepository() {

return "squirrel-sql-code";
}

@Override
protected void addVersion(UrlVersion urlVersion) {

VersionIdentifier vid = urlVersion.getVersionIdentifier();
if (vid.compareVersion(MIN_SQUIRRELSQL_VID).isGreater()) {
String baseUrl = "https://squirrel-sql.sourceforge.io/#installation";
doAddVersion(urlVersion, baseUrl + ".zip");
doAddVersion(urlVersion, baseUrl + ".tar.gz");
}
}

}

Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
import com.devonfw.tools.ide.tool.python.PythonUrlUpdater;
import com.devonfw.tools.ide.tool.quarkus.QuarkusUrlUpdater;
import com.devonfw.tools.ide.tool.sonar.SonarUrlUpdater;
import com.devonfw.tools.ide.tool.squirrelsql.SquirrelSqlUrlUpdater;
import com.devonfw.tools.ide.tool.terraform.TerraformUrlUpdater;
import com.devonfw.tools.ide.tool.tomcat.TomcatUrlUpdater;
import com.devonfw.tools.ide.tool.vscode.VsCodeUrlUpdater;
Expand Down Expand Up @@ -69,7 +70,7 @@ public class UpdateManager extends AbstractProcessorWithTimeout {
new JavaUrlUpdater(), new JenkinsUrlUpdater(), new JmcUrlUpdater(), new KotlincUrlUpdater(),
new KotlincNativeUrlUpdater(), new LazyDockerUrlUpdater(), new MvnUrlUpdater(), new Mvn4UrlUpdater(),
new NodeUrlUpdater(), new NpmUrlUpdater(), new OcUrlUpdater(), new PgAdminUrlUpdater(), new PipUrlUpdater(),
new PythonUrlUpdater(), new QuarkusUrlUpdater(), new DockerRancherDesktopUrlUpdater(), new SonarUrlUpdater(),
new PythonUrlUpdater(), new QuarkusUrlUpdater(), new DockerRancherDesktopUrlUpdater(), new SonarUrlUpdater(), new SquirrelSqlUrlUpdater(),
new TerraformUrlUpdater(), new TomcatUrlUpdater(), new VsCodeUrlUpdater());

/**
Expand Down
2 changes: 2 additions & 0 deletions cli/src/main/resources/nls/Help.properties
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,8 @@ cmd.sonar.detail=SonarQube is a platform for continuous inspection of code quali
cmd.sonar.val.command=Action to perform (START|STOP|ANALYZE)
cmd.status=Prints the status report about your IDEasy.
cmd.status.detail=To check your IDE-status (e.g. duplicated or legacy variables) as well as potential information about updates to settings you should apply\nwith ide update, run the following command: 'ide status'.
cmd.squirrelsql=Tool commandlet for SquirrelSql.
cmd.squirrelsql.detail=SquirrelSQL is a universal SQL client that supports a variety of database management systems. It provides an intuitive interface for running SQL queries, browsing database objects, and managing database connections. Detailed documentation can be found at https://www.squirrelsql.org
cmd.terraform=Tool commandlet for Terraform.
cmd.terraform.detail=Terraform is an infrastructure as code tool for managing cloud resources. Detailed documentation can be found at https://www.terraform.io/docs/index.html
cmd.tomcat=Tool commandlet for Tomcat
Expand Down
2 changes: 2 additions & 0 deletions cli/src/main/resources/nls/Help_de.properties
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,8 @@ cmd.sonar.detail=SonarQube ist eine Plattform für die kontinuierliche Code-Qual
cmd.sonar.val.command=Auszuführende Aktion (START|STOP|ANALYZE)
cmd.status=Gibt einen Statusbericht über IDEasy aus
cmd.status.detail=Um den Status Ihrer IDE zu überprüfen (z.B. doppelte oder veraltete Variablen) sowie potenzielle Informationen über Updates zu den Einstellungen,\ndie Sie mit dem Befehl 'ide update' anwenden sollten, führen Sie den folgenden Befehl aus: 'ide status'.
cmd.squirrelsql=Werkzeug Kommando für SquirrelSQL.
cmd.squirrelsql.detail=SquirrelSQL ist ein universeller SQL-Client, der eine Vielzahl von Datenbankverwaltungssystemen unterstützt. Er bietet eine intuitive Benutzeroberfläche zum Ausführen von SQL-Abfragen, Durchsuchen von Datenbankobjekten und Verwalten von Datenbankverbindungen. Eine ausführliche Dokumentation finden Sie unter https://www.squirrelsql.org
cmd.terraform=Werkzeug Kommando für Terraform.
cmd.terraform.detail=Terraform ist ein Tool für Infrastructure as Code zur Verwaltung von Cloud-Ressourcen. Detaillierte Dokumentation ist zu finden unter https://www.terraform.io/docs/index.html
cmd.tomcat=Werkzeug Kommando für Tomcat
Expand Down
Loading