Skip to content
This repository was archived by the owner on Nov 14, 2023. It is now read-only.

Commit 01bb232

Browse files
madppipervdavid
andauthored
Merge branch 'master' in main (#41)
* Added IntelliJ project files to gitignore * Migrated sources to proper packages so that the source becomes more readable * Optimized class imports * Replaced log4j dependency with standard platform logging, as recommended here: https://blog.jetbrains.com/platform/2022/02/removing-log4j-from-the-intellij-platform/ Co-authored-by: David Veszelovszki <[email protected]>
1 parent f0da479 commit 01bb232

File tree

16 files changed

+115
-67
lines changed

16 files changed

+115
-67
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@
77
# User local IDEA configuration files
88
.idea/
99

10+
#IntelliJ project
11+
*.iml
12+
1013
# Build output & caches for IntelliJ plugin development
1114
build/
1215
idea-sandbox/

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,11 @@ You may also choose to configure it _per repository_ using a `.idea/sourcegraph.
4646
```xml
4747
<?xml version="1.0" encoding="UTF-8"?>
4848
<project version="4">
49-
<component name="Config">
50-
<option name="url" value="https://sourcegraph.example.com" />
51-
<option name="defaultBranch" value="example-branch" />
52-
<option name="remoteUrlReplacements" value="git.example.com, git-web.example.com" />
53-
</component>
49+
<component name="com.sourcegraph.project.SourcegraphConfig">
50+
<option name="url" value="https://sourcegraph.example.com"/>
51+
<option name="defaultBranch" value="example-branch"/>
52+
<option name="remoteUrlReplacements" value="git.example.com, git-web.example.com"/>
53+
</component>
5454
</project>
5555
```
5656

src/main/java/Copy.java renamed to src/main/java/com/sourcegraph/action/Copy.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
package com.sourcegraph.action;
2+
13
import com.intellij.notification.Notification;
24
import com.intellij.notification.NotificationType;
35
import com.intellij.notification.Notifications;

src/main/java/FileAction.java renamed to src/main/java/com/sourcegraph/action/FileAction.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
1+
package com.sourcegraph.action;
2+
13
import com.intellij.openapi.actionSystem.AnAction;
24
import com.intellij.openapi.actionSystem.AnActionEvent;
35
import com.intellij.openapi.application.ApplicationInfo;
6+
import com.intellij.openapi.diagnostic.Logger;
47
import com.intellij.openapi.editor.*;
58
import com.intellij.openapi.fileEditor.FileDocumentManager;
69
import com.intellij.openapi.fileEditor.FileEditorManager;
710
import com.intellij.openapi.project.Project;
811
import com.intellij.openapi.vfs.VirtualFile;
12+
import com.sourcegraph.project.RepoInfo;
13+
import com.sourcegraph.util.SourcegraphUtil;
14+
915

1016
import java.net.URLEncoder;
1117
import java.nio.charset.StandardCharsets;
@@ -34,7 +40,7 @@ public void actionPerformed(AnActionEvent e) {
3440
SelectionModel sel = editor.getSelectionModel();
3541

3642
// Get repo information.
37-
RepoInfo repoInfo = Util.repoInfo(currentFile.getPath(), project);
43+
RepoInfo repoInfo = SourcegraphUtil.repoInfo(currentFile.getPath(), project);
3844
if (Objects.equals(repoInfo.remoteURL, "")) {
3945
return;
4046
}
@@ -48,12 +54,12 @@ public void actionPerformed(AnActionEvent e) {
4854
VisualPosition selectionEndPosition = sel.getSelectionEndPosition();
4955
LogicalPosition start = selectionStartPosition != null ? editor.visualToLogicalPosition(selectionStartPosition) : null;
5056
LogicalPosition end = selectionEndPosition != null ? editor.visualToLogicalPosition(selectionEndPosition) : null;
51-
uri = Util.sourcegraphURL(project)+"-/editor"
57+
uri = SourcegraphUtil.sourcegraphURL(project)+"-/editor"
5258
+ "?remote_url=" + URLEncoder.encode(repoInfo.remoteURL, StandardCharsets.UTF_8)
5359
+ "&branch=" + URLEncoder.encode(repoInfo.branch, StandardCharsets.UTF_8)
5460
+ "&file=" + URLEncoder.encode(repoInfo.fileRel, StandardCharsets.UTF_8)
5561
+ "&editor=" + URLEncoder.encode("JetBrains", StandardCharsets.UTF_8)
56-
+ "&version=" + URLEncoder.encode(Util.VERSION, StandardCharsets.UTF_8)
62+
+ "&version=" + URLEncoder.encode(SourcegraphUtil.VERSION, StandardCharsets.UTF_8)
5763
+ (start != null ? ("&start_row=" + URLEncoder.encode(Integer.toString(start.line), StandardCharsets.UTF_8)
5864
+ "&start_col=" + URLEncoder.encode(Integer.toString(start.column), StandardCharsets.UTF_8)) : "")
5965
+ (end != null ? ("&end_row=" + URLEncoder.encode(Integer.toString(end.line), StandardCharsets.UTF_8)

src/main/java/Open.java renamed to src/main/java/com/sourcegraph/action/Open.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
package com.sourcegraph.action;
2+
13
import com.intellij.openapi.diagnostic.Logger;
24

35
import java.awt.*;

src/main/java/OpenRevisionAction.java renamed to src/main/java/com/sourcegraph/action/OpenRevisionAction.java

Lines changed: 33 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
package com.sourcegraph.action;
2+
13
import com.intellij.openapi.actionSystem.AnAction;
24
import com.intellij.openapi.actionSystem.AnActionEvent;
35
import com.intellij.openapi.application.ApplicationInfo;
@@ -13,41 +15,46 @@
1315
import java.net.URI;
1416
import java.util.Optional;
1517

16-
import org.slf4j.LoggerFactory;
17-
import org.slf4j.Logger;
18+
import com.sourcegraph.project.CommitViewUriBuilder;
19+
import com.sourcegraph.project.RepoInfo;
20+
import com.sourcegraph.project.RevisionContext;
21+
import com.sourcegraph.util.SourcegraphUtil;
22+
1823
import org.jetbrains.annotations.NotNull;
24+
import com.intellij.openapi.diagnostic.Logger;
1925

2026
/**
2127
* Jetbrains IDE action to open a selected revision in Sourcegraph.
2228
*/
2329
public class OpenRevisionAction extends AnAction implements DumbAware {
24-
private final Logger logger = LoggerFactory.getLogger(this.getClass());
30+
private final Logger logger = Logger.getInstance(this.getClass());
2531

26-
private Optional<RevisionContext> getHistoryRevision(AnActionEvent e) {
27-
VcsFileRevision revision = e.getDataContext().getData(VcsDataKeys.VCS_FILE_REVISION);
28-
Project project = e.getProject();
32+
private Optional<RevisionContext> getHistoryRevision(AnActionEvent e) {
33+
VcsFileRevision revision = e.getDataContext().getData(VcsDataKeys.VCS_FILE_REVISION);
34+
Project project = e.getProject();
2935

30-
if (project == null) {
31-
return Optional.empty();
32-
}
33-
if (revision == null) {
34-
return Optional.empty();
35-
}
36-
37-
String rev = revision.getRevisionNumber().toString();
38-
return Optional.of(new RevisionContext(project, rev));
36+
if (project == null) {
37+
return Optional.empty();
38+
}
39+
if (revision == null) {
40+
return Optional.empty();
3941
}
4042

41-
private Optional<RevisionContext> getLogRevision(AnActionEvent e) {
42-
VcsLog log = e.getDataContext().getData(VcsLogDataKeys.VCS_LOG);
43-
Project project = e.getProject();
43+
String rev = revision.getRevisionNumber().toString();
44+
return Optional.of(new RevisionContext(project, rev));
45+
}
46+
47+
private Optional<RevisionContext> getLogRevision(AnActionEvent e) {
48+
VcsLog log = e.getDataContext().getData(VcsLogDataKeys.VCS_LOG);
49+
Project project = e.getProject();
50+
51+
if (project == null) {
52+
return Optional.empty();
53+
}
54+
if (log == null || log.getSelectedCommits().isEmpty()) {
55+
return Optional.empty();
56+
}
4457

45-
if (project == null) {
46-
return Optional.empty();
47-
}
48-
if (log == null || log.getSelectedCommits().isEmpty()) {
49-
return Optional.empty();
50-
}
5158

5259
String rev = log.getSelectedCommits().get(0).getHash().asString();
5360
return Optional.of(new RevisionContext(project, rev));
@@ -62,10 +69,10 @@ public void actionPerformed(@NotNull AnActionEvent e) {
6269
try {
6370
String productName = ApplicationInfo.getInstance().getVersionName();
6471
String productVersion = ApplicationInfo.getInstance().getFullVersion();
65-
RepoInfo repoInfo = Util.repoInfo(context.getProject().getProjectFilePath(), context.getProject());
72+
RepoInfo repoInfo = SourcegraphUtil.repoInfo(context.getProject().getProjectFilePath(), context.getProject());
6673

6774
CommitViewUriBuilder builder = new CommitViewUriBuilder();
68-
URI uri = builder.build(Util.sourcegraphURL(context.getProject()), context.getRevisionNumber(), repoInfo, productName, productVersion);
75+
URI uri = builder.build(SourcegraphUtil.sourcegraphURL(context.getProject()), context.getRevisionNumber(), repoInfo, productName, productVersion);
6976

7077
// Open the URL in the browser.
7178
Desktop.getDesktop().browse(uri);

src/main/java/Search.java renamed to src/main/java/com/sourcegraph/action/Search.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1+
package com.sourcegraph.action;
2+
13
import com.intellij.openapi.actionSystem.AnActionEvent;
2-
import org.jetbrains.annotations.NotNull;
34

45
public class Search extends SearchActionBase {
56
@Override
6-
public void actionPerformed(@NotNull AnActionEvent e) {
7+
public void actionPerformed(AnActionEvent e) {
78
super.actionPerformedMode(e, "search");
89
}
9-
}
10+
}

src/main/java/SearchActionBase.java renamed to src/main/java/com/sourcegraph/action/SearchActionBase.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
package com.sourcegraph.action;
2+
13
import com.intellij.openapi.actionSystem.AnAction;
24
import com.intellij.openapi.actionSystem.AnActionEvent;
35
import com.intellij.openapi.editor.Document;
@@ -9,8 +11,10 @@
911
import com.intellij.openapi.vfs.VirtualFile;
1012
import com.intellij.openapi.diagnostic.Logger;
1113
import com.intellij.openapi.application.ApplicationInfo;
14+
import com.sourcegraph.project.RepoInfo;
15+
import com.sourcegraph.util.SourcegraphUtil;
16+
import org.jetbrains.annotations.Nullable;
1217

13-
import javax.annotation.Nullable;
1418
import java.io.*;
1519
import java.awt.Desktop;
1620
import java.net.URI;
@@ -38,7 +42,7 @@ public void actionPerformedMode(AnActionEvent e, String mode) {
3842
SelectionModel sel = editor.getSelectionModel();
3943

4044
// Get repo information.
41-
RepoInfo repoInfo = Util.repoInfo(currentFile.getPath(), project);
45+
RepoInfo repoInfo = SourcegraphUtil.repoInfo(currentFile.getPath(), project);
4246

4347
String q = sel.getSelectedText();
4448
if (q == null || q.equals("")) {
@@ -50,9 +54,9 @@ public void actionPerformedMode(AnActionEvent e, String mode) {
5054
String productName = ApplicationInfo.getInstance().getVersionName();
5155
String productVersion = ApplicationInfo.getInstance().getFullVersion();
5256

53-
uri = Util.sourcegraphURL(project)+"-/editor"
57+
uri = SourcegraphUtil.sourcegraphURL(project)+"-/editor"
5458
+ "?editor=" + URLEncoder.encode("JetBrains", StandardCharsets.UTF_8)
55-
+ "&version=" + URLEncoder.encode(Util.VERSION, StandardCharsets.UTF_8)
59+
+ "&version=" + URLEncoder.encode(SourcegraphUtil.VERSION, StandardCharsets.UTF_8)
5660
+ "&utm_product_name=" + URLEncoder.encode(productName, StandardCharsets.UTF_8)
5761
+ "&utm_product_version=" + URLEncoder.encode(productVersion, StandardCharsets.UTF_8)
5862
+ "&search=" + URLEncoder.encode(q, StandardCharsets.UTF_8);

src/main/java/SearchRepository.java renamed to src/main/java/com/sourcegraph/action/SearchRepository.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1+
package com.sourcegraph.action;
2+
13
import com.intellij.openapi.actionSystem.AnActionEvent;
2-
import org.jetbrains.annotations.NotNull;
4+
35

46
public class SearchRepository extends SearchActionBase {
57
@Override
6-
public void actionPerformed(@NotNull AnActionEvent e) {
8+
public void actionPerformed(AnActionEvent e) {
79
super.actionPerformedMode(e, "search.repository");
810
}
9-
}
11+
}

src/main/java/CommitViewUriBuilder.java renamed to src/main/java/com/sourcegraph/project/CommitViewUriBuilder.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
1+
package com.sourcegraph.project;
2+
13
import com.google.common.base.Strings;
4+
import com.sourcegraph.project.RepoInfo;
5+
import com.sourcegraph.util.SourcegraphUtil;
6+
7+
import java.io.UnsupportedEncodingException;
28
import java.net.URI;
39
import java.net.URLEncoder;
410
import java.nio.charset.StandardCharsets;
@@ -26,7 +32,7 @@ public URI build(String sourcegraphBase, String revisionNumber, RepoInfo repoInf
2632
String.format("/%s%s", remote.getHost(), path) +
2733
String.format("/-/commit/%s", revisionNumber) +
2834
String.format("?editor=%s", URLEncoder.encode("JetBrains", StandardCharsets.UTF_8)) +
29-
String.format("&version=%s", URLEncoder.encode(Util.VERSION, StandardCharsets.UTF_8)) +
35+
String.format("&version=%s", URLEncoder.encode(SourcegraphUtil.VERSION, StandardCharsets.UTF_8)) +
3036
String.format("&utm_product_name=%s", URLEncoder.encode(productName, StandardCharsets.UTF_8)) +
3137
String.format("&utm_product_version=%s", URLEncoder.encode(productVersion, StandardCharsets.UTF_8));
3238

0 commit comments

Comments
 (0)