mirror of
https://gitee.com/zhangsken/AndroidIDE.git
synced 2026-10-16 07:49:44 +08:00
fix(projects): introduce workspace API and remove 'Project' model
This commit is contained in:
+2
-2
@@ -92,12 +92,12 @@ fun processXmlFile(file: File, expectedType: AaptResourceType): Pair<XmlProcesso
|
||||
throw InflateException("File is not a layout file.")
|
||||
}
|
||||
|
||||
if (IProjectManager.getInstance().rootProject == null) {
|
||||
if (IProjectManager.getInstance().getWorkspace() == null) {
|
||||
throw InflateException("GradleProject is not initialized!")
|
||||
}
|
||||
|
||||
val module =
|
||||
IProjectManager.getInstance().findModuleForFile(file, false) as? AndroidModule
|
||||
IProjectManager.getInstance().getWorkspace()?.findModuleForFile(file, false) as? AndroidModule
|
||||
?: throw InflateException("Cannot find module for given file. Is the project initialized?")
|
||||
val resFile =
|
||||
ResourceFile(
|
||||
|
||||
@@ -33,7 +33,7 @@ fun startParse(file: File) {
|
||||
if (isParsing) {
|
||||
return
|
||||
}
|
||||
(IProjectManager.getInstance().findModuleForFile(file, false) as? AndroidModule)?.let {
|
||||
(IProjectManager.getInstance().getWorkspace()?.findModuleForFile(file, false) as? AndroidModule)?.let {
|
||||
startParse(it)
|
||||
}
|
||||
}
|
||||
|
||||
+9
-2
@@ -27,6 +27,7 @@ import com.itsaky.androidide.projects.android.AndroidModule
|
||||
import com.itsaky.androidide.projects.builder.BuildService
|
||||
import com.itsaky.androidide.projects.util.findAppModule
|
||||
import com.itsaky.androidide.testing.tooling.ToolingApiTestLauncher
|
||||
import com.itsaky.androidide.testing.tooling.models.ToolingApiTestLauncherParams
|
||||
import kotlinx.coroutines.runBlocking
|
||||
import org.junit.Ignore
|
||||
import org.robolectric.Robolectric
|
||||
@@ -43,11 +44,17 @@ object XmlInflaterTest {
|
||||
return
|
||||
}
|
||||
|
||||
ToolingApiTestLauncher.launchServer {
|
||||
val params = ToolingApiTestLauncherParams()
|
||||
ToolingApiTestLauncher.launchServer(params) {
|
||||
assertThat(result?.isSuccessful).isTrue()
|
||||
|
||||
Lookup.getDefault().register(BuildService.KEY_PROJECT_PROXY, project)
|
||||
runBlocking { IProjectManager.getInstance().setupProject(project) }
|
||||
|
||||
val projectManager = IProjectManager.getInstance()
|
||||
projectManager.openProject(params.projectDir.toFile())
|
||||
|
||||
runBlocking { projectManager.setupProject(project) }
|
||||
|
||||
init.set(true)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user