@@ -13,7 +13,6 @@ export class ProjectService implements IProjectService {
13
13
public static APP_FOLDER_NAME = "app" ;
14
14
public static PROJECT_FRAMEWORK_DIR = "framework" ;
15
15
16
- private cachedProjectDir : string = null ;
17
16
public projectData : IProjectData = null ;
18
17
19
18
constructor ( private $logger : ILogger ,
@@ -22,52 +21,28 @@ export class ProjectService implements IProjectService {
22
21
private $projectTemplatesService : IProjectTemplatesService ,
23
22
private $androidProjectService : IPlatformProjectService ,
24
23
private $iOSProjectService : IPlatformProjectService ,
24
+ private $projectHelper : IProjectHelper ,
25
25
private $config ) {
26
26
this . projectData = this . getProjectData ( ) . wait ( ) ;
27
27
}
28
28
29
- private get projectDir ( ) : string {
30
- if ( this . cachedProjectDir ) {
31
- return this . cachedProjectDir ;
32
- }
33
-
34
- var projectDir = path . resolve ( options . path || "." ) ;
35
- while ( true ) {
36
- this . $logger . trace ( "Looking for project in '%s'" , projectDir ) ;
37
-
38
- if ( this . $fs . exists ( path . join ( projectDir , this . $config . PROJECT_FILE_NAME ) ) . wait ( ) ) {
39
- this . $logger . debug ( "Project directory is '%s'." , projectDir ) ;
40
- this . cachedProjectDir = projectDir ;
41
- break ;
42
- }
43
-
44
- var dir = path . dirname ( projectDir ) ;
45
- if ( dir === projectDir ) {
46
- this . $logger . debug ( "No project found at or above '%s'." , path . resolve ( "." ) ) ;
47
- break ;
48
- }
49
- projectDir = dir ;
50
- }
51
-
52
- return this . cachedProjectDir ;
53
- }
54
-
55
29
private getProjectData ( ) : IFuture < IProjectData > {
56
30
return ( ( ) => {
57
31
var projectData : IProjectData = null ;
32
+ var projectDir = this . $projectHelper . projectDir ;
58
33
59
- if ( this . projectDir ) {
34
+ if ( projectDir ) {
60
35
projectData = {
61
- projectDir : this . projectDir ,
62
- platformsDir : path . join ( this . projectDir , "platforms" ) ,
63
- projectFilePath : path . join ( this . projectDir , this . $config . PROJECT_FILE_NAME )
36
+ projectDir : projectDir ,
37
+ platformsDir : path . join ( projectDir , "platforms" ) ,
38
+ projectFilePath : path . join ( projectDir , this . $config . PROJECT_FILE_NAME )
64
39
} ;
65
- var projectFilePath = path . join ( this . projectDir , this . $config . PROJECT_FILE_NAME ) ;
40
+ var projectFilePath = path . join ( projectDir , this . $config . PROJECT_FILE_NAME ) ;
66
41
67
42
if ( this . $fs . exists ( projectFilePath ) . wait ( ) ) {
68
43
var fileContent = this . $fs . readJson ( projectFilePath ) . wait ( ) ;
69
44
projectData . projectId = fileContent . id ;
70
- projectData . projectName = path . basename ( this . projectDir ) ;
45
+ projectData . projectName = path . basename ( projectDir ) ;
71
46
}
72
47
}
73
48
0 commit comments