Skip to content

Commit 3aecc09

Browse files
committed
converting to kotlion
1 parent 9419a79 commit 3aecc09

13 files changed

+531
-696
lines changed

.editorconfig

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# EditorConfig is awesome: https://EditorConfig.org
2+
3+
# top-most EditorConfig file
4+
root = true
5+
6+
[*]
7+
end_of_line = lf
8+
insert_final_newline = true
9+
charset = utf-8
10+
indent_style = space
11+
indent_size = 4
12+
trim_trailing_whitespace = true

src/main/java/com/mallowigi/imageicon/ImageConverterFactory.kt

+20-25
Original file line numberDiff line numberDiff line change
@@ -21,33 +21,28 @@
2121
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2222
* SOFTWARE.
2323
*/
24+
package com.mallowigi.imageicon
2425

25-
package com.mallowigi.imageicon;
26+
import com.google.common.collect.Sets
27+
import com.mallowigi.imageicon.converters.ExtendedImageConverter
28+
import com.mallowigi.imageicon.converters.ImageToIconConverter
29+
import com.mallowigi.imageicon.converters.RegularImageConverter
30+
import com.mallowigi.imageicon.converters.SVGImageConverter
31+
import java.util.*
2632

27-
import com.google.common.collect.Sets;
28-
import com.mallowigi.imageicon.converters.ExtendedImageConverter;
29-
import com.mallowigi.imageicon.converters.ImageToIconConverter;
30-
import com.mallowigi.imageicon.converters.RegularImageConverter;
31-
import com.mallowigi.imageicon.converters.SVGImageConverter;
32-
33-
import java.util.Collections;
34-
import java.util.Optional;
35-
import java.util.Set;
36-
37-
enum ImageConverterFactory {
38-
;
39-
private static final Set<ImageToIconConverter> CONVERTERS = Collections.unmodifiableSet(
40-
Sets.newHashSet(
41-
new RegularImageConverter(),
42-
new SVGImageConverter(),
43-
new ExtendedImageConverter()
33+
object ImageConverterFactory {
34+
private val CONVERTERS = Collections.unmodifiableSet(
35+
Sets.newHashSet(
36+
RegularImageConverter(),
37+
SVGImageConverter(),
38+
ExtendedImageConverter()
39+
)
4440
)
45-
);
4641

47-
static ImageToIconConverter create(final String fileName) {
48-
final Optional<ImageToIconConverter> first = CONVERTERS.stream()
49-
.filter(converter -> converter.isAccepted(fileName))
50-
.findFirst();
51-
return first.orElse(null);
52-
}
42+
fun create(fileName: String?): ImageToIconConverter? {
43+
val first = CONVERTERS.stream()
44+
.filter { converter: ImageToIconConverter? -> converter!!.isAccepted(fileName) }
45+
.findFirst()
46+
return first.orElse(null)
47+
}
5348
}

src/main/java/com/mallowigi/imageicon/ImageIconProvider.kt

+37-51
Original file line numberDiff line numberDiff line change
@@ -21,57 +21,43 @@
2121
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2222
* SOFTWARE.
2323
*/
24-
25-
package com.mallowigi.imageicon;
26-
27-
import com.intellij.ide.IconProvider;
28-
import com.intellij.openapi.diagnostic.Logger;
29-
import com.intellij.openapi.project.DumbAware;
30-
import com.intellij.openapi.vfs.VirtualFile;
31-
import com.intellij.psi.PsiElement;
32-
import com.intellij.psi.PsiFile;
33-
import com.intellij.psi.PsiFileSystemItem;
34-
import com.mallowigi.imageicon.converters.ImageToIconConverter;
35-
import org.jetbrains.annotations.NotNull;
36-
import org.jetbrains.annotations.Nullable;
37-
38-
import javax.swing.*;
39-
import java.io.IOException;
40-
import java.util.Objects;
41-
42-
public class ImageIconProvider extends IconProvider implements DumbAware {
43-
private static final Logger LOG = Logger.getInstance(ImageIconProvider.class);
44-
45-
@SuppressWarnings({"OverlyComplexBooleanExpression",
46-
"HardCodedStringLiteral",
47-
"MethodWithMoreThanThreeNegations"})
48-
private static boolean isValidImagePath(final PsiFileSystemItem containingFile) {
49-
return containingFile != null &&
50-
containingFile.getVirtualFile() != null &&
51-
containingFile.getVirtualFile().getCanonicalFile() != null &&
52-
containingFile.getVirtualFile().getCanonicalFile().getCanonicalPath() != null &&
53-
!containingFile.getVirtualFile().getCanonicalFile().getCanonicalPath().contains(".jar");
54-
}
55-
56-
@Nullable
57-
@Override
58-
public final Icon getIcon(@NotNull final PsiElement element, final int flags) {
59-
final PsiFile containingFile = element.getContainingFile();
60-
61-
if (isValidImagePath(containingFile)) {
62-
final VirtualFile canonicalFile = Objects.requireNonNull(containingFile.getVirtualFile().getCanonicalFile());
63-
final String fileName = containingFile.getName();
64-
final ImageToIconConverter converter = ImageConverterFactory.create(fileName);
65-
66-
if (converter != null) {
67-
try {
68-
return converter.convert(canonicalFile, canonicalFile.getCanonicalPath());
24+
package com.mallowigi.imageicon
25+
26+
import com.intellij.ide.IconProvider
27+
import com.intellij.openapi.diagnostic.Logger
28+
import com.intellij.openapi.project.DumbAware
29+
import com.intellij.psi.PsiElement
30+
import com.intellij.psi.PsiFileSystemItem
31+
import java.io.IOException
32+
import java.util.*
33+
import javax.swing.Icon
34+
35+
class ImageIconProvider : IconProvider(), DumbAware {
36+
override fun getIcon(element: PsiElement, flags: Int): Icon? {
37+
val containingFile = element.containingFile
38+
if (isValidImagePath(containingFile)) {
39+
val canonicalFile = Objects.requireNonNull(containingFile.virtualFile.canonicalFile)!!
40+
val fileName = containingFile.name
41+
val converter = ImageConverterFactory.create(fileName)
42+
if (converter != null) {
43+
try {
44+
return converter.convert(canonicalFile, canonicalFile.canonicalPath)
45+
} catch (e: IOException) {
46+
LOG.warn(e.message)
47+
}
48+
}
6949
}
70-
catch (final IOException e) {
71-
LOG.warn(e.getMessage());
50+
return null
51+
}
52+
53+
companion object {
54+
private val LOG = Logger.getInstance(ImageIconProvider::class.java)
55+
private fun isValidImagePath(containingFile: PsiFileSystemItem?): Boolean {
56+
return containingFile != null &&
57+
containingFile.virtualFile != null &&
58+
containingFile.virtualFile.canonicalFile != null &&
59+
containingFile.virtualFile.canonicalFile!!.canonicalPath != null &&
60+
!containingFile.virtualFile.canonicalFile!!.canonicalPath!!.contains(".jar")
7261
}
73-
}
7462
}
75-
return null;
76-
}
77-
}
63+
}

src/main/java/com/mallowigi/imageicon/converters/ExtendedImageConverter.java

-156
This file was deleted.

0 commit comments

Comments
 (0)