@@ -66,10 +66,13 @@ public static long getEnvLong(String variableName, long defaultValue) {
6666 }
6767 return out ;
6868 }
69-
7069
7170 public static boolean getEnvBoolean (String variableName ) {
72- boolean out = false ;
71+ return getEnvBoolean (variableName , false );
72+ }
73+
74+ public static boolean getEnvBoolean (String variableName , boolean defaultValue ) {
75+ boolean out = defaultValue ;
7376 String s = getEnvString (variableName );
7477 if (s .isEmpty ()) return out ;
7578 try {
@@ -128,12 +131,23 @@ public static Map<String, String> getEnv() {
128131 }
129132
130133 public static List <String > getEnvList (String variableName ) {
131- return getEnvList (variableName , null );
132- }
134+ return getEnvList (variableName , null , null );
135+ }
136+
137+ public static List <String > getEnvList (String variableName , List <String > defaultValue ) {
138+ return getEnvList (variableName , null , defaultValue );
139+ }
133140
134141 public static List <String > getEnvList (String variableName , String delimiter ) {
142+ return getEnvList (variableName , delimiter , null );
143+ }
144+
145+ public static List <String > getEnvList (String variableName , String delimiter , List <String > defaultValue ) {
135146 String env = getEnvString (variableName );
136- return parseStringToList (env , delimiter );
147+ List <String > out = parseStringToList (env , delimiter );
148+ if (out == null ) out = defaultValue ;
149+ if (out == null ) out = new ArrayList <String >();
150+ return out ;
137151 }
138152
139153 public static List <String > parseStringToList (String source ) {
@@ -144,11 +158,14 @@ public static List<String> parseStringToList(String source, String delimiter) {
144158 List <String > out = new ArrayList <String >();
145159 String d = ":" ;
146160 try {
161+ if (source == null ) return null ;
147162 if (delimiter != null ) if (!delimiter .isEmpty ()) d = delimiter ;
148163 if (!source .isEmpty ()) {
149164 String [] a = source .split (d );
150165 out = Arrays .asList (a );
151- }
166+ } else {
167+ return null ;
168+ }
152169 } catch (Exception e ) {
153170 System .out .println ("EnvUtils.parseStringToList: " + e .getMessage ());
154171 e .printStackTrace ();
@@ -159,11 +176,23 @@ public static List<String> parseStringToList(String source, String delimiter) {
159176 }
160177
161178 public static Map <String , String > getEnvMap (String variableName ) {
162- return getEnvMap (variableName , null );
179+ return getEnvMap (variableName , null , null );
180+ }
181+
182+ public static Map <String , String > getEnvMap (String variableName , Map <String , String > defaultValue ) {
183+ return getEnvMap (variableName , null , defaultValue );
163184 }
164185
165186 public static Map <String , String > getEnvMap (String variableName , String delimiter ) {
187+ return getEnvMap (variableName , delimiter , null );
188+ }
189+
190+ public static Map <String , String > getEnvMap (String variableName , String delimiter , Map <String , String > defaultValue ) {
191+ Map <String , String > out = defaultValue ;
192+ if (out == null ) out = new HashMap <String , String >();
166193 String env = getEnvString (variableName );
194+ if (env == null ) return out ;
195+ if (env .isEmpty ()) return out ;
167196 return parseStringToMap (env , delimiter );
168197 }
169198
0 commit comments