Create a file in the application package(top level) using Intellij Wizard Template.It's working in some machine and not working in linux machine.
fun getApplicationPackageFile(srcOut: File, applicationPackage: String): File {
var applicationPackageFile = srcOut.path.toString()
var pk = applicationPackage.replace(".", "\\")
val status: Boolean = applicationPackageFile.contains(pk)
return if (status) {
var file =
applicationPackageFile.substring(0, applicationPackageFile.indexOf(pk)) + pk + "\\"
File(file)
} else {
srcOut
}
}
I think else part work on linux machine or some machines My inital structure can look like this
main-application-package
-> package-i-created-myself
-> Create template here
So It should create common package under main package along with AppViewModel
and AppActivity
main-application-package
-> common
-> AppViewModel
-> AppActivity
-> package-i-created-myself
-> Create template here
But in some machine it is under package-i-created-myself like
my-main-application-package
-> package-i-created-myself
-> common
-> AppViewModel
-> AppActivity
-> Create template here
I am using above code like
val pkFile = getApplicationPackageFile(srcOut, applicationPackage)
save(
getStrAppViewModel(applicationPackage),
pkFile.resolve("common/AppViewModel.$ktOrJavaExt"
)
save(
getStrAppClass(applicationPackage),
pkFile.resolve("common/AppActivity.$ktOrJavaExt")
)
Where srcOut is the directory(package) on click of which I add Template. and applicationPackage is get from
moduleData.projectTemplateData.applicationPackage