Skip to content
Merged
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 @@ -37,6 +37,7 @@ fun getExtension(type: String): String =
* Does it match the Dao file type condition?
*/
fun isJavaOrKotlinFileType(daoFile: PsiFile): Boolean {
if (daoFile.virtualFile == null) return false
val fileType = FileTypeManager.getInstance().getFileTypeByFile(daoFile.virtualFile)
return when (fileType.name) {
"JAVA", "Kotlin" -> true
Expand All @@ -57,7 +58,7 @@ fun isSupportFileType(file: PsiFile): Boolean {

fun isInjectionSqlFile(file: PsiFile): Boolean {
val extension = file.fileType.defaultExtension
val filePath = file.virtualFile.path
val filePath = file.virtualFile?.path ?: return false
return when (extension) {
"sql" -> true
else -> false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ import org.domaframework.doma.intellij.extension.getModule
*/
fun findDaoMethod(originalFile: PsiFile): PsiMethod? {
val project = originalFile.project
val module = project.getModule(originalFile.virtualFile) ?: return null
val virtualFile = originalFile.virtualFile ?: return null
val module = project.getModule(virtualFile) ?: return null

if (isInjectionSqlFile(originalFile)) {
originalFile.let {
Expand All @@ -52,7 +53,7 @@ fun findDaoMethod(originalFile: PsiFile): PsiMethod? {
val relativePath =
formatDaoPathFromSqlFilePath(
originalFile,
project.getContentRoot(originalFile.virtualFile)?.path ?: "",
project.getContentRoot(virtualFile)?.path ?: "",
fileTypeName,
)
val daoClassName: String =
Expand Down Expand Up @@ -110,7 +111,7 @@ fun formatDaoPathFromSqlFilePath(
if (isInjectionSqlFile(relativeBaseSqlFile)) {
return ""
}
val sqlPath = relativeBaseSqlFile.virtualFile.path
val sqlPath = relativeBaseSqlFile.virtualFile?.path ?: return ""
var relativeFilePath = sqlPath.substring(projectRootPath.length)
if (!relativeFilePath.startsWith("/")) {
relativeFilePath = "/$relativeFilePath"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ class PsiDaoMethod(
PsiManager
.getInstance(psiProject)
.findDirectory(virtualFile) ?: return@runWriteCommandAction
val sqlVirtualFile = sqlOutputDirPath.createFile(sqlFileName).virtualFile
val sqlVirtualFile = sqlOutputDirPath.createFile(sqlFileName).virtualFile ?: return@runWriteCommandAction
FileEditorManager
.getInstance(psiProject)
.openFile(sqlVirtualFile, true)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ class DaoRenameProcessor : RenameJavaClassProcessor() {
val daoClass = getDaoClass(element.containingFile) ?: return

val project = element.project
val virtualFile = element.containingFile.virtualFile
val virtualFile = element.containingFile.virtualFile ?: return
project.getContentRoot(virtualFile)?.let {
element.module?.getPackagePathFromDaoPath(virtualFile)?.let {
if (it.name == daoClass.name) {
Expand Down
Loading