File tree 2 files changed +17
-0
lines changed
main/java/com/devonfw/tools/ide/env/var
test/java/com/devonfw/tools/ide/context
2 files changed +17
-0
lines changed Original file line number Diff line number Diff line change 1
1
package com .devonfw .tools .ide .env .var ;
2
2
3
3
import java .nio .file .Path ;
4
+ import java .nio .file .Paths ;
4
5
import java .util .Locale ;
5
6
6
7
import com .devonfw .tools .ide .log .IdeLogger ;
@@ -27,6 +28,20 @@ default String get(String name) {
27
28
return value ;
28
29
}
29
30
31
+ /**
32
+ * @param name the name of the environment variable to get.
33
+ * @return the value of the variable with the given {@code name} as {@link Path}. Will be {@code null} if no such
34
+ * variable is defined.
35
+ */
36
+ default Path getPath (String name ) {
37
+
38
+ String value = get (name );
39
+ if (value == null ) {
40
+ return null ;
41
+ }
42
+ return Paths .get (value );
43
+ }
44
+
30
45
/**
31
46
* @param name the name of the environment variable to get.
32
47
* @return the value of the variable with the given {@code name} without {@link #getParent() inheritance from parent}.
Original file line number Diff line number Diff line change @@ -68,6 +68,8 @@ public void testBasicProjectEnvironment() {
68
68
assertThat (context .env ().getIdeHome ().resolve ("readme" )).hasContent ("this is the IDE_HOME directory" );
69
69
assertThat (context .env ().getIdeRoot ().resolve ("readme" )).hasContent ("this is the IDE_ROOT directory" );
70
70
assertThat (context .env ().getUserHome ().resolve ("readme" )).hasContent ("this is the users HOME directory" );
71
+ assertThat (context .env ().getVariables ().getPath ("M2_REPO" ))
72
+ .isEqualTo (context .env ().getUserHome ().resolve (".m2/repository" ));
71
73
assertThat (context .env ().getDownloadCache ().resolve ("readme" )).hasContent ("this is the download cache" );
72
74
assertThat (context .env ().getDownloadMetadata ().resolve ("readme" )).hasContent ("this is the download metadata" );
73
75
assertThat (context .env ().getToolRepository ().resolve ("readme" )).hasContent ("this is the tool repository" );
You can’t perform that action at this time.
0 commit comments