001/* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * https://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017 018package org.apache.commons.lang3; 019 020import java.nio.file.Path; 021import java.nio.file.Paths; 022import java.util.function.BooleanSupplier; 023import java.util.function.IntSupplier; 024import java.util.function.LongSupplier; 025import java.util.function.Supplier; 026 027import org.apache.commons.lang3.function.Suppliers; 028 029/** 030 * Accesses current <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Property</a> names and values. 031 * 032 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 033 * @since 3.13.0 034 */ 035public final class SystemProperties { 036 037 /** 038 * The System property name {@value}. 039 * 040 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/TrayIcon.html#apple.awt.enableTemplateImages">apple.awt.enableTemplateImages</a> 041 * @since 3.15.0 042 */ 043 public static final String APPLE_AWT_ENABLE_TEMPLATE_IMAGES = "apple.awt.enableTemplateImages"; 044 045 /** 046 * The System property name {@value}. 047 * <p> 048 * Not in Java 17 and above according to <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> Javadoc. 049 * </p> 050 * 051 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 052 * @deprecated Deprecated without replacement. 053 */ 054 @Deprecated 055 public static final String AWT_TOOLKIT = "awt.toolkit"; 056 057 /** 058 * The System property name {@value}. 059 * 060 * @see <a href= 061 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.naming/module-summary.html#com.sun.jndi.ldap.object.trustSerialData">com.sun.jndi.ldap.object.trustSerialData</a> 062 * @since 3.15.0 063 */ 064 public static final String COM_SUN_JNDI_LDAP_OBJECT_TRUST_SERIAL_DATA = "com.sun.jndi.ldap.object.trustSerialData"; 065 066 /** 067 * The System property name {@value}. 068 * 069 * @see <a href= 070 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/com/sun/net/httpserver/spi/HttpServerProvider.html#com.sun.net.httpserver.HttpServerProvider">com.sun.net.httpserver.HttpServerProvider</a> 071 * @since 3.15.0 072 */ 073 public static final String COM_SUN_NET_HTTP_SERVER_HTTP_SERVER_PROVIDER = "com.sun.net.httpserver.HttpServerProvider"; 074 075 /** 076 * The System property name {@value}. 077 */ 078 public static final String FILE_ENCODING = "file.encoding"; 079 080 /** 081 * The System property name {@value}. 082 */ 083 public static final String FILE_SEPARATOR = "file.separator"; 084 085 /** 086 * The System property name {@value}. 087 * 088 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#ftp.nonProxyHosts">ftp.nonProxyHosts</a> 089 * @since 3.15.0 090 */ 091 public static final String FTP_NON_PROXY_HOST = "ftp.nonProxyHosts"; 092 093 /** 094 * The System property name {@value}. 095 * 096 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#ftp.proxyHost">ftp.proxyHost</a> 097 * @since 3.15.0 098 */ 099 public static final String FTP_PROXY_HOST = "ftp.proxyHost"; 100 101 /** 102 * The System property name {@value}. 103 * 104 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#ftp.proxyPort">ftp.proxyPort</a> 105 * @since 3.15.0 106 */ 107 public static final String FTP_PROXY_PORT = "ftp.proxyPort"; 108 109 /** 110 * The System property name {@value}. 111 * 112 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.agent">http.agent</a> 113 * @since 3.15.0 114 */ 115 public static final String HTTP_AGENT = "http.agent"; 116 117 /** 118 * The System property name {@value}. 119 * 120 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#auth.digest.cnonceRepeat">auth.digest.cnonceRepeat</a> 121 * @since 3.15.0 122 */ 123 public static final String HTTP_AUTH_DIGEST_CNONCE_REPEAT = "http.auth.digest.cnonceRepeat"; 124 125 /** 126 * The System property name {@value}. 127 * 128 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#reEnabledAlgorithms">http.auth.digest.reEnabledAlgorithms</a> 129 * @since 3.15.0 130 */ 131 public static final String HTTP_AUTH_DIGEST_RE_ENABLED_ALGORITHMS = "http.auth.digest.reEnabledAlgorithms"; 132 133 /** 134 * The System property name {@value}. 135 * 136 * @see <a href= 137 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.auth.digest.validateProxy">http.auth.digest.validateProxy</a> 138 * @since 3.15.0 139 */ 140 public static final String HTTP_AUTH_DIGEST_VALIDATE_PROXY = "http.auth.digest.validateProxy"; 141 142 /** 143 * The System property name {@value}. 144 * 145 * @see <a href= 146 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.auth.digest.validateServer">http.auth.digest.validateServer</a> 147 * @since 3.15.0 148 */ 149 public static final String HTTP_AUTH_DIGEST_VALIDATE_SERVER = "http.auth.digest.validateServer"; 150 151 /** 152 * The System property name {@value}. 153 * 154 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.auth.ntlm.domain">http.auth.ntlm.domain</a> 155 * @since 3.15.0 156 */ 157 public static final String HTTP_AUTH_NTLM_DOMAIN = "http.auth.ntlm.domain"; 158 159 /** 160 * The System property name {@value}. 161 * 162 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.keepAlive">http.keepAlive</a> 163 * @since 3.15.0 164 */ 165 public static final String HTTP_KEEP_ALIVE = "http.keepAlive"; 166 167 /** 168 * The System property name {@value}. 169 * 170 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.keepAlive.time.proxy">http.keepAlive.time.proxy</a> 171 * @since 3.15.0 172 */ 173 public static final String HTTP_KEEP_ALIVE_TIME_PROXY = "http.keepAlive.time.proxy"; 174 175 /** 176 * The System property name {@value}. 177 * 178 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.keepAlive.time.server">http.keepAlive.time.server</a> 179 * @since 3.15.0 180 */ 181 public static final String HTTP_KEEP_ALIVE_TIME_SERVER = "http.keepAlive.time.server"; 182 183 /** 184 * The System property name {@value}. 185 * 186 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.maxConnections">http.maxConnections</a> 187 * @since 3.15.0 188 */ 189 public static final String HTTP_MAX_CONNECTIONS = "http.maxConnections"; 190 191 /** 192 * The System property name {@value}. 193 * 194 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.maxRedirects">http.maxRedirects</a> 195 * @since 3.15.0 196 */ 197 public static final String HTTP_MAX_REDIRECTS = "http.maxRedirects"; 198 199 /** 200 * The System property name {@value}. 201 * 202 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.nonProxyHosts">http.nonProxyHosts</a> 203 * @since 3.15.0 204 */ 205 public static final String HTTP_NON_PROXY_HOSTS = "http.nonProxyHosts"; 206 207 /** 208 * The System property name {@value}. 209 * 210 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.proxyHost">http.proxyHost</a> 211 * @since 3.15.0 212 */ 213 public static final String HTTP_PROXY_HOST = "http.proxyHost"; 214 215 /** 216 * The System property name {@value}. 217 * 218 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#http.proxyPort">http.proxyPort</a> 219 * @since 3.15.0 220 */ 221 public static final String HTTP_PROXY_PORT = "http.proxyPort"; 222 223 /** 224 * The System property name {@value}. 225 * 226 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#https.proxyHost">https.proxyHost</a> 227 * @since 3.15.0 228 */ 229 public static final String HTTPS_PROXY_HOST = "https.proxyHost"; 230 231 /** 232 * The System property name {@value}. 233 * 234 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#https.proxyPort">https.proxyPort</a> 235 * @since 3.15.0 236 */ 237 public static final String HTTPS_PROXY_PORT = "https.proxyPort"; 238 239 /** 240 * The System property name {@value}. 241 * <p> 242 * Not in Java 17 and above according to <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> Javadoc. 243 * </p> 244 * 245 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 246 * @deprecated Deprecated without replacement. 247 */ 248 @Deprecated 249 public static final String JAVA_AWT_FONTS = "java.awt.fonts"; 250 251 /** 252 * The System property name {@value}. 253 * <p> 254 * Not in Java 17 and above according to <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> Javadoc. 255 * </p> 256 * 257 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 258 * @deprecated Deprecated without replacement. 259 */ 260 @Deprecated 261 public static final String JAVA_AWT_GRAPHICSENV = "java.awt.graphicsenv"; 262 263 /** 264 * The System property name {@value}. 265 * <p> 266 * Not in Java 17 and above according to <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> Javadoc. 267 * </p> 268 * 269 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 270 * @deprecated Deprecated without replacement. 271 */ 272 @Deprecated 273 public static final String JAVA_AWT_HEADLESS = "java.awt.headless"; 274 275 /** 276 * The System property name {@value}. 277 * <p> 278 * Not in Java 17 and above according to <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> Javadoc. 279 * </p> 280 * 281 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 282 * @deprecated Deprecated without replacement. 283 */ 284 @Deprecated 285 public static final String JAVA_AWT_PRINTERJOB = "java.awt.printerjob"; 286 287 /** 288 * The System property name {@value}. 289 * 290 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">java.class.path</a> 291 */ 292 public static final String JAVA_CLASS_PATH = "java.class.path"; 293 294 /** 295 * The System property name {@value}. 296 */ 297 public static final String JAVA_CLASS_VERSION = "java.class.version"; 298 299 /** 300 * The System property name {@value}. 301 * <p> 302 * Not in Java 17 and above according to <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> Javadoc. 303 * </p> 304 * 305 * @see <a href="https://bugs.openjdk.org/browse/JDK-8305998">JDK-8305998</a> 306 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 307 * @deprecated Deprecated without replacement. 308 */ 309 @Deprecated 310 public static final String JAVA_COMPILER = "java.compiler"; 311 312 /** 313 * The System property name {@value}. 314 * 315 * @see <a href= 316 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/ContentHandler.html#java.content.handler.pkgs">java.content.handler.pkgs</a> 317 * @since 3.15.0 318 */ 319 public static final String JAVA_CONTENT_HANDLER_PKGS = "java.content.handler.pkgs"; 320 321 /** 322 * The System property name {@value}. 323 * <p> 324 * Not in Java 17 and above according to <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> Javadoc. 325 * </p> 326 * 327 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 328 * @deprecated Deprecated without replacement. 329 */ 330 @Deprecated 331 public static final String JAVA_ENDORSED_DIRS = "java.endorsed.dirs"; 332 333 /** 334 * The System property name {@value}. 335 * <p> 336 * Not in Java 17 and above according to <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> Javadoc. 337 * </p> 338 * 339 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 340 * @deprecated Deprecated without replacement. 341 */ 342 @Deprecated 343 public static final String JAVA_EXT_DIRS = "java.ext.dirs"; 344 345 /** 346 * The System property name {@value}. 347 */ 348 public static final String JAVA_HOME = "java.home"; 349 350 /** 351 * The System property name {@value}. 352 */ 353 public static final String JAVA_IO_TMPDIR = "java.io.tmpdir"; 354 355 /** 356 * The System property name {@value}. 357 */ 358 public static final String JAVA_LIBRARY_PATH = "java.library.path"; 359 360 /** 361 * The System property name {@value}. 362 */ 363 public static final String JAVA_LOCALE_PROVIDERS = "java.locale.providers"; 364 365 /** 366 * The System property name {@value}. 367 * 368 * @see <a href= 369 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/Locale.html#java.locale.useOldISOCodes">java.locale.useOldISOCodes</a> 370 * @since 3.15.0 371 */ 372 public static final String JAVA_LOCALE_USE_OLD_ISO_CODES = "java.locale.useOldISOCodes"; 373 374 /** 375 * The System property name {@value}. 376 * 377 * @see <a href= 378 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#java.net.preferIPv4Stack">java.net.preferIPv4Stack</a> 379 * @since 3.15.0 380 */ 381 public static final String JAVA_NET_PREFER_IPV4_STACK = "java.net.preferIPv4Stack"; 382 383 /** 384 * The System property name {@value}. 385 * 386 * @see <a href= 387 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#java.net.preferIPv6Addresses">java.net.preferIPv6Addresses</a> 388 * @since 3.15.0 389 */ 390 public static final String JAVA_NET_PREFER_IPV6_ADDRESSES = "java.net.preferIPv6Addresses"; 391 392 /** 393 * The System property name {@value}. 394 * 395 * @see <a href= 396 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#java.net.socks.password">java.net.socks.password</a> 397 * @since 3.15.0 398 */ 399 public static final String JAVA_NET_SOCKS_PASSWORD = "java.net.socks.password"; 400 401 /** 402 * The System property name {@value}. 403 * 404 * @see <a href= 405 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#java.net.socks.username">java.net.socks.username</a> 406 * @since 3.15.0 407 */ 408 public static final String JAVA_NET_SOCKS_USER_NAME = "java.net.socks.username"; 409 410 /** 411 * The System property name {@value}. 412 * 413 * @see <a href= 414 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/doc-files/net-properties.html#java.net.useSystemProxies">java.net.useSystemProxies</a> 415 * @since 3.15.0 416 */ 417 public static final String JAVA_NET_USE_SYSTEM_PROXIES = "java.net.useSystemProxies"; 418 419 /** 420 * The System property name {@value}. 421 * 422 * @see <a href= 423 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/nio/channels/AsynchronousChannelGroup.html#java.nio.channels.DefaultThreadPool.initialSize">java.nio.channels.DefaultThreadPool.initialSize</a> 424 * @since 3.15.0 425 */ 426 public static final String JAVA_NIO_CHANNELS_DEFAULT_THREAD_POOL_INITIAL_SIZE = "java.nio.channels.DefaultThreadPool.initialSize"; 427 428 /** 429 * The System property name {@value}. 430 * 431 * @see <a href= 432 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/nio/channels/AsynchronousChannelGroup.html#java.nio.channels.DefaultThreadPool.threadFactory">java.nio.channels.DefaultThreadPool.threadFactory</a> 433 * @since 3.15.0 434 */ 435 public static final String JAVA_NIO_CHANNELS_DEFAULT_THREAD_POOL_THREAD_FACTORY = "java.nio.channels.DefaultThreadPool.threadFactory"; 436 437 /** 438 * The System property name {@value}. 439 * 440 * @see <a href= 441 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/nio/channels/AsynchronousChannelGroup.html#java.nio.channels.DefaultThreadPool.initialSize">java.nio.channels.DefaultThreadPool.initialSize</a> 442 * @since 3.15.0 443 */ 444 public static final String JAVA_NIO_CHANNELS_SPI_ASYNCHRONOUS_CHANNEL_PROVIDER = "java.nio.channels.spi.AsynchronousChannelProvider"; 445 446 /** 447 * The System property name {@value}. 448 * 449 * @see <a href= 450 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/nio/channels/spi/SelectorProvider.html#java.nio.channels.spi.SelectorProvider">java.nio.channels.spi.SelectorProvider</a> 451 * @since 3.15.0 452 */ 453 public static final String JAVA_NIO_CHANNELS_SPI_SELECTOR_PROVIDER = "java.nio.channels.spi.SelectorProvider"; 454 455 /** 456 * The System property name {@value}. 457 * 458 * @see <a href= 459 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/nio/file/spi/FileSystemProvider.html#java.nio.file.spi.DefaultFileSystemProvider">java.nio.file.spi.DefaultFileSystemProvider</a> 460 * @since 3.15.0 461 */ 462 public static final String JAVA_NIO_FILE_SPI_DEFAULT_FILE_SYSTEM_PROVIDER = "java.nio.file.spi.DefaultFileSystemProvider"; 463 464 /** 465 * The System property name {@value}. 466 * 467 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/Properties.html#java.properties.date">java.properties.date</a> 468 * @since 3.15.0 469 */ 470 public static final String JAVA_PROPERTIES_DATE = "java.properties.date"; 471 472 /** 473 * The System property name {@value}. 474 * 475 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/URL.html#java.protocol.handler.pkgs">java.protocol.handler.pkgs</a> 476 * @since 3.15.0 477 */ 478 public static final String JAVA_PROTOCOL_HANDLER_PKGS = "java.protocol.handler.pkgs"; 479 480 /** 481 * The System property name {@value}. 482 * 483 * @see <a href= 484 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.rmi/java/rmi/server/RMIClassLoader.html#java.rmi.server.codebase">java.rmi.server.codebase</a> 485 * @since 3.15.0 486 */ 487 public static final String JAVA_RMI_SERVER_CODEBASE = "java.rmi.server.codebase"; 488 489 /** 490 * The System property name {@value}. 491 * 492 * @see <a href= 493 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.rmi/java/rmi/server/RMISocketFactory.html#java.rmi.server.hostname">java.rmi.server.hostname</a> 494 * @since 3.15.0 495 */ 496 public static final String JAVA_RMI_SERVER_HOST_NAME = "java.rmi.server.hostname"; 497 498 /** 499 * The System property name {@value}. 500 * 501 * @see <a href= 502 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.rmi/java/rmi/server/ObjID.html#java.rmi.server.randomIDs">java.rmi.server.randomIDs</a> 503 * @since 3.15.0 504 */ 505 public static final String JAVA_RMI_SERVER_RANDOM_IDS = "java.rmi.server.randomIDs"; 506 507 /** 508 * The System property name {@value}. 509 * 510 * @see <a href= 511 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.rmi/java/rmi/server/RMIClassLoader.html#java.rmi.server.RMIClassLoaderSpi">java.rmi.server.RMIClassLoaderSpi</a> 512 * @since 3.15.0 513 */ 514 public static final String JAVA_RMI_SERVER_RMI_CLASS_LOADER_SPI = "java.rmi.server.RMIClassLoaderSpi"; 515 516 /** 517 * The System property name {@value}. 518 */ 519 public static final String JAVA_RUNTIME_NAME = "java.runtime.name"; 520 521 /** 522 * The System property name {@value}. 523 */ 524 public static final String JAVA_RUNTIME_VERSION = "java.runtime.version"; 525 526 /** 527 * The System property name {@value}. 528 * 529 * @see <a href= 530 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.security.auth/com/sun/security/auth/login/ConfigFile.html#java.security.auth.login.config">java.security.auth.login.config</a> 531 * @since 3.15.0 532 */ 533 public static final String JAVA_SECURITY_AUTH_LOGIN_CONFIG = "java.security.auth.login.config"; 534 535 /** 536 * The System property name {@value}. 537 * 538 * @see <a href= "https://docs.oracle.com/en/java/javase/24/docs/api/system-properties.html">java.security.krb5.conf</a> 539 * @see <a href= 540 * "https://docs.oracle.com/en/java/javase/24/docs/api/java.security.jgss/javax/security/auth/kerberos/package-summary.html#java.security.krb5.conf">package 541 * javax.security.auth.kerberos conf</a> 542 * @since 3.18.0 543 */ 544 public static final String JAVA_SECURITY_KERBEROS_CONF = "java.security.krb5.conf"; 545 546 /** 547 * The System property name {@value}. 548 * 549 * @see <a href= "https://docs.oracle.com/en/java/javase/24/docs/api/system-properties.html">java.security.krb5.kdc</a> 550 * @see <a href= 551 * "https://docs.oracle.com/en/java/javase/24/docs/api/java.security.jgss/javax/security/auth/kerberos/package-summary.html#java.security.krb5.kdc">package 552 * javax.security.auth.kerberos KDC</a> 553 * @since 3.18.0 554 */ 555 public static final String JAVA_SECURITY_KERBEROS_KDC = "java.security.krb5.kdc"; 556 557 /** 558 * The System property name {@value}. 559 * 560 * @see <a href= "https://docs.oracle.com/en/java/javase/24/docs/api/system-properties.html">java.security.krb5.realm</a> 561 * @see <a href= 562 * "https://docs.oracle.com/en/java/javase/24/docs/api/java.security.jgss/javax/security/auth/kerberos/package-summary.html#java.security.krb5.realm">package 563 * javax.security.auth.kerberos realm</a> 564 * @since 3.18.0 565 */ 566 public static final String JAVA_SECURITY_KERBEROS_REALM = "java.security.krb5.realm"; 567 568 /** 569 * The System property name {@value}. 570 * 571 * @see <a href= 572 * "https://docs.oracle.com/en/java/javase/24/security/troubleshooting-security.html">java.security.debug</a> 573 * @since 3.18.0 574 */ 575 public static final String JAVA_SECURITY_DEBUG = "java.security.debug"; 576 577 /** 578 * The System property name {@value}. 579 * 580 * @see <a href= 581 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/SecurityManager.html#java.security.manager">java.security.manager</a> 582 * @since 3.15.0 583 */ 584 public static final String JAVA_SECURITY_MANAGER = "java.security.manager"; 585 586 /** 587 * The System property name {@value}. 588 * 589 * @see <a href= 590 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/System.html#java.specification.maintenance.version">java.specification.maintenance.version</a> 591 * @since 3.15.0 592 */ 593 public static final String JAVA_SPECIFICATION_MAINTENANCE_VERSION = "java.specification.maintenance.version"; 594 595 /** 596 * The System property name {@value}. 597 */ 598 public static final String JAVA_SPECIFICATION_NAME = "java.specification.name"; 599 600 /** 601 * The System property name {@value}. 602 */ 603 public static final String JAVA_SPECIFICATION_VENDOR = "java.specification.vendor"; 604 605 /** 606 * The System property name {@value}. 607 */ 608 public static final String JAVA_SPECIFICATION_VERSION = "java.specification.version"; 609 610 /** 611 * The System property name {@value}. 612 * 613 * @see <a href= 614 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/ClassLoader.html#java.system.class.loader">java.system.class.loader</a> 615 * @since 3.15.0 616 */ 617 public static final String JAVA_SYSTEM_CLASS_LOADER = "java.system.class.loader"; 618 619 /** 620 * The System property name {@value}. 621 * 622 * @see <a href= 623 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/time/zone/ZoneRulesProvider.html#java.time.zone.DefaultZoneRulesProvider">java.time.zone.DefaultZoneRulesProvider</a> 624 * @since 3.15.0 625 */ 626 public static final String JAVA_TIME_ZONE_DEFAULT_ZONE_RULES_PROVIDER = "java.time.zone.DefaultZoneRulesProvider"; 627 628 /** 629 * The System property name {@value}. 630 * 631 * @see <a href= 632 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/concurrent/ForkJoinPool.html#java.util.concurrent.ForkJoinPool.common.exceptionHandler">java.util.concurrent.ForkJoinPool.common.exceptionHandler</a> 633 * @since 3.15.0 634 */ 635 public static final String JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_EXCEPTION_HANDLER = "java.util.concurrent.ForkJoinPool.common.exceptionHandler"; 636 637 /** 638 * The System property name {@value}. 639 * 640 * @see <a href= 641 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/concurrent/ForkJoinPool.html#java.util.concurrent.ForkJoinPool.common.maximumSpares">java.util.concurrent.ForkJoinPool.common.maximumSpares</a> 642 * @since 3.15.0 643 */ 644 public static final String JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_MAXIMUM_SPARES = "java.util.concurrent.ForkJoinPool.common.maximumSpares"; 645 646 /** 647 * The System property name {@value}. 648 * 649 * @see <a href= 650 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/concurrent/ForkJoinPool.html#java.util.concurrent.ForkJoinPool.common.parallelism">java.util.concurrent.ForkJoinPool.common.parallelism</a> 651 * @since 3.15.0 652 */ 653 public static final String JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_PARALLELISM = "java.util.concurrent.ForkJoinPool.common.parallelism"; 654 655 /** 656 * The System property name {@value}. 657 * 658 * @see <a href= 659 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/concurrent/ForkJoinPool.html#java.util.concurrent.ForkJoinPool.common.threadFactory">java.util.concurrent.ForkJoinPool.common.threadFactory</a> 660 * @since 3.15.0 661 */ 662 public static final String JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_THREAD_FACTORY = "java.util.concurrent.ForkJoinPool.common.threadFactory"; 663 664 /** 665 * The System property name {@value}. 666 * 667 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/Currency.html#java.util.currency.data">java.util.currency.data</a> 668 * @since 3.15.0 669 */ 670 public static final String JAVA_UTIL_CURRENCY_DATA = "java.util.currency.data"; 671 672 /** 673 * The System property name {@value}. 674 * 675 * @see <a href= 676 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.logging/java/util/logging/LogManager.html#java.util.logging.config.class">java.util.logging.config.class</a> 677 * @since 3.15.0 678 */ 679 public static final String JAVA_UTIL_LOGGING_CONFIG_CLASS = "java.util.logging.config.class"; 680 681 /** 682 * The System property name {@value}. 683 * 684 * @see <a href= 685 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.logging/java/util/logging/LogManager.html#java.util.logging.config.file">java.util.logging.config.file</a> 686 * @since 3.15.0 687 */ 688 public static final String JAVA_UTIL_LOGGING_CONFIG_FILE = "java.util.logging.config.file"; 689 690 /** 691 * The System property name {@value}. 692 * 693 * @see <a href= 694 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.logging/java/util/logging/SimpleFormatter.html#java.util.logging.SimpleFormatter.format">java.util.logging.SimpleFormatter.format</a> 695 * @since 3.15.0 696 */ 697 public static final String JAVA_UTIL_LOGGING_SIMPLE_FORMATTER_FORMAT = "java.util.logging.simpleformatter.format"; 698 699 /** 700 * The System property name {@value}. 701 * 702 * @see <a href= 703 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.prefs/java/util/prefs/Preferences.html#java.util.prefs.PreferencesFactory">java.util.prefs.PreferencesFactory</a> 704 */ 705 public static final String JAVA_UTIL_PREFS_PREFERENCES_FACTORY = "java.util.prefs.PreferencesFactory"; 706 707 /** 708 * The System property name {@value}. 709 * 710 * @see <a href= 711 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/PropertyResourceBundle.html#java.util.PropertyResourceBundle.encoding">java.util.PropertyResourceBundle.encoding</a> 712 * @since 3.15.0 713 */ 714 public static final String JAVA_UTIL_PROPERTY_RESOURCE_BUNDLE_ENCODING = "java.util.PropertyResourceBundle.encoding"; 715 716 /** 717 * The System property name {@value}. 718 */ 719 public static final String JAVA_VENDOR = "java.vendor"; 720 721 /** 722 * The System property name {@value}. 723 */ 724 public static final String JAVA_VENDOR_URL = "java.vendor.url"; 725 726 /** 727 * The System property name {@value}. 728 * 729 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/System.html#java.vendor.version">java.vendor.version</a> 730 * @since 3.15.0 731 */ 732 public static final String JAVA_VENDOR_VERSION = "java.vendor.version"; 733 734 /** 735 * The System property name {@value}. 736 */ 737 public static final String JAVA_VERSION = "java.version"; 738 739 /** 740 * The System property name {@value}. 741 * 742 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/System.html#java.version.date">java.version.date</a> 743 * @since 3.15.0 744 */ 745 public static final String JAVA_VERSION_DATE = "java.version.date"; 746 747 /** 748 * The System property name {@value}. 749 */ 750 public static final String JAVA_VM_INFO = "java.vm.info"; 751 752 /** 753 * The System property name {@value}. 754 */ 755 public static final String JAVA_VM_NAME = "java.vm.name"; 756 757 /** 758 * The System property name {@value}. 759 */ 760 public static final String JAVA_VM_SPECIFICATION_NAME = "java.vm.specification.name"; 761 762 /** 763 * The System property name {@value}. 764 */ 765 public static final String JAVA_VM_SPECIFICATION_VENDOR = "java.vm.specification.vendor"; 766 767 /** 768 * The System property name {@value}. 769 */ 770 public static final String JAVA_VM_SPECIFICATION_VERSION = "java.vm.specification.version"; 771 772 /** 773 * The System property name {@value}. 774 */ 775 public static final String JAVA_VM_VENDOR = "java.vm.vendor"; 776 777 /** 778 * The System property name {@value}. 779 */ 780 public static final String JAVA_VM_VERSION = "java.vm.version"; 781 782 /** 783 * The System property name {@value}. 784 * 785 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.xml/module-summary.html#java.xml.config.file">java.xml</a> 786 * @since 3.15.0 787 */ 788 public static final String JAVA_XML_CONFIG_FILE = "java.xml.config.file"; 789 790 /** 791 * The System property name {@value}. 792 * 793 * @see <a href= 794 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/Toolkit.html#javax.accessibility.assistive_technologies">javax.accessibility.assistive_technologies</a> 795 * @since 3.15.0 796 */ 797 public static final String JAVAX_ACCESSIBILITY_ASSISTIVE_TECHNOLOGIES = "javax.accessibility.assistive_technologies"; 798 799 /** 800 * The System property name {@value}. 801 * 802 * @see <a href= 803 * "https://docs.oracle.com/en/java/javase/25/docs/api/java.base/javax/net/ssl/SSLSessionContext.html#javax.net.ssl.sessionCacheSize">javax.net.ssl.sessionCacheSize</a> 804 * @since 3.15.0 805 */ 806 public static final String JAVAX_NET_SSL_SESSION_CACHE_SIZE = "javax.net.ssl.sessionCacheSize"; 807 808 /** 809 * The System property name {@value}. 810 * 811 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.rmi/javax/rmi/ssl/SslRMIClientSocketFactory.html#javax.rmi.ssl.client.enabledCipherSuites">javax.rmi.ssl.client.enabledCipherSuites</a> 812 * @since 3.15.0 813 */ 814 public static final String JAVAX_RMI_SSL_CLIENT_ENABLED_CIPHER_SUITES = "javax.rmi.ssl.client.enabledCipherSuites"; 815 816 /** 817 * The System property name {@value}. 818 * 819 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.rmi/javax/rmi/ssl/SslRMIClientSocketFactory.html#javax.rmi.ssl.client.enabledProtocols">javax.rmi.ssl.client.enabledProtocols</a> 820 * @since 3.15.0 821 */ 822 public static final String JAVAX_RMI_SSL_CLIENT_ENABLED_PROTOCOLS = "javax.rmi.ssl.client.enabledProtocols"; 823 824 /** 825 * The System property name {@value}. 826 * 827 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.security.jgss/org/ietf/jgss/package-summary.html#javax.security.auth.useSubjectCredsOnly">javax.security.auth.useSubjectCredsOnly</a> 828 * @since 3.15.0 829 */ 830 public static final String JAVAX_SECURITY_AUTH_USE_SUBJECT_CREDS_ONLY = "javax.security.auth.useSubjectCredsOnly"; 831 832 /** 833 * The System property name {@value}. 834 * 835 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.smartcardio/javax/smartcardio/TerminalFactory.html#javax.smartcardio.TerminalFactory.DefaultType">javax.smartcardio.TerminalFactory.DefaultType</a> 836 * @since 3.15.0 837 */ 838 public static final String JAVAX_SMART_CARD_IO_TERMINAL_FACTORY_DEFAULT_TYPE = "javax.smartcardio.TerminalFactory.DefaultType"; 839 840 /** 841 * The System property name {@value}. 842 * 843 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/java.sql/java/sql/DriverManager.html#jdbc.drivers">jdbc.drivers</a> 844 * @since 3.15.0 845 */ 846 public static final String JDBC_DRIVERS = "jdbc.drivers"; 847 848 /** 849 * The System property name {@value}. 850 * 851 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.http.auth.proxying.disabledSchemes</a> 852 * @since 3.15.0 853 */ 854 public static final String JDK_HTTP_AUTH_PROXYING_DISABLED_SCHEMES = "jdk.http.auth.proxying.disabledSchemes"; 855 856 /** 857 * The System property name {@value}. 858 * 859 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.http.auth.tunneling.disabledSchemes</a> 860 * @since 3.15.0 861 */ 862 public static final String JDK_HTTP_AUTH_TUNNELING_DISABLED_SCHEMES = "jdk.http.auth.tunneling.disabledSchemes"; 863 864 /** 865 * The System property name {@value}. 866 * 867 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.allowRestrictedHeaders</a> 868 * @since 3.15.0 869 */ 870 public static final String JDK_HTTP_CLIENT_ALLOW_RESTRICTED_HEADERS = "jdk.httpclient.allowRestrictedHeaders"; 871 872 /** 873 * The System property name {@value}. 874 * 875 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.auth.retrylimit</a> 876 * @since 3.15.0 877 */ 878 public static final String JDK_HTTP_CLIENT_AUTH_RETRY_LIMIT = "jdk.httpclient.auth.retrylimit"; 879 880 /** 881 * The System property name {@value}. 882 * 883 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.bufsize</a> 884 * @since 3.15.0 885 */ 886 public static final String JDK_HTTP_CLIENT_BUF_SIZE = "jdk.httpclient.bufsize"; 887 888 /** 889 * The System property name {@value}. 890 * 891 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.connectionPoolSize</a> 892 * @since 3.15.0 893 */ 894 public static final String JDK_HTTP_CLIENT_CONNECTION_POOL_SIZE = "jdk.httpclient.connectionPoolSize"; 895 896 /** 897 * The System property name {@value}. 898 * 899 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.connectionWindowSize</a> 900 * @since 3.15.0 901 */ 902 public static final String JDK_HTTP_CLIENT_CONNECTION_WINDOW_SIZE = "jdk.httpclient.connectionWindowSize"; 903 904 /** 905 * The System property name {@value}. 906 * 907 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.disableRetryConnect</a> 908 * @since 3.15.0 909 */ 910 public static final String JDK_HTTP_CLIENT_DISABLE_RETRY_CONNECT = "jdk.httpclient.disableRetryConnect"; 911 912 /** 913 * The System property name {@value}. 914 * 915 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.enableAllMethodRetry</a> 916 * @since 3.15.0 917 */ 918 public static final String JDK_HTTP_CLIENT_ENABLE_ALL_METHOD_RETRY = "jdk.httpclient.enableAllMethodRetry"; 919 920 /** 921 * The System property name {@value}. 922 * 923 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.enablepush</a> 924 * @since 3.15.0 925 */ 926 public static final String JDK_HTTP_CLIENT_ENABLE_PUSH = "jdk.httpclient.enablepush"; 927 928 /** 929 * The System property name {@value}. 930 * 931 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.hpack.maxheadertablesize</a> 932 * @since 3.15.0 933 */ 934 public static final String JDK_HTTP_CLIENT_HPACK_MAX_HEADER_TABLE_SIZE = "jdk.httpclient.hpack.maxheadertablesize"; 935 936 /** 937 * The System property name {@value}. 938 * 939 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.HttpClient.log</a> 940 * @since 3.15.0 941 */ 942 public static final String JDK_HTTP_CLIENT_HTTP_CLIENT_LOG = "jdk.httpclient.HttpClient.log"; 943 944 /** 945 * The System property name {@value}. 946 * 947 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.keepalive.timeout</a> 948 * @since 3.15.0 949 */ 950 public static final String JDK_HTTP_CLIENT_KEEP_ALIVE_TIMEOUT = "jdk.httpclient.keepalive.timeout"; 951 952 /** 953 * The System property name {@value}. 954 * 955 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.keepalive.timeout.h2</a> 956 * @since 3.15.0 957 */ 958 public static final String JDK_HTTP_CLIENT_KEEP_ALIVE_TIMEOUT_H2 = "jdk.httpclient.keepalive.timeout.h2"; 959 960 /** 961 * The System property name {@value}. 962 * 963 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.maxframesize</a> 964 * @since 3.15.0 965 */ 966 public static final String JDK_HTTP_CLIENT_MAX_FRAME_SIZE = "jdk.httpclient.maxframesize"; 967 968 /** 969 * The System property name {@value}. 970 * 971 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.maxstreams</a> 972 * @since 3.15.0 973 */ 974 public static final String JDK_HTTP_CLIENT_MAX_STREAMS = "jdk.httpclient.maxstreams"; 975 976 /** 977 * The System property name {@value}. 978 * 979 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.receiveBufferSize</a> 980 * @since 3.15.0 981 */ 982 public static final String JDK_HTTP_CLIENT_RECEIVE_BUFFER_SIZE = "jdk.httpclient.receiveBufferSize"; 983 984 /** 985 * The System property name {@value}. 986 * 987 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.redirects.retrylimit</a> 988 * @since 3.15.0 989 */ 990 public static final String JDK_HTTP_CLIENT_REDIRECTS_RETRY_LIMIT = "jdk.httpclient.redirects.retrylimit"; 991 992 /** 993 * The System property name {@value}. 994 * 995 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.sendBufferSize</a> 996 * @since 3.15.0 997 */ 998 public static final String JDK_HTTP_CLIENT_SEND_BUFFER_SIZE = "jdk.httpclient.sendBufferSize"; 999 1000 /** 1001 * The System property name {@value}. 1002 * 1003 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.websocket.writeBufferSize</a> 1004 * @since 3.15.0 1005 */ 1006 public static final String JDK_HTTP_CLIENT_WEB_SOCKET_WRITE_BUFFER_SIZE = "jdk.httpclient.websocket.writeBufferSize"; 1007 1008 /** 1009 * The System property name {@value}. 1010 * 1011 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpclient.windowsize</a> 1012 * @since 3.15.0 1013 */ 1014 public static final String JDK_HTTP_CLIENT_WINDOW_SIZE = "jdk.httpclient.windowsize"; 1015 1016 /** 1017 * The System property name {@value}. 1018 * 1019 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.httpserver.maxConnections</a> 1020 * @since 3.15.0 1021 */ 1022 public static final String JDK_HTTP_SERVER_MAX_CONNECTIONS = "jdk.httpserver.maxConnections"; 1023 1024 /** 1025 * The System property name {@value}. 1026 * 1027 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.https.negotiate.cbt</a> 1028 * @since 3.15.0 1029 */ 1030 public static final String JDK_HTTPS_NEGOTIATE_CBT = "jdk.https.negotiate.cbt"; 1031 1032 /** 1033 * The System property name {@value}. 1034 * 1035 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.includeInExceptions</a> 1036 * @since 3.15.0 1037 */ 1038 public static final String JDK_INCLUDE_IN_EXCEPTIONS = "jdk.includeInExceptions"; 1039 1040 /** 1041 * The System property name {@value}. 1042 * 1043 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.internal.httpclient.disableHostnameVerification</a> 1044 * @since 3.15.0 1045 */ 1046 public static final String JDK_INTERNAL_HTTP_CLIENT_DISABLE_HOST_NAME_VERIFICATION = "jdk.internal.httpclient.disableHostnameVerification"; 1047 1048 /** 1049 * The System property name {@value}. 1050 * 1051 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.io.permissionsUseCanonicalPath</a> 1052 * @since 3.15.0 1053 */ 1054 public static final String JDK_IO_PERMISSIONS_USE_CANONICAL_PATH = "jdk.io.permissionsUseCanonicalPath"; 1055 1056 /** 1057 * The System property name {@value}. 1058 * 1059 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.jndi.ldap.object.factoriesFilter</a> 1060 * @since 3.15.0 1061 */ 1062 public static final String JDK_JNDI_LDAP_OBJECT_FACTORIES_FILTER = "jdk.jndi.ldap.object.factoriesFilter"; 1063 1064 /** 1065 * The System property name {@value}. 1066 * 1067 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.jndi.object.factoriesFilter</a> 1068 * @since 3.15.0 1069 */ 1070 public static final String JDK_JNDI_OBJECT_FACTORIES_FILTER = "jdk.jndi.object.factoriesFilter"; 1071 1072 /** 1073 * The System property name {@value}. 1074 * 1075 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.jndi.rmi.object.factoriesFilter</a> 1076 * @since 3.15.0 1077 */ 1078 public static final String JDK_JNDI_RMI_OBJECT_FACTORIES_FILTER = "jdk.jndi.rmi.object.factoriesFilter"; 1079 1080 /** 1081 * The System property name {@value}. 1082 * 1083 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.module.main</a> 1084 * @since 3.15.0 1085 */ 1086 public static final String JDK_MODULE_MAIN = "jdk.module.main"; 1087 1088 /** 1089 * The System property name {@value}. 1090 * 1091 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.module.main.class</a> 1092 * @since 3.15.0 1093 */ 1094 public static final String JDK_MODULE_MAIN_CLASS = "jdk.module.main.class"; 1095 1096 /** 1097 * The System property name {@value}. 1098 * 1099 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.module.path</a> 1100 * @since 3.15.0 1101 */ 1102 public static final String JDK_MODULE_PATH = "jdk.module.path"; 1103 1104 /** 1105 * The System property name {@value}. 1106 * 1107 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.module.upgrade.path</a> 1108 * @since 3.15.0 1109 */ 1110 public static final String JDK_MODULE_UPGRADE_PATH = "jdk.module.upgrade.path"; 1111 1112 /** 1113 * The System property name {@value}. 1114 * 1115 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.net.unixdomain.tmpdir</a> 1116 * @since 3.15.0 1117 */ 1118 public static final String JDK_NET_UNIX_DOMAIN_TMPDIR = "jdk.net.unixdomain.tmpdir"; 1119 1120 /** 1121 * The System property name {@value}. 1122 * 1123 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1124 * @since 3.15.0 1125 */ 1126 public static final String JDK_NET_URL_CLASS_PATH_SHOW_IGNORED_CLASS_PATH_ENTRIES = "jdk.net.URLClassPath.showIgnoredClassPathEntries"; 1127 1128 /** 1129 * The System property name {@value}. 1130 * 1131 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.serialFilter</a> 1132 * @since 3.15.0 1133 */ 1134 public static final String JDK_SERIAL_FILTER = "jdk.serialFilter"; 1135 1136 /** 1137 * The System property name {@value}. 1138 * 1139 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.serialFilterFactory</a> 1140 * @since 3.15.0 1141 */ 1142 public static final String JDK_SERIAL_FILTER_FACTORY = "jdk.serialFilterFactory"; 1143 1144 /** 1145 * The System property name {@value}. 1146 * 1147 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.tls.client.SignatureSchemes</a> 1148 * @since 3.15.0 1149 */ 1150 public static final String JDK_TLS_CLIENT_SIGNATURE_SCHEMES = "jdk.tls.client.SignatureSchemes"; 1151 1152 /** 1153 * The System property name {@value}. 1154 * 1155 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.tls.namedGroups</a> 1156 * @since 3.15.0 1157 */ 1158 public static final String JDK_TLS_NAMED_GROUPS = "jdk.tls.namedGroups"; 1159 1160 /** 1161 * The System property name {@value}. 1162 * 1163 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.tls.server.SignatureSchemes</a> 1164 * @since 3.15.0 1165 */ 1166 public static final String JDK_TLS_SERVER_SIGNATURE_SCHEMES = "jdk.tls.server.SignatureSchemes"; 1167 1168 /** 1169 * The System property name {@value}. 1170 * 1171 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.virtualThreadScheduler.maxPoolSize</a> 1172 * @since 3.15.0 1173 */ 1174 public static final String JDK_VIRTUAL_THREAD_SCHEDULER_MAXPOOLSIZE = "jdk.virtualThreadScheduler.maxPoolSize"; 1175 1176 /** 1177 * The System property name {@value}. 1178 * 1179 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.virtualThreadScheduler.parallelism</a> 1180 * @since 3.15.0 1181 */ 1182 public static final String JDK_VIRTUAL_THREAD_SCHEDULER_PARALLELISM = "jdk.virtualThreadScheduler.parallelism"; 1183 1184 /** 1185 * The System property name {@value}. 1186 * 1187 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.cdataChunkSize</a> 1188 * @since 3.15.0 1189 */ 1190 public static final String JDK_XML_CDATA_CHUNK_SIZE = "jdk.xml.cdataChunkSize"; 1191 1192 /** 1193 * The System property name {@value}. 1194 * 1195 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.dtd.support</a> 1196 * @since 3.15.0 1197 */ 1198 public static final String JDK_XML_DTD_SUPPORT = "jdk.xml.dtd.support"; 1199 1200 /** 1201 * The System property name {@value}. 1202 * 1203 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.elementAttributeLimit</a> 1204 * @since 3.15.0 1205 */ 1206 public static final String JDK_XML_ELEMENT_ATTRIBUTE_LIMIT = "jdk.xml.elementAttributeLimit"; 1207 1208 /** 1209 * The System property name {@value}. 1210 * 1211 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.enableExtensionFunctions</a> 1212 * @since 3.15.0 1213 */ 1214 public static final String JDK_XML_ENABLE_EXTENSION_FUNCTIONS = "jdk.xml.enableExtensionFunctions"; 1215 1216 /** 1217 * The System property name {@value}. 1218 * 1219 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.entityExpansionLimit</a> 1220 * @since 3.15.0 1221 */ 1222 public static final String JDK_XML_ENTITY_EXPANSION_LIMIT = "jdk.xml.entityExpansionLimit"; 1223 1224 /** 1225 * The System property name {@value}. 1226 * 1227 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.entityReplacementLimi_t</a> 1228 * @since 3.15.0 1229 */ 1230 public static final String JDK_XML_ENTITY_REPLACEMENT_LIMIT = "jdk.xml.entityReplacementLimi_t"; 1231 1232 /** 1233 * The System property name {@value}. 1234 * 1235 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.isStandalone</a> 1236 * @since 3.15.0 1237 */ 1238 public static final String JDK_XML_IS_STANDALONE = "jdk.xml.isStandalone"; 1239 1240 /** 1241 * The System property name {@value}. 1242 * 1243 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.jdkcatalog.resolve</a> 1244 * @since 3.15.0 1245 */ 1246 public static final String JDK_XML_JDK_CATALOG_RESOLVE = "jdk.xml.jdkcatalog.resolve"; 1247 1248 /** 1249 * The System property name {@value}. 1250 * 1251 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.maxElementDepth</a> 1252 * @since 3.15.0 1253 */ 1254 public static final String JDK_XML_MAX_ELEMENT_DEPTH = "jdk.xml.maxElementDepth"; 1255 1256 /** 1257 * The System property name {@value}. 1258 * 1259 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.maxGeneralEntitySizeLimit</a> 1260 * @since 3.15.0 1261 */ 1262 public static final String JDK_XML_MAX_GENERAL_ENTITY_SIZE_LIMIT = "jdk.xml.maxGeneralEntitySizeLimit"; 1263 1264 /** 1265 * The System property name {@value}. 1266 * 1267 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.maxOccurLimit</a> 1268 * @since 3.15.0 1269 */ 1270 public static final String JDK_XML_MAX_OCCUR_LIMIT = "jdk.xml.maxOccurLimit"; 1271 1272 /** 1273 * The System property name {@value}. 1274 * 1275 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.maxParameterEntitySizeLimit</a> 1276 * @since 3.15.0 1277 */ 1278 public static final String JDK_XML_MAX_PARAMETER_ENTITY_SIZE_LIMIT = "jdk.xml.maxParameterEntitySizeLimit"; 1279 1280 /** 1281 * The System property name {@value}. 1282 * 1283 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.maxXMLNameLimit</a> 1284 * @since 3.15.0 1285 */ 1286 public static final String JDK_XML_MAX_XML_NAME_LIMIT = "jdk.xml.maxXMLNameLimit"; 1287 1288 /** 1289 * The System property name {@value}. 1290 * 1291 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.overrideDefaultParser</a> 1292 * @since 3.15.0 1293 */ 1294 public static final String JDK_XML_OVERRIDE_DEFAULT_PARSER = "jdk.xml.overrideDefaultParser"; 1295 1296 /** 1297 * The System property name {@value}. 1298 * 1299 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.resetSymbolTable</a> 1300 * @since 3.15.0 1301 */ 1302 public static final String JDK_XML_RESET_SYMBOL_TABLE = "jdk.xml.resetSymbolTable"; 1303 1304 /** 1305 * The System property name {@value}. 1306 * 1307 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.totalEntitySizeLimit</a> 1308 * @since 3.15.0 1309 */ 1310 public static final String JDK_XML_TOTAL_ENTITY_SIZE_LIMIT = "jdk.xml.totalEntitySizeLimit"; 1311 1312 /** 1313 * The System property name {@value}. 1314 * 1315 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">jdk.xml.xsltcIsStandalone</a> 1316 * @since 3.15.0 1317 */ 1318 public static final String JDK_XML_XSLTC_IS_STANDALONE = "jdk.xml.xsltcIsStandalone"; 1319 1320 /** 1321 * The System property name {@value}. 1322 */ 1323 public static final String LINE_SEPARATOR = "line.separator"; 1324 1325 /** 1326 * The System property name {@value}. 1327 * 1328 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">native.encoding</a> 1329 * @since 3.15.0 1330 */ 1331 public static final String NATIVE_ENCODING = "native.encoding"; 1332 1333 /** 1334 * The System property name {@value}. 1335 * 1336 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">networkaddress.cache.negative.ttl</a> 1337 * @since 3.15.0 1338 */ 1339 public static final String NETWORK_ADDRESS_CACHE_NEGATIVE_TTL = "networkaddress.cache.negative.ttl"; 1340 1341 /** 1342 * The System property name {@value}. 1343 * 1344 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">networkaddress.cache.stale.ttl</a> 1345 * @since 3.15.0 1346 */ 1347 public static final String NETWORK_ADDRESS_CACHE_STALE_TTL = "networkaddress.cache.stale.ttl"; 1348 1349 /** 1350 * The System property name {@value}. 1351 * 1352 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">networkaddress.cache.ttl</a> 1353 * @since 3.15.0 1354 */ 1355 public static final String NETWORK_ADDRESS_CACHE_TTL = "networkaddress.cache.ttl"; 1356 1357 /** 1358 * The System property name {@value}. 1359 * 1360 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">org.jcp.xml.dsig.securevalidation</a> 1361 * @since 3.15.0 1362 */ 1363 public static final String ORG_JCP_XML_DSIG_SECURE_VALIDATION = "org.jcp.xml.dsig.securevalidation"; 1364 1365 /** 1366 * The System property name {@value}. 1367 * 1368 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">org.openjdk.java.util.stream.tripwire</a> 1369 * @since 3.15.0 1370 */ 1371 public static final String ORG_OPENJDK_JAVA_UTIL_STREAM_TRIPWIRE = "org.openjdk.java.util.stream.tripwire"; 1372 1373 /** 1374 * The System property name {@value}. 1375 */ 1376 public static final String OS_ARCH = "os.arch"; 1377 1378 /** 1379 * The System property name {@value}. 1380 */ 1381 public static final String OS_NAME = "os.name"; 1382 1383 /** 1384 * The System property name {@value}. 1385 */ 1386 public static final String OS_VERSION = "os.version"; 1387 1388 /** 1389 * The System property name {@value}. 1390 */ 1391 public static final String PATH_SEPARATOR = "path.separator"; 1392 1393 /** 1394 * The System property name {@value}. 1395 * 1396 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1397 * @since 3.15.0 1398 */ 1399 public static final String SOCKS_PROXY_HOST = "socksProxyHost"; 1400 1401 /** 1402 * The System property name {@value}. 1403 * 1404 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1405 * @since 3.15.0 1406 */ 1407 public static final String SOCKS_PROXY_PORT = "socksProxyPort"; 1408 1409 /** 1410 * The System property name {@value}. 1411 * 1412 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1413 * @since 3.15.0 1414 */ 1415 public static final String SOCKS_PROXY_VERSION = "socksProxyVersion"; 1416 1417 /** 1418 * The System property name {@value}. 1419 * 1420 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1421 * @since 3.15.0 1422 */ 1423 public static final String STDERR_ENCODING = "stderr.encoding"; 1424 1425 /** 1426 * The System property name {@value}. 1427 * 1428 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1429 * @since 3.15.0 1430 */ 1431 public static final String STDOUT_ENCODING = "stdout.encoding"; 1432 1433 /** 1434 * The System property name {@value}. 1435 * 1436 * @see <a href= 1437 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/module-summary.html#sun.net.httpserver.drainAmount">sun.net.httpserver.drainAmount</a> 1438 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1439 * @since 3.15.0 1440 */ 1441 public static final String SUN_NET_HTTP_SERVER_DRAIN_AMOUNT = "sun.net.httpserver.drainAmount"; 1442 1443 /** 1444 * The System property name {@value}. 1445 * 1446 * @see <a href= 1447 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/module-summary.html#sun.net.httpserver.idleInterval">sun.net.httpserver.idleInterval</a> 1448 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1449 * @since 3.15.0 1450 */ 1451 public static final String SUN_NET_HTTP_SERVER_IDLE_INTERVAL = "sun.net.httpserver.idleInterval"; 1452 1453 /** 1454 * The System property name {@value}. 1455 * 1456 * @see <a href= 1457 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/module-summary.html#sun.net.httpserver.maxIdleConnections">sun.net.httpserver.maxIdleConnections</a> 1458 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1459 * @since 3.15.0 1460 */ 1461 public static final String SUN_NET_HTTP_SERVER_MAX_IDLE_CONNECTIONS = "sun.net.httpserver.maxIdleConnections"; 1462 1463 /** 1464 * The System property name {@value}. 1465 * 1466 * @see <a href= 1467 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/module-summary.html#sun.net.httpserver.maxReqHeaders">sun.net.httpserver.maxReqHeaders</a> 1468 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1469 * @since 3.15.0 1470 */ 1471 public static final String SUN_NET_HTTP_SERVER_MAX_REQ_HEADERS = "sun.net.httpserver.maxReqHeaders"; 1472 1473 /** 1474 * The System property name {@value}. 1475 * 1476 * @see <a href= 1477 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/module-summary.html#sun.net.httpserver.maxReqTime">sun.net.httpserver.maxReqTime</a> 1478 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1479 * @since 3.15.0 1480 */ 1481 public static final String SUN_NET_HTTP_SERVER_MAX_REQ_TIME = "sun.net.httpserver.maxReqTime"; 1482 1483 /** 1484 * The System property name {@value}. 1485 * 1486 * @see <a href= 1487 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/module-summary.html#sun.net.httpserver.maxRspTime">sun.net.httpserver.maxRspTime</a> 1488 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1489 * @since 3.15.0 1490 */ 1491 public static final String SUN_NET_HTTP_SERVER_MAX_RSP_TIME = "sun.net.httpserver.maxRspTime"; 1492 1493 /** 1494 * The System property name {@value}. 1495 * 1496 * @see <a href= 1497 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/module-summary.html#sun.net.httpserver.nodelay">sun.net.httpserver.nodelay</a> 1498 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1499 * @since 3.15.0 1500 */ 1501 public static final String SUN_NET_HTTP_SERVER_NO_DELAY = "sun.net.httpserver.nodelay"; 1502 1503 /** 1504 * The System property name {@value}. 1505 * 1506 * @see <a href= 1507 * "https://docs.oracle.com/en/java/javase/25/docs/api/jdk.httpserver/module-summary.html#sun.security.krb5.principal">sun.security.krb5.principal</a> 1508 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1509 * @since 3.15.0 1510 */ 1511 public static final String SUN_SECURITY_KRB5_PRINCIPAL = "sun.security.krb5.principal"; 1512 1513 /** 1514 * The System property name {@value}. 1515 */ 1516 public static final String USER_COUNTRY = "user.country"; 1517 1518 /** 1519 * The System property name {@value}. 1520 */ 1521 public static final String USER_DIR = "user.dir"; 1522 1523 /** 1524 * The System property name {@value}. 1525 * 1526 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1527 * @since 3.15.0 1528 */ 1529 public static final String USER_EXTENSIONS = "user.extensions"; 1530 1531 /** 1532 * The System property name {@value}. 1533 */ 1534 public static final String USER_HOME = "user.home"; 1535 1536 /** 1537 * The System property name {@value}. 1538 */ 1539 public static final String USER_LANGUAGE = "user.language"; 1540 1541 /** 1542 * The System property name {@value}. 1543 */ 1544 public static final String USER_NAME = "user.name"; 1545 1546 /** 1547 * The System property name {@value}. 1548 */ 1549 public static final String USER_REGION = "user.region"; 1550 1551 /** 1552 * The System property name {@value}. 1553 * 1554 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1555 * @since 3.15.0 1556 */ 1557 public static final String USER_SCRIPT = "user.script"; 1558 1559 /** 1560 * The System property name {@value}. 1561 */ 1562 public static final String USER_TIMEZONE = "user.timezone"; 1563 1564 /** 1565 * The System property name {@value}. 1566 * 1567 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1568 * @since 3.15.0 1569 */ 1570 public static final String USER_VARIANT = "user.variant"; 1571 1572 /** 1573 * Gets the current value from the system properties map. 1574 * <p> 1575 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1576 * </p> 1577 * 1578 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1579 * @since 3.15.0 1580 */ 1581 public static String getAppleAwtEnableTemplateImages() { 1582 return getProperty(APPLE_AWT_ENABLE_TEMPLATE_IMAGES); 1583 } 1584 1585 /** 1586 * Gets the current value from the system properties map. 1587 * <p> 1588 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1589 * </p> 1590 * 1591 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1592 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1593 * @see #AWT_TOOLKIT 1594 * @deprecated Deprecated without replacement. 1595 */ 1596 @Deprecated 1597 public static String getAwtToolkit() { 1598 return getProperty(AWT_TOOLKIT); 1599 } 1600 1601 /** 1602 * Gets the current value for the property named {@code "SimpleClassName.Key"} as a {@code boolean}. 1603 * <p> 1604 * If a {@link SecurityException} is caught, the return value is {@code null}. 1605 * </p> 1606 * 1607 * @param clazz The Class to use for the SimpleClassName. 1608 * @param key The subkey. 1609 * @param defaultIfAbsent The default value. 1610 * @return an int or {@code defaultIfAbsent}'s value. 1611 * @see Class#getSimpleName() 1612 * @since 3.19.0 1613 */ 1614 public static boolean getBoolean(final Class<?> clazz, final String key, final BooleanSupplier defaultIfAbsent) { 1615 return getBoolean(toKey(clazz, key, true), defaultIfAbsent); 1616 } 1617 1618 /** 1619 * Gets the current value for the property named {@code key} as a {@code boolean}. 1620 * <p> 1621 * If a {@link SecurityException} is caught, the return value is {@code null}. 1622 * </p> 1623 * 1624 * @param key The key. 1625 * @param defaultIfAbsent The default value. 1626 * @return a {@code boolean} or {@code defaultIfAbsent}'s value. 1627 */ 1628 public static boolean getBoolean(final String key, final BooleanSupplier defaultIfAbsent) { 1629 final String str = getProperty(key); 1630 return str == null ? defaultIfAbsent != null && defaultIfAbsent.getAsBoolean() : Boolean.parseBoolean(str); 1631 } 1632 1633 /** 1634 * Gets the current value from the system properties map. 1635 * <p> 1636 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1637 * </p> 1638 * 1639 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1640 * @since 3.15.0 1641 */ 1642 public static String getComSunJndiLdapObjectTrustSerialData() { 1643 return getProperty(COM_SUN_JNDI_LDAP_OBJECT_TRUST_SERIAL_DATA); 1644 } 1645 1646 /** 1647 * Gets the current value from the system properties map. 1648 * <p> 1649 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1650 * </p> 1651 * 1652 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1653 * @since 3.15.0 1654 */ 1655 public static String getComSunNetHttpServerHttpServerProvider() { 1656 return getProperty(COM_SUN_NET_HTTP_SERVER_HTTP_SERVER_PROVIDER); 1657 } 1658 1659 /** 1660 * Gets the current value from the system properties map. 1661 * <p> 1662 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1663 * </p> 1664 * <p> 1665 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1666 * </p> 1667 * 1668 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1669 */ 1670 public static String getFileEncoding() { 1671 return getProperty(FILE_ENCODING); 1672 } 1673 1674 /** 1675 * Gets the current value from the system properties map. 1676 * <p> 1677 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1678 * </p> 1679 * 1680 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1681 */ 1682 public static String getFileSeparator() { 1683 return getProperty(FILE_SEPARATOR); 1684 } 1685 1686 /** 1687 * Gets the current value from the system properties map. 1688 * <p> 1689 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1690 * </p> 1691 * 1692 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1693 * @since 3.15.0 1694 */ 1695 public static String getFtpNonProxyHost() { 1696 return getProperty(FTP_NON_PROXY_HOST); 1697 } 1698 1699 /** 1700 * Gets the current value from the system properties map. 1701 * <p> 1702 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1703 * </p> 1704 * 1705 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1706 * @since 3.15.0 1707 */ 1708 public static String getFtpProxyHost() { 1709 return getProperty(FTP_PROXY_HOST); 1710 } 1711 1712 /** 1713 * Gets the current value from the system properties map. 1714 * <p> 1715 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1716 * </p> 1717 * 1718 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1719 * @since 3.15.0 1720 */ 1721 public static String getFtpProxyPort() { 1722 return getProperty(FTP_PROXY_PORT); 1723 } 1724 1725 /** 1726 * Gets the current value from the system properties map. 1727 * <p> 1728 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1729 * </p> 1730 * 1731 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1732 * @since 3.15.0 1733 */ 1734 public static String getHttpAgent() { 1735 return getProperty(HTTP_AGENT); 1736 } 1737 1738 /** 1739 * Gets the current value from the system properties map. 1740 * <p> 1741 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1742 * </p> 1743 * 1744 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1745 * @since 3.15.0 1746 */ 1747 public static String getHttpAuthDigestCnonceRepeat() { 1748 return getProperty(HTTP_AUTH_DIGEST_CNONCE_REPEAT); 1749 } 1750 1751 /** 1752 * Gets the current value from the system properties map. 1753 * <p> 1754 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1755 * </p> 1756 * 1757 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1758 * @since 3.15.0 1759 */ 1760 public static String getHttpAuthDigestReenabledAlgorithms() { 1761 return getProperty(HTTP_AUTH_DIGEST_RE_ENABLED_ALGORITHMS); 1762 } 1763 1764 /** 1765 * Gets the current value from the system properties map. 1766 * <p> 1767 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1768 * </p> 1769 * 1770 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1771 * @since 3.15.0 1772 */ 1773 public static String getHttpAuthDigestValidateProxy() { 1774 return getProperty(HTTP_AUTH_DIGEST_VALIDATE_PROXY); 1775 } 1776 1777 /** 1778 * Gets the current value from the system properties map. 1779 * <p> 1780 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1781 * </p> 1782 * 1783 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1784 * @since 3.15.0 1785 */ 1786 public static String getHttpAuthDigestValidateServer() { 1787 return getProperty(HTTP_AUTH_DIGEST_VALIDATE_SERVER); 1788 } 1789 1790 /** 1791 * Gets the current value from the system properties map. 1792 * <p> 1793 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1794 * </p> 1795 * 1796 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1797 * @since 3.15.0 1798 */ 1799 public static String getHttpAuthNtlmDomain() { 1800 return getProperty(HTTP_AUTH_NTLM_DOMAIN); 1801 } 1802 1803 /** 1804 * Gets the current value from the system properties map. 1805 * <p> 1806 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1807 * </p> 1808 * 1809 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1810 * @since 3.15.0 1811 */ 1812 public static String getHttpKeepAlive() { 1813 return getProperty(HTTP_KEEP_ALIVE); 1814 } 1815 1816 /** 1817 * Gets the current value from the system properties map. 1818 * <p> 1819 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1820 * </p> 1821 * 1822 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1823 * @since 3.15.0 1824 */ 1825 public static String getHttpKeepAliveTimeProxy() { 1826 return getProperty(HTTP_KEEP_ALIVE_TIME_PROXY); 1827 } 1828 1829 /** 1830 * Gets the current value from the system properties map. 1831 * <p> 1832 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1833 * </p> 1834 * 1835 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1836 * @since 3.15.0 1837 */ 1838 public static String getHttpKeepAliveTimeServer() { 1839 return getProperty(HTTP_KEEP_ALIVE_TIME_SERVER); 1840 } 1841 1842 /** 1843 * Gets the current value from the system properties map. 1844 * <p> 1845 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1846 * </p> 1847 * 1848 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1849 * @since 3.15.0 1850 */ 1851 public static String getHttpMaxConnections() { 1852 return getProperty(HTTP_MAX_CONNECTIONS); 1853 } 1854 1855 /** 1856 * Gets the current value from the system properties map. 1857 * <p> 1858 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1859 * </p> 1860 * 1861 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1862 * @since 3.15.0 1863 */ 1864 public static String getHttpMaxRedirects() { 1865 return getProperty(HTTP_MAX_REDIRECTS); 1866 } 1867 1868 /** 1869 * Gets the current value from the system properties map. 1870 * <p> 1871 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1872 * </p> 1873 * 1874 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1875 * @since 3.15.0 1876 */ 1877 public static String getHttpNonProxyHosts() { 1878 return getProperty(HTTP_NON_PROXY_HOSTS); 1879 } 1880 1881 /** 1882 * Gets the current value from the system properties map. 1883 * <p> 1884 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1885 * </p> 1886 * 1887 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1888 * @since 3.15.0 1889 */ 1890 public static String getHttpProxyHost() { 1891 return getProperty(HTTP_PROXY_HOST); 1892 } 1893 1894 /** 1895 * Gets the current value from the system properties map. 1896 * <p> 1897 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1898 * </p> 1899 * 1900 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1901 * @since 3.15.0 1902 */ 1903 public static String getHttpProxyPort() { 1904 return getProperty(HTTP_PROXY_PORT); 1905 } 1906 1907 /** 1908 * Gets the current value from the system properties map. 1909 * <p> 1910 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1911 * </p> 1912 * 1913 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1914 * @since 3.15.0 1915 */ 1916 public static String getHttpsProxyHost() { 1917 return getProperty(HTTPS_PROXY_HOST); 1918 } 1919 1920 /** 1921 * Gets the current value from the system properties map. 1922 * <p> 1923 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1924 * </p> 1925 * 1926 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1927 * @since 3.15.0 1928 */ 1929 public static String getHttpsProxyPort() { 1930 return getProperty(HTTPS_PROXY_PORT); 1931 } 1932 1933 /** 1934 * Gets the current value for the property named {@code "SimpleClassName.Key"} as an {@code int}. 1935 * <p> 1936 * If a {@link SecurityException} is caught, the return value is {@code null}. 1937 * </p> 1938 * 1939 * @param clazz The Class to use for the SimpleClassName. 1940 * @param key The subkey. 1941 * @param defaultIfAbsent The default value. 1942 * @return an int or {@code defaultIfAbsent}'s value. 1943 * @see Class#getSimpleName() 1944 * @since 3.19.0 1945 */ 1946 public static int getInt(final Class<?> clazz, final String key, final IntSupplier defaultIfAbsent) { 1947 return getInt(toKey(clazz, key, true), defaultIfAbsent); 1948 } 1949 1950 /** 1951 * Gets the current value for the property named {@code key} as an {@code int}. 1952 * <p> 1953 * If a {@link SecurityException} is caught, the return value is {@code null}. 1954 * </p> 1955 * 1956 * @param key The key. 1957 * @param defaultIfAbsent The default value. 1958 * @return an {@code int} or {@code defaultIfAbsent}'s value. 1959 */ 1960 public static int getInt(final String key, final IntSupplier defaultIfAbsent) { 1961 final String str = getProperty(key); 1962 return str == null ? defaultIfAbsent != null ? defaultIfAbsent.getAsInt() : 0 : Integer.parseInt(str); 1963 } 1964 1965 /** 1966 * Gets the current value from the system properties map. 1967 * <p> 1968 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1969 * </p> 1970 * 1971 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1972 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1973 * @see #JAVA_AWT_FONTS 1974 * @deprecated Deprecated without replacement. 1975 */ 1976 @Deprecated 1977 public static String getJavaAwtFonts() { 1978 return getProperty(JAVA_AWT_FONTS); 1979 } 1980 1981 /** 1982 * Gets the current value from the system properties map. 1983 * <p> 1984 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 1985 * </p> 1986 * 1987 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 1988 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 1989 * @deprecated Deprecated without replacement. 1990 */ 1991 @Deprecated 1992 public static String getJavaAwtGraphicsenv() { 1993 return getProperty(JAVA_AWT_GRAPHICSENV); 1994 } 1995 1996 /** 1997 * Gets the current value from the system properties map. 1998 * <p> 1999 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2000 * </p> 2001 * 2002 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2003 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 2004 * @see #JAVA_AWT_HEADLESS 2005 * @deprecated Deprecated without replacement. 2006 */ 2007 @Deprecated 2008 public static String getJavaAwtHeadless() { 2009 return getProperty(JAVA_AWT_HEADLESS); 2010 } 2011 2012 /** 2013 * Gets the current value from the system properties map. 2014 * <p> 2015 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2016 * </p> 2017 * 2018 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2019 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 2020 * @see #JAVA_AWT_PRINTERJOB 2021 * @deprecated Deprecated without replacement. 2022 */ 2023 @Deprecated 2024 public static String getJavaAwtPrinterjob() { 2025 return getProperty(JAVA_AWT_PRINTERJOB); 2026 } 2027 2028 /** 2029 * Gets the current value from the system properties map. 2030 * <p> 2031 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2032 * </p> 2033 * 2034 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2035 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">java.class.path</a> 2036 * @see #JAVA_CLASS_PATH 2037 */ 2038 public static String getJavaClassPath() { 2039 return getProperty(JAVA_CLASS_PATH); 2040 } 2041 2042 /** 2043 * Gets the current value from the system properties map. 2044 * <p> 2045 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2046 * </p> 2047 * 2048 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2049 */ 2050 public static String getJavaClassVersion() { 2051 return getProperty(JAVA_CLASS_VERSION); 2052 } 2053 2054 /** 2055 * Gets the current value from the system properties map. 2056 * <p> 2057 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2058 * </p> 2059 * 2060 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2061 * @see <a href="https://bugs.openjdk.org/browse/JDK-8305998">JDK-8305998</a> 2062 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 2063 * @deprecated Deprecated without replacement. 2064 */ 2065 @Deprecated 2066 public static String getJavaCompiler() { 2067 return getProperty(JAVA_COMPILER); 2068 } 2069 2070 /** 2071 * Gets the current value from the system properties map. 2072 * <p> 2073 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2074 * </p> 2075 * 2076 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2077 * @since 3.15.0 2078 */ 2079 public static String getJavaContentHandlerPkgs() { 2080 return getProperty(JAVA_CONTENT_HANDLER_PKGS); 2081 } 2082 2083 /** 2084 * Gets the current value from the system properties map. 2085 * <p> 2086 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2087 * </p> 2088 * 2089 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2090 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 2091 * @deprecated Deprecated without replacement. 2092 */ 2093 @Deprecated 2094 public static String getJavaEndorsedDirs() { 2095 return getProperty(JAVA_ENDORSED_DIRS); 2096 } 2097 2098 /** 2099 * Gets the current value from the system properties map. 2100 * <p> 2101 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2102 * </p> 2103 * 2104 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2105 * @see <a href="https://docs.oracle.com/en/java/javase/25/docs/api/system-properties.html">System Properties</a> 2106 * @see #JAVA_EXT_DIRS 2107 * @deprecated Deprecated without replacement. 2108 */ 2109 @Deprecated 2110 public static String getJavaExtDirs() { 2111 return getProperty(JAVA_EXT_DIRS); 2112 } 2113 2114 /** 2115 * Gets the current value from the system properties map. 2116 * <p> 2117 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2118 * </p> 2119 * 2120 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2121 */ 2122 public static String getJavaHome() { 2123 return getProperty(JAVA_HOME); 2124 } 2125 2126 /** 2127 * Gets the current value from the system properties map. 2128 * <p> 2129 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2130 * </p> 2131 * 2132 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2133 */ 2134 public static String getJavaIoTmpdir() { 2135 return getProperty(JAVA_IO_TMPDIR); 2136 } 2137 2138 /** 2139 * Gets the current value from the system properties map. 2140 * <p> 2141 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2142 * </p> 2143 * 2144 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2145 */ 2146 public static String getJavaLibraryPath() { 2147 return getProperty(JAVA_LIBRARY_PATH); 2148 } 2149 2150 /** 2151 * Gets the current value from the system properties map. 2152 * <p> 2153 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2154 * </p> 2155 * <p> 2156 * Java 9 and above. 2157 * </p> 2158 * 2159 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2160 */ 2161 public static String getJavaLocaleProviders() { 2162 return getProperty(JAVA_LOCALE_PROVIDERS); 2163 } 2164 2165 /** 2166 * Gets the current value from the system properties map. 2167 * <p> 2168 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2169 * </p> 2170 * 2171 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2172 * @since 3.15.0 2173 */ 2174 public static String getJavaLocaleUseOldIsoCodes() { 2175 return getProperty(JAVA_LOCALE_USE_OLD_ISO_CODES); 2176 } 2177 2178 /** 2179 * Gets the current value from the system properties map. 2180 * <p> 2181 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2182 * </p> 2183 * 2184 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2185 * @since 3.15.0 2186 */ 2187 public static String getJavaNetPreferIpv4Stack() { 2188 return getProperty(JAVA_NET_PREFER_IPV4_STACK); 2189 } 2190 2191 /** 2192 * Gets the current value from the system properties map. 2193 * <p> 2194 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2195 * </p> 2196 * 2197 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2198 * @since 3.15.0 2199 */ 2200 public static String getJavaNetPreferIpv6Addresses() { 2201 return getProperty(JAVA_NET_PREFER_IPV6_ADDRESSES); 2202 } 2203 2204 /** 2205 * Gets the current value from the system properties map. 2206 * <p> 2207 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2208 * </p> 2209 * 2210 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2211 * @since 3.15.0 2212 */ 2213 public static String getJavaNetSocksPassword() { 2214 return getProperty(JAVA_NET_SOCKS_PASSWORD); 2215 } 2216 2217 /** 2218 * Gets the current value from the system properties map. 2219 * <p> 2220 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2221 * </p> 2222 * 2223 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2224 * @since 3.15.0 2225 */ 2226 public static String getJavaNetSocksUserName() { 2227 return getProperty(JAVA_NET_SOCKS_USER_NAME); 2228 } 2229 2230 /** 2231 * Gets the current value from the system properties map. 2232 * <p> 2233 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2234 * </p> 2235 * 2236 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2237 * @since 3.15.0 2238 */ 2239 public static String getJavaNetUseSystemProxies() { 2240 return getProperty(JAVA_NET_USE_SYSTEM_PROXIES); 2241 } 2242 2243 /** 2244 * Gets the current value from the system properties map. 2245 * <p> 2246 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2247 * </p> 2248 * 2249 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2250 * @since 3.15.0 2251 */ 2252 public static String getJavaNioChannelsDefaultThreadPoolInitialSize() { 2253 return getProperty(JAVA_NIO_CHANNELS_DEFAULT_THREAD_POOL_INITIAL_SIZE); 2254 } 2255 2256 /** 2257 * Gets the current value from the system properties map. 2258 * <p> 2259 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2260 * </p> 2261 * 2262 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2263 * @since 3.15.0 2264 */ 2265 public static String getJavaNioChannelsDefaultThreadPoolThreadFactory() { 2266 return getProperty(JAVA_NIO_CHANNELS_DEFAULT_THREAD_POOL_THREAD_FACTORY); 2267 } 2268 2269 /** 2270 * Gets the current value from the system properties map. 2271 * <p> 2272 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2273 * </p> 2274 * 2275 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2276 * @since 3.15.0 2277 */ 2278 public static String getJavaNioChannelsSpiAsynchronousChannelProvider() { 2279 return getProperty(JAVA_NIO_CHANNELS_SPI_ASYNCHRONOUS_CHANNEL_PROVIDER); 2280 } 2281 2282 /** 2283 * Gets the current value from the system properties map. 2284 * <p> 2285 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2286 * </p> 2287 * 2288 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2289 * @since 3.15.0 2290 */ 2291 public static String getJavaNioChannelsSpiSelectorProvider() { 2292 return getProperty(JAVA_NIO_CHANNELS_SPI_SELECTOR_PROVIDER); 2293 } 2294 2295 /** 2296 * Gets the current value from the system properties map. 2297 * <p> 2298 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2299 * </p> 2300 * 2301 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2302 * @since 3.15.0 2303 */ 2304 public static String getJavaNioFileSpiDefaultFileSystemProvider() { 2305 return getProperty(JAVA_NIO_FILE_SPI_DEFAULT_FILE_SYSTEM_PROVIDER); 2306 } 2307 2308 /** 2309 * Gets the current value from the system properties map. 2310 * <p> 2311 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2312 * </p> 2313 * 2314 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2315 * @since 3.15.0 2316 */ 2317 public static String getJavaPropertiesDate() { 2318 return getProperty(JAVA_PROPERTIES_DATE); 2319 } 2320 2321 /** 2322 * Gets the current value from the system properties map. 2323 * <p> 2324 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2325 * </p> 2326 * 2327 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2328 * @since 3.15.0 2329 */ 2330 public static String getJavaProtocolHandlerPkgs() { 2331 return getProperty(JAVA_PROTOCOL_HANDLER_PKGS); 2332 } 2333 2334 /** 2335 * Gets the current value from the system properties map. 2336 * <p> 2337 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2338 * </p> 2339 * 2340 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2341 * @since 3.15.0 2342 */ 2343 public static String getJavaRmiServerCodebase() { 2344 return getProperty(JAVA_RMI_SERVER_CODEBASE); 2345 } 2346 2347 /** 2348 * Gets the current value from the system properties map. 2349 * <p> 2350 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2351 * </p> 2352 * 2353 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2354 * @since 3.15.0 2355 */ 2356 public static String getJavaRmiServerHostName() { 2357 return getProperty(JAVA_RMI_SERVER_HOST_NAME); 2358 } 2359 2360 /** 2361 * Gets the current value from the system properties map. 2362 * <p> 2363 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2364 * </p> 2365 * 2366 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2367 * @since 3.15.0 2368 */ 2369 public static String getJavaRmiServerRandomIds() { 2370 return getProperty(JAVA_RMI_SERVER_RANDOM_IDS); 2371 } 2372 2373 /** 2374 * Gets the current value from the system properties map. 2375 * <p> 2376 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2377 * </p> 2378 * 2379 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2380 * @since 3.15.0 2381 */ 2382 public static String getJavaRmiServerRmiClassLoaderSpi() { 2383 return getProperty(JAVA_RMI_SERVER_RMI_CLASS_LOADER_SPI); 2384 } 2385 2386 /** 2387 * Gets the current value from the system properties map. 2388 * <p> 2389 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2390 * </p> 2391 * 2392 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2393 */ 2394 public static String getJavaRuntimeName() { 2395 return getProperty(JAVA_RUNTIME_NAME); 2396 } 2397 2398 /** 2399 * Gets the current value from the system properties map. 2400 * <p> 2401 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2402 * </p> 2403 * 2404 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2405 */ 2406 public static String getJavaRuntimeVersion() { 2407 return getProperty(JAVA_RUNTIME_VERSION); 2408 } 2409 2410 /** 2411 * Gets the current value from the system properties map. 2412 * <p> 2413 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2414 * </p> 2415 * 2416 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2417 * @since 3.15.0 2418 */ 2419 public static String getJavaSecurityAuthLoginConfig() { 2420 return getProperty(JAVA_SECURITY_AUTH_LOGIN_CONFIG); 2421 } 2422 2423 /** 2424 * Gets the current value from the system properties map. 2425 * <p> 2426 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2427 * </p> 2428 * 2429 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2430 * @since 3.15.0 2431 */ 2432 public static String getJavaSecurityManager() { 2433 return getProperty(JAVA_SECURITY_MANAGER); 2434 } 2435 2436 /** 2437 * Gets the current value from the system properties map. 2438 * <p> 2439 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2440 * </p> 2441 * 2442 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2443 * @since 3.15.0 2444 */ 2445 public static String getJavaSpecificationMaintenanceVersion() { 2446 return getProperty(JAVA_SPECIFICATION_MAINTENANCE_VERSION); 2447 } 2448 2449 /** 2450 * Gets the current value from the system properties map. 2451 * <p> 2452 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2453 * </p> 2454 * 2455 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2456 */ 2457 public static String getJavaSpecificationName() { 2458 return getProperty(JAVA_SPECIFICATION_NAME); 2459 } 2460 2461 /** 2462 * Gets the current value from the system properties map. 2463 * <p> 2464 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2465 * </p> 2466 * 2467 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2468 */ 2469 public static String getJavaSpecificationVendor() { 2470 return getProperty(JAVA_SPECIFICATION_VENDOR); 2471 } 2472 2473 /** 2474 * Gets the current value from the system properties map. 2475 * <p> 2476 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2477 * </p> 2478 * 2479 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2480 */ 2481 public static String getJavaSpecificationVersion() { 2482 return getProperty(JAVA_SPECIFICATION_VERSION); 2483 } 2484 2485 /** 2486 * Gets the current value from the system properties map for {@value #JAVA_SPECIFICATION_VERSION}. 2487 * <p> 2488 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2489 * </p> 2490 * 2491 * @param defaultValue get this Supplier when the property is empty or throws SecurityException. 2492 * @return The system property value or {@code defaultValue} if the property is absent or a security problem occurs. 2493 * @since 3.15.0 2494 */ 2495 public static String getJavaSpecificationVersion(final String defaultValue) { 2496 return getProperty(JAVA_SPECIFICATION_VERSION, defaultValue); 2497 } 2498 2499 /** 2500 * Gets the current value from the system properties map for {@value #JAVA_SYSTEM_CLASS_LOADER}. 2501 * <p> 2502 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2503 * </p> 2504 * 2505 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2506 * @since 3.15.0 2507 */ 2508 public static String getJavaSystemClassLoader() { 2509 return getProperty(JAVA_SYSTEM_CLASS_LOADER); 2510 } 2511 2512 /** 2513 * Gets the current value from the system properties map for {@value #JAVA_TIME_ZONE_DEFAULT_ZONE_RULES_PROVIDER}. 2514 * <p> 2515 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2516 * </p> 2517 * 2518 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2519 * @since 3.15.0 2520 */ 2521 public static String getJavaTimeZoneDefaultZoneRulesProvider() { 2522 return getProperty(JAVA_TIME_ZONE_DEFAULT_ZONE_RULES_PROVIDER); 2523 } 2524 2525 /** 2526 * Gets the current value from the system properties map for {@value #JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_EXCEPTION_HANDLER}. 2527 * <p> 2528 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2529 * </p> 2530 * 2531 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2532 * @since 3.15.0 2533 */ 2534 public static String getJavaUtilConcurrentForkJoinPoolCommonExceptionHandler() { 2535 return getProperty(JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_EXCEPTION_HANDLER); 2536 } 2537 2538 /** 2539 * Gets the current value from the system properties map for {@value #JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_MAXIMUM_SPARES}. 2540 * <p> 2541 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2542 * </p> 2543 * 2544 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2545 * @since 3.15.0 2546 */ 2547 public static String getJavaUtilConcurrentForkJoinPoolCommonMaximumSpares() { 2548 return getProperty(JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_MAXIMUM_SPARES); 2549 } 2550 2551 /** 2552 * Gets the current value from the system properties map for {@value #JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_PARALLELISM}. 2553 * <p> 2554 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2555 * </p> 2556 * 2557 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2558 * @since 3.15.0 2559 */ 2560 public static String getJavaUtilConcurrentForkJoinPoolCommonParallelism() { 2561 return getProperty(JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_PARALLELISM); 2562 } 2563 2564 /** 2565 * Gets the current value from the system properties map for {@value #JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_THREAD_FACTORY}. 2566 * <p> 2567 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2568 * </p> 2569 * 2570 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2571 * @since 3.15.0 2572 */ 2573 public static String getJavaUtilConcurrentForkJoinPoolCommonThreadFactory() { 2574 return getProperty(JAVA_UTIL_CONCURRENT_FORK_JOIN_POOL_COMMON_THREAD_FACTORY); 2575 } 2576 2577 /** 2578 * Gets the current value from the system properties map for {@value #JAVA_UTIL_CURRENCY_DATA}. 2579 * <p> 2580 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2581 * </p> 2582 * 2583 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2584 * @since 3.15.0 2585 */ 2586 public static String getJavaUtilCurrencyData() { 2587 return getProperty(JAVA_UTIL_CURRENCY_DATA); 2588 } 2589 2590 /** 2591 * Gets the current value from the system properties map for {@value #JAVA_UTIL_LOGGING_CONFIG_CLASS}. 2592 * <p> 2593 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2594 * </p> 2595 * 2596 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2597 * @since 3.15.0 2598 */ 2599 public static String getJavaUtilLoggingConfigClass() { 2600 return getProperty(JAVA_UTIL_LOGGING_CONFIG_CLASS); 2601 } 2602 2603 /** 2604 * Gets the current value from the system properties map for {@value #JAVA_UTIL_LOGGING_CONFIG_FILE}. 2605 * <p> 2606 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2607 * </p> 2608 * 2609 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2610 * @since 3.15.0 2611 */ 2612 public static String getJavaUtilLoggingConfigFile() { 2613 return getProperty(JAVA_UTIL_LOGGING_CONFIG_FILE); 2614 } 2615 2616 /** 2617 * Gets the current value from the system properties map for {@value #JAVA_UTIL_LOGGING_SIMPLE_FORMATTER_FORMAT}. 2618 * <p> 2619 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2620 * </p> 2621 * 2622 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2623 * @since 3.15.0 2624 */ 2625 public static String getJavaUtilLoggingSimpleFormatterFormat() { 2626 return getProperty(JAVA_UTIL_LOGGING_SIMPLE_FORMATTER_FORMAT); 2627 } 2628 2629 /** 2630 * Gets the current value from the system properties map for {@value #JAVA_UTIL_PREFS_PREFERENCES_FACTORY}. 2631 * <p> 2632 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2633 * </p> 2634 * 2635 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2636 */ 2637 public static String getJavaUtilPrefsPreferencesFactory() { 2638 return getProperty(JAVA_UTIL_PREFS_PREFERENCES_FACTORY); 2639 } 2640 2641 /** 2642 * Gets the current value from the system properties map for {@value #JAVA_UTIL_PROPERTY_RESOURCE_BUNDLE_ENCODING}. 2643 * <p> 2644 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2645 * </p> 2646 * 2647 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2648 * @since 3.15.0 2649 */ 2650 public static String getJavaUtilPropertyResourceBundleEncoding() { 2651 return getProperty(JAVA_UTIL_PROPERTY_RESOURCE_BUNDLE_ENCODING); 2652 } 2653 2654 /** 2655 * Gets the current value from the system properties map for {@value #JAVA_VENDOR}. 2656 * <p> 2657 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2658 * </p> 2659 * 2660 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2661 */ 2662 public static String getJavaVendor() { 2663 return getProperty(JAVA_VENDOR); 2664 } 2665 2666 /** 2667 * Gets the current value from the system properties map for {@value #JAVA_VENDOR_URL}. 2668 * <p> 2669 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2670 * </p> 2671 * 2672 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2673 */ 2674 public static String getJavaVendorUrl() { 2675 return getProperty(JAVA_VENDOR_URL); 2676 } 2677 2678 /** 2679 * Gets the current value from the system properties map for {@value #JAVA_VENDOR_VERSION}. 2680 * <p> 2681 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2682 * </p> 2683 * 2684 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2685 * @since 3.15.0 2686 */ 2687 public static String getJavaVendorVersion() { 2688 return getProperty(JAVA_VENDOR_VERSION); 2689 } 2690 2691 /** 2692 * Gets the current value from the system properties map for {@value #JAVA_VERSION}. 2693 * <p> 2694 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2695 * </p> 2696 * 2697 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2698 */ 2699 public static String getJavaVersion() { 2700 return getProperty(JAVA_VERSION); 2701 } 2702 2703 /** 2704 * Gets the current value from the system properties map for {@value #JAVA_VERSION_DATE}. 2705 * <p> 2706 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2707 * </p> 2708 * 2709 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2710 * @since 3.15.0 2711 */ 2712 public static String getJavaVersionDate() { 2713 return getProperty(JAVA_VERSION_DATE); 2714 } 2715 2716 /** 2717 * Gets the current value from the system properties map for {@value #JAVA_VM_INFO}. 2718 * <p> 2719 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2720 * </p> 2721 * 2722 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2723 */ 2724 public static String getJavaVmInfo() { 2725 return getProperty(JAVA_VM_INFO); 2726 } 2727 2728 /** 2729 * Gets the current value from the system properties map for {@value #JAVA_VM_NAME}. 2730 * <p> 2731 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2732 * </p> 2733 * 2734 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2735 */ 2736 public static String getJavaVmName() { 2737 return getProperty(JAVA_VM_NAME); 2738 } 2739 2740 /** 2741 * Gets the current value from the system properties map for {@value #JAVA_VM_SPECIFICATION_NAME}. 2742 * <p> 2743 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2744 * </p> 2745 * 2746 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2747 */ 2748 public static String getJavaVmSpecificationName() { 2749 return getProperty(JAVA_VM_SPECIFICATION_NAME); 2750 } 2751 2752 /** 2753 * Gets the current value from the system properties map for {@value #JAVA_VM_SPECIFICATION_VENDOR}. 2754 * <p> 2755 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2756 * </p> 2757 * 2758 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2759 */ 2760 public static String getJavaVmSpecificationVendor() { 2761 return getProperty(JAVA_VM_SPECIFICATION_VENDOR); 2762 } 2763 2764 /** 2765 * Gets the current value from the system properties map for {@value #JAVA_VM_SPECIFICATION_VERSION}. 2766 * <p> 2767 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2768 * </p> 2769 * 2770 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2771 */ 2772 public static String getJavaVmSpecificationVersion() { 2773 return getProperty(JAVA_VM_SPECIFICATION_VERSION); 2774 } 2775 2776 /** 2777 * Gets the current value from the system properties map for {@value #JAVA_VM_VENDOR}. 2778 * <p> 2779 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2780 * </p> 2781 * 2782 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2783 */ 2784 public static String getJavaVmVendor() { 2785 return getProperty(JAVA_VM_VENDOR); 2786 } 2787 2788 /** 2789 * Gets the current value from the system properties map for {@value #JAVA_VM_VERSION}. 2790 * <p> 2791 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2792 * </p> 2793 * 2794 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2795 */ 2796 public static String getJavaVmVersion() { 2797 return getProperty(JAVA_VM_VERSION); 2798 } 2799 2800 /** 2801 * Gets the current value from the system properties map for {@value #JAVAX_ACCESSIBILITY_ASSISTIVE_TECHNOLOGIES}. 2802 * <p> 2803 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2804 * </p> 2805 * 2806 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2807 * @since 3.15.0 2808 */ 2809 public static String getJavaxAccessibilityAssistiveTechnologies() { 2810 return getProperty(JAVAX_ACCESSIBILITY_ASSISTIVE_TECHNOLOGIES); 2811 } 2812 2813 /** 2814 * Gets the current value from the system properties map for {@value #JAVA_XML_CONFIG_FILE}. 2815 * <p> 2816 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2817 * </p> 2818 * 2819 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2820 * @since 3.15.0 2821 */ 2822 public static String getJavaXmlConfigFile() { 2823 return getProperty(JAVA_XML_CONFIG_FILE); 2824 } 2825 2826 /** 2827 * Gets the current value from the system properties map for {@value #JAVAX_NET_SSL_SESSION_CACHE_SIZE}. 2828 * <p> 2829 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2830 * </p> 2831 * 2832 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2833 * @since 3.15.0 2834 */ 2835 public static String getJavaxNetSslSessionCacheSize() { 2836 return getProperty(JAVAX_NET_SSL_SESSION_CACHE_SIZE); 2837 } 2838 2839 /** 2840 * Gets the current value from the system properties map for {@value #JAVAX_RMI_SSL_CLIENT_ENABLED_CIPHER_SUITES}. 2841 * <p> 2842 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2843 * </p> 2844 * 2845 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2846 * @since 3.15.0 2847 */ 2848 public static String getJavaxRmiSslClientEnabledCipherSuites() { 2849 return getProperty(JAVAX_RMI_SSL_CLIENT_ENABLED_CIPHER_SUITES); 2850 } 2851 2852 /** 2853 * Gets the current value from the system properties map for {@value #JAVAX_RMI_SSL_CLIENT_ENABLED_PROTOCOLS}. 2854 * <p> 2855 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2856 * </p> 2857 * 2858 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2859 * @since 3.15.0 2860 */ 2861 public static String getJavaxRmiSslClientEnabledProtocols() { 2862 return getProperty(JAVAX_RMI_SSL_CLIENT_ENABLED_PROTOCOLS); 2863 } 2864 2865 /** 2866 * Gets the current value from the system properties map for {@value #JAVAX_SECURITY_AUTH_USE_SUBJECT_CREDS_ONLY}. 2867 * <p> 2868 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2869 * </p> 2870 * 2871 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2872 * @since 3.15.0 2873 */ 2874 public static String getJavaxSecurityAuthUseSubjectCredsOnly() { 2875 return getProperty(JAVAX_SECURITY_AUTH_USE_SUBJECT_CREDS_ONLY); 2876 } 2877 2878 /** 2879 * Gets the current value from the system properties map for {@value #JAVAX_SMART_CARD_IO_TERMINAL_FACTORY_DEFAULT_TYPE}. 2880 * <p> 2881 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2882 * </p> 2883 * 2884 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2885 * @since 3.15.0 2886 */ 2887 public static String getJavaxSmartCardIoTerminalFactoryDefaultType() { 2888 return getProperty(JAVAX_SMART_CARD_IO_TERMINAL_FACTORY_DEFAULT_TYPE); 2889 } 2890 2891 /** 2892 * Gets the current value from the system properties map for {@value #JDBC_DRIVERS}. 2893 * <p> 2894 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2895 * </p> 2896 * 2897 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2898 * @since 3.15.0 2899 */ 2900 public static String getJdbcDrivers() { 2901 return getProperty(JDBC_DRIVERS); 2902 } 2903 2904 /** 2905 * Gets the current value from the system properties map for {@value #JDK_HTTP_AUTH_PROXYING_DISABLED_SCHEMES}. 2906 * <p> 2907 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2908 * </p> 2909 * 2910 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2911 * @since 3.15.0 2912 */ 2913 public static String getJdkHttpAuthProxyingDisabledSchemes() { 2914 return getProperty(JDK_HTTP_AUTH_PROXYING_DISABLED_SCHEMES); 2915 } 2916 2917 /** 2918 * Gets the current value from the system properties map for {@value #JDK_HTTP_AUTH_TUNNELING_DISABLED_SCHEMES}. 2919 * <p> 2920 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2921 * </p> 2922 * 2923 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2924 * @since 3.15.0 2925 */ 2926 public static String getJdkHttpAuthTunnelingDisabledSchemes() { 2927 return getProperty(JDK_HTTP_AUTH_TUNNELING_DISABLED_SCHEMES); 2928 } 2929 2930 /** 2931 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_ALLOW_RESTRICTED_HEADERS}. 2932 * <p> 2933 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2934 * </p> 2935 * 2936 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2937 * @since 3.15.0 2938 */ 2939 public static String getJdkHttpClientAllowRestrictedHeaders() { 2940 return getProperty(JDK_HTTP_CLIENT_ALLOW_RESTRICTED_HEADERS); 2941 } 2942 2943 /** 2944 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_AUTH_RETRY_LIMIT}. 2945 * <p> 2946 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2947 * </p> 2948 * 2949 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2950 * @since 3.15.0 2951 */ 2952 public static String getJdkHttpClientAuthRetryLimit() { 2953 return getProperty(JDK_HTTP_CLIENT_AUTH_RETRY_LIMIT); 2954 } 2955 2956 /** 2957 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_BUF_SIZE}. 2958 * <p> 2959 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2960 * </p> 2961 * 2962 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2963 * @since 3.15.0 2964 */ 2965 public static String getJdkHttpClientBufSize() { 2966 return getProperty(JDK_HTTP_CLIENT_BUF_SIZE); 2967 } 2968 2969 /** 2970 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_CONNECTION_POOL_SIZE}. 2971 * <p> 2972 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2973 * </p> 2974 * 2975 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2976 * @since 3.15.0 2977 */ 2978 public static String getJdkHttpClientConnectionPoolSize() { 2979 return getProperty(JDK_HTTP_CLIENT_CONNECTION_POOL_SIZE); 2980 } 2981 2982 /** 2983 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_CONNECTION_WINDOW_SIZE}. 2984 * <p> 2985 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2986 * </p> 2987 * 2988 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 2989 * @since 3.15.0 2990 */ 2991 public static String getJdkHttpClientConnectionWindowSize() { 2992 return getProperty(JDK_HTTP_CLIENT_CONNECTION_WINDOW_SIZE); 2993 } 2994 2995 /** 2996 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_DISABLE_RETRY_CONNECT}. 2997 * <p> 2998 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 2999 * </p> 3000 * 3001 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3002 * @since 3.15.0 3003 */ 3004 public static String getJdkHttpClientDisableRetryConnect() { 3005 return getProperty(JDK_HTTP_CLIENT_DISABLE_RETRY_CONNECT); 3006 } 3007 3008 /** 3009 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_ENABLE_ALL_METHOD_RETRY}. 3010 * <p> 3011 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3012 * </p> 3013 * 3014 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3015 * @since 3.15.0 3016 */ 3017 public static String getJdkHttpClientEnableAllMethodRetry() { 3018 return getProperty(JDK_HTTP_CLIENT_ENABLE_ALL_METHOD_RETRY); 3019 } 3020 3021 /** 3022 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_ENABLE_PUSH}. 3023 * <p> 3024 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3025 * </p> 3026 * 3027 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3028 * @since 3.15.0 3029 */ 3030 public static String getJdkHttpClientEnablePush() { 3031 return getProperty(JDK_HTTP_CLIENT_ENABLE_PUSH); 3032 } 3033 3034 /** 3035 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_HPACK_MAX_HEADER_TABLE_SIZE}. 3036 * <p> 3037 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3038 * </p> 3039 * 3040 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3041 * @since 3.15.0 3042 */ 3043 public static String getJdkHttpClientHpackMaxHeaderTableSize() { 3044 return getProperty(JDK_HTTP_CLIENT_HPACK_MAX_HEADER_TABLE_SIZE); 3045 } 3046 3047 /** 3048 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_HTTP_CLIENT_LOG}. 3049 * <p> 3050 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3051 * </p> 3052 * 3053 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3054 * @since 3.15.0 3055 */ 3056 public static String getJdkHttpClientHttpClientLog() { 3057 return getProperty(JDK_HTTP_CLIENT_HTTP_CLIENT_LOG); 3058 } 3059 3060 /** 3061 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_KEEP_ALIVE_TIMEOUT}. 3062 * <p> 3063 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3064 * </p> 3065 * 3066 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3067 * @since 3.15.0 3068 */ 3069 public static String getJdkHttpClientKeepAliveTimeout() { 3070 return getProperty(JDK_HTTP_CLIENT_KEEP_ALIVE_TIMEOUT); 3071 } 3072 3073 /** 3074 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_KEEP_ALIVE_TIMEOUT_H2}. 3075 * <p> 3076 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3077 * </p> 3078 * 3079 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3080 * @since 3.15.0 3081 */ 3082 public static String getJdkHttpClientKeepAliveTimeoutH2() { 3083 return getProperty(JDK_HTTP_CLIENT_KEEP_ALIVE_TIMEOUT_H2); 3084 } 3085 3086 /** 3087 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_MAX_FRAME_SIZE}. 3088 * <p> 3089 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3090 * </p> 3091 * 3092 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3093 * @since 3.15.0 3094 */ 3095 public static String getJdkHttpClientMaxFrameSize() { 3096 return getProperty(JDK_HTTP_CLIENT_MAX_FRAME_SIZE); 3097 } 3098 3099 /** 3100 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_MAX_STREAMS}. 3101 * <p> 3102 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3103 * </p> 3104 * 3105 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3106 * @since 3.15.0 3107 */ 3108 public static String getJdkHttpClientMaxStreams() { 3109 return getProperty(JDK_HTTP_CLIENT_MAX_STREAMS); 3110 } 3111 3112 /** 3113 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_RECEIVE_BUFFER_SIZE}. 3114 * <p> 3115 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3116 * </p> 3117 * 3118 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3119 * @since 3.15.0 3120 */ 3121 public static String getJdkHttpClientReceiveBufferSize() { 3122 return getProperty(JDK_HTTP_CLIENT_RECEIVE_BUFFER_SIZE); 3123 } 3124 3125 /** 3126 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_REDIRECTS_RETRY_LIMIT}. 3127 * <p> 3128 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3129 * </p> 3130 * 3131 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3132 * @since 3.15.0 3133 */ 3134 public static String getJdkHttpClientRedirectsRetryLimit() { 3135 return getProperty(JDK_HTTP_CLIENT_REDIRECTS_RETRY_LIMIT); 3136 } 3137 3138 /** 3139 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_SEND_BUFFER_SIZE}. 3140 * <p> 3141 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3142 * </p> 3143 * 3144 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3145 * @since 3.15.0 3146 */ 3147 public static String getJdkHttpClientSendBufferSize() { 3148 return getProperty(JDK_HTTP_CLIENT_SEND_BUFFER_SIZE); 3149 } 3150 3151 /** 3152 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_WEB_SOCKET_WRITE_BUFFER_SIZE}. 3153 * <p> 3154 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3155 * </p> 3156 * 3157 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3158 * @since 3.15.0 3159 */ 3160 public static String getJdkHttpClientWebSocketWriteBufferSize() { 3161 return getProperty(JDK_HTTP_CLIENT_WEB_SOCKET_WRITE_BUFFER_SIZE); 3162 } 3163 3164 /** 3165 * Gets the current value from the system properties map for {@value #JDK_HTTP_CLIENT_WINDOW_SIZE}. 3166 * <p> 3167 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3168 * </p> 3169 * 3170 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3171 * @since 3.15.0 3172 */ 3173 public static String getJdkHttpClientWindowSize() { 3174 return getProperty(JDK_HTTP_CLIENT_WINDOW_SIZE); 3175 } 3176 3177 /** 3178 * Gets the current value from the system properties map for {@value #JDK_HTTP_SERVER_MAX_CONNECTIONS}. 3179 * <p> 3180 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3181 * </p> 3182 * 3183 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3184 * @since 3.15.0 3185 */ 3186 public static String getJdkHttpServerMaxConnections() { 3187 return getProperty(JDK_HTTP_SERVER_MAX_CONNECTIONS); 3188 } 3189 3190 /** 3191 * Gets the current value from the system properties map for {@value #JDK_HTTPS_NEGOTIATE_CBT}. 3192 * <p> 3193 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3194 * </p> 3195 * 3196 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3197 * @since 3.15.0 3198 */ 3199 public static String getJdkHttpsNegotiateCbt() { 3200 return getProperty(JDK_HTTPS_NEGOTIATE_CBT); 3201 } 3202 3203 /** 3204 * Gets the current value from the system properties map for {@value #JDK_INCLUDE_IN_EXCEPTIONS}. 3205 * <p> 3206 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3207 * </p> 3208 * 3209 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3210 * @since 3.15.0 3211 */ 3212 public static String getJdkIncludeInExceptions() { 3213 return getProperty(JDK_INCLUDE_IN_EXCEPTIONS); 3214 } 3215 3216 /** 3217 * Gets the current value from the system properties map for {@value #JDK_INTERNAL_HTTP_CLIENT_DISABLE_HOST_NAME_VERIFICATION}. 3218 * <p> 3219 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3220 * </p> 3221 * 3222 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3223 * @since 3.15.0 3224 */ 3225 public static String getJdkInternalHttpClientDisableHostNameVerification() { 3226 return getProperty(JDK_INTERNAL_HTTP_CLIENT_DISABLE_HOST_NAME_VERIFICATION); 3227 } 3228 3229 /** 3230 * Gets the current value from the system properties map for {@value #JDK_IO_PERMISSIONS_USE_CANONICAL_PATH}. 3231 * <p> 3232 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3233 * </p> 3234 * 3235 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3236 * @since 3.15.0 3237 */ 3238 public static String getJdkIoPermissionsUseCanonicalPath() { 3239 return getProperty(JDK_IO_PERMISSIONS_USE_CANONICAL_PATH); 3240 } 3241 3242 /** 3243 * Gets the current value from the system properties map for {@value #JDK_JNDI_LDAP_OBJECT_FACTORIES_FILTER}. 3244 * <p> 3245 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3246 * </p> 3247 * 3248 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3249 * @since 3.15.0 3250 */ 3251 public static String getJdkJndiLdapObjectFactoriesFilter() { 3252 return getProperty(JDK_JNDI_LDAP_OBJECT_FACTORIES_FILTER); 3253 } 3254 3255 /** 3256 * Gets the current value from the system properties map for {@value #JDK_JNDI_OBJECT_FACTORIES_FILTER}. 3257 * <p> 3258 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3259 * </p> 3260 * 3261 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3262 * @since 3.15.0 3263 */ 3264 public static String getJdkJndiObjectFactoriesFilter() { 3265 return getProperty(JDK_JNDI_OBJECT_FACTORIES_FILTER); 3266 } 3267 3268 /** 3269 * Gets the current value from the system properties map for {@value #JDK_JNDI_RMI_OBJECT_FACTORIES_FILTER}. 3270 * <p> 3271 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3272 * </p> 3273 * 3274 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3275 * @since 3.15.0 3276 */ 3277 public static String getJdkJndiRmiObjectFactoriesFilter() { 3278 return getProperty(JDK_JNDI_RMI_OBJECT_FACTORIES_FILTER); 3279 } 3280 3281 /** 3282 * Gets the current value from the system properties map for {@value #JDK_MODULE_MAIN}. 3283 * <p> 3284 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3285 * </p> 3286 * 3287 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3288 * @since 3.15.0 3289 */ 3290 public static String getJdkModuleMain() { 3291 return getProperty(JDK_MODULE_MAIN); 3292 } 3293 3294 /** 3295 * Gets the current value from the system properties map for {@value #JDK_MODULE_MAIN_CLASS}. 3296 * <p> 3297 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3298 * </p> 3299 * 3300 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3301 * @since 3.15.0 3302 */ 3303 public static String getJdkModuleMainClass() { 3304 return getProperty(JDK_MODULE_MAIN_CLASS); 3305 } 3306 3307 /** 3308 * Gets the current value from the system properties map for {@value #JDK_MODULE_PATH}. 3309 * <p> 3310 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3311 * </p> 3312 * 3313 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3314 * @since 3.15.0 3315 */ 3316 public static String getJdkModulePath() { 3317 return getProperty(JDK_MODULE_PATH); 3318 } 3319 3320 /** 3321 * Gets the current value from the system properties map for {@value #JDK_MODULE_UPGRADE_PATH}. 3322 * <p> 3323 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3324 * </p> 3325 * 3326 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3327 * @since 3.15.0 3328 */ 3329 public static String getJdkModuleUpgradePath() { 3330 return getProperty(JDK_MODULE_UPGRADE_PATH); 3331 } 3332 3333 /** 3334 * Gets the current value from the system properties map for {@value #JDK_NET_UNIX_DOMAIN_TMPDIR}. 3335 * <p> 3336 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3337 * </p> 3338 * 3339 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3340 * @since 3.15.0 3341 */ 3342 public static String getJdkNetUnixDomainTmpDir() { 3343 return getProperty(JDK_NET_UNIX_DOMAIN_TMPDIR); 3344 } 3345 3346 /** 3347 * Gets the current value from the system properties map for {@value #JDK_NET_URL_CLASS_PATH_SHOW_IGNORED_CLASS_PATH_ENTRIES}. 3348 * <p> 3349 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3350 * </p> 3351 * 3352 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3353 * @since 3.15.0 3354 */ 3355 public static String getJdkNetUrlClassPathShowIgnoredClassPathEntries() { 3356 return getProperty(JDK_NET_URL_CLASS_PATH_SHOW_IGNORED_CLASS_PATH_ENTRIES); 3357 } 3358 3359 /** 3360 * Gets the current value from the system properties map for {@value #JDK_SERIAL_FILTER}. 3361 * <p> 3362 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3363 * </p> 3364 * 3365 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3366 * @since 3.15.0 3367 */ 3368 public static String getJdkSerialFilter() { 3369 return getProperty(JDK_SERIAL_FILTER); 3370 } 3371 3372 /** 3373 * Gets the current value from the system properties map for {@value #JDK_SERIAL_FILTER_FACTORY}. 3374 * <p> 3375 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3376 * </p> 3377 * 3378 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3379 * @since 3.15.0 3380 */ 3381 public static String getJdkSerialFilterFactory() { 3382 return getProperty(JDK_SERIAL_FILTER_FACTORY); 3383 } 3384 3385 /** 3386 * Gets the current value from the system properties map for {@value #JDK_TLS_CLIENT_SIGNATURE_SCHEMES}. 3387 * <p> 3388 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3389 * </p> 3390 * 3391 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3392 * @since 3.15.0 3393 */ 3394 public static String getJdkTlsClientSignatureSchemes() { 3395 return getProperty(JDK_TLS_CLIENT_SIGNATURE_SCHEMES); 3396 } 3397 3398 /** 3399 * Gets the current value from the system properties map for {@value #JDK_TLS_NAMED_GROUPS}. 3400 * <p> 3401 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3402 * </p> 3403 * 3404 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3405 * @since 3.15.0 3406 */ 3407 public static String getJdkTlsNamedGroups() { 3408 return getProperty(JDK_TLS_NAMED_GROUPS); 3409 } 3410 3411 /** 3412 * Gets the current value from the system properties map for {@value #JDK_TLS_SERVER_SIGNATURE_SCHEMES}. 3413 * <p> 3414 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3415 * </p> 3416 * 3417 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3418 * @since 3.15.0 3419 */ 3420 public static String getJdkTlsServerSignatureSchemes() { 3421 return getProperty(JDK_TLS_SERVER_SIGNATURE_SCHEMES); 3422 } 3423 3424 /** 3425 * Gets the current value from the system properties map for {@value #JDK_VIRTUAL_THREAD_SCHEDULER_MAXPOOLSIZE}. 3426 * <p> 3427 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3428 * </p> 3429 * 3430 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3431 * @since 3.15.0 3432 */ 3433 public static String getJdkVirtualThreadSchedulerMaxPoolSize() { 3434 return getProperty(JDK_VIRTUAL_THREAD_SCHEDULER_MAXPOOLSIZE); 3435 } 3436 3437 /** 3438 * Gets the current value from the system properties map for {@value #JDK_VIRTUAL_THREAD_SCHEDULER_PARALLELISM}. 3439 * <p> 3440 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3441 * </p> 3442 * 3443 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3444 * @since 3.15.0 3445 */ 3446 public static String getJdkVirtualThreadSchedulerParallelism() { 3447 return getProperty(JDK_VIRTUAL_THREAD_SCHEDULER_PARALLELISM); 3448 } 3449 3450 /** 3451 * Gets the current value from the system properties map for {@value #JDK_XML_CDATA_CHUNK_SIZE}. 3452 * <p> 3453 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3454 * </p> 3455 * 3456 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3457 * @since 3.15.0 3458 */ 3459 public static String getJdkXmlCdataChunkSize() { 3460 return getProperty(JDK_XML_CDATA_CHUNK_SIZE); 3461 } 3462 3463 /** 3464 * Gets the current value from the system properties map for {@value #JDK_XML_DTD_SUPPORT}. 3465 * <p> 3466 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3467 * </p> 3468 * 3469 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3470 * @since 3.15.0 3471 */ 3472 public static String getJdkXmlDtdSupport() { 3473 return getProperty(JDK_XML_DTD_SUPPORT); 3474 } 3475 3476 /** 3477 * Gets the current value from the system properties map for {@value #JDK_XML_ELEMENT_ATTRIBUTE_LIMIT}. 3478 * <p> 3479 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3480 * </p> 3481 * 3482 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3483 * @since 3.15.0 3484 */ 3485 public static String getJdkXmlElementAttributeLimit() { 3486 return getProperty(JDK_XML_ELEMENT_ATTRIBUTE_LIMIT); 3487 } 3488 3489 /** 3490 * Gets the current value from the system properties map for {@value #JDK_XML_ENABLE_EXTENSION_FUNCTIONS}. 3491 * <p> 3492 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3493 * </p> 3494 * 3495 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3496 * @since 3.15.0 3497 */ 3498 public static String getJdkXmlEnableExtensionFunctions() { 3499 return getProperty(JDK_XML_ENABLE_EXTENSION_FUNCTIONS); 3500 } 3501 3502 /** 3503 * Gets the current value from the system properties map for {@value #JDK_XML_ENTITY_EXPANSION_LIMIT}. 3504 * <p> 3505 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3506 * </p> 3507 * 3508 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3509 * @since 3.15.0 3510 */ 3511 public static String getJdkXmlEntityExpansionLimit() { 3512 return getProperty(JDK_XML_ENTITY_EXPANSION_LIMIT); 3513 } 3514 3515 /** 3516 * Gets the current value from the system properties map for {@value #JDK_XML_ENTITY_REPLACEMENT_LIMIT}. 3517 * <p> 3518 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3519 * </p> 3520 * 3521 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3522 * @since 3.15.0 3523 */ 3524 public static String getJdkXmlEntityReplacementLimit() { 3525 return getProperty(JDK_XML_ENTITY_REPLACEMENT_LIMIT); 3526 } 3527 3528 /** 3529 * Gets the current value from the system properties map for {@value #JDK_XML_IS_STANDALONE}. 3530 * <p> 3531 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3532 * </p> 3533 * 3534 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3535 * @since 3.15.0 3536 */ 3537 public static String getJdkXmlIsStandalone() { 3538 return getProperty(JDK_XML_IS_STANDALONE); 3539 } 3540 3541 /** 3542 * Gets the current value from the system properties map for {@value #JDK_XML_JDK_CATALOG_RESOLVE}. 3543 * <p> 3544 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3545 * </p> 3546 * 3547 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3548 * @since 3.15.0 3549 */ 3550 public static String getJdkXmlJdkCatalogResolve() { 3551 return getProperty(JDK_XML_JDK_CATALOG_RESOLVE); 3552 } 3553 3554 /** 3555 * Gets the current value from the system properties map for {@value #JDK_XML_MAX_ELEMENT_DEPTH}. 3556 * <p> 3557 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3558 * </p> 3559 * 3560 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3561 * @since 3.15.0 3562 */ 3563 public static String getJdkXmlMaxElementDepth() { 3564 return getProperty(JDK_XML_MAX_ELEMENT_DEPTH); 3565 } 3566 3567 /** 3568 * Gets the current value from the system properties map for {@value #JDK_XML_MAX_GENERAL_ENTITY_SIZE_LIMIT}. 3569 * <p> 3570 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3571 * </p> 3572 * 3573 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3574 * @since 3.15.0 3575 */ 3576 public static String getJdkXmlMaxGeneralEntitySizeLimit() { 3577 return getProperty(JDK_XML_MAX_GENERAL_ENTITY_SIZE_LIMIT); 3578 } 3579 3580 /** 3581 * Gets the current value from the system properties map for {@value #JDK_XML_MAX_OCCUR_LIMIT}. 3582 * <p> 3583 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3584 * </p> 3585 * 3586 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3587 * @since 3.15.0 3588 */ 3589 public static String getJdkXmlMaxOccurLimit() { 3590 return getProperty(JDK_XML_MAX_OCCUR_LIMIT); 3591 } 3592 3593 /** 3594 * Gets the current value from the system properties map for {@value #JDK_XML_MAX_PARAMETER_ENTITY_SIZE_LIMIT}. 3595 * <p> 3596 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3597 * </p> 3598 * 3599 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3600 * @since 3.15.0 3601 */ 3602 public static String getJdkXmlMaxParameterEntitySizeLimit() { 3603 return getProperty(JDK_XML_MAX_PARAMETER_ENTITY_SIZE_LIMIT); 3604 } 3605 3606 /** 3607 * Gets the current value from the system properties map for {@value #JDK_XML_MAX_XML_NAME_LIMIT}. 3608 * <p> 3609 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3610 * </p> 3611 * 3612 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3613 * @since 3.15.0 3614 */ 3615 public static String getJdkXmlMaxXmlNameLimit() { 3616 return getProperty(JDK_XML_MAX_XML_NAME_LIMIT); 3617 } 3618 3619 /** 3620 * Gets the current value from the system properties map for {@value #JDK_XML_OVERRIDE_DEFAULT_PARSER}. 3621 * <p> 3622 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3623 * </p> 3624 * 3625 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3626 * @since 3.15.0 3627 */ 3628 public static String getJdkXmlOverrideDefaultParser() { 3629 return getProperty(JDK_XML_OVERRIDE_DEFAULT_PARSER); 3630 } 3631 3632 /** 3633 * Gets the current value from the system properties map for {@value #JDK_XML_RESET_SYMBOL_TABLE}. 3634 * <p> 3635 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3636 * </p> 3637 * 3638 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3639 * @since 3.15.0 3640 */ 3641 public static String getJdkXmlResetSymbolTable() { 3642 return getProperty(JDK_XML_RESET_SYMBOL_TABLE); 3643 } 3644 3645 /** 3646 * Gets the current value from the system properties map for {@value #JDK_XML_TOTAL_ENTITY_SIZE_LIMIT}. 3647 * <p> 3648 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3649 * </p> 3650 * 3651 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3652 * @since 3.15.0 3653 */ 3654 public static String getJdkXmlTotalEntitySizeLimit() { 3655 return getProperty(JDK_XML_TOTAL_ENTITY_SIZE_LIMIT); 3656 } 3657 3658 /** 3659 * Gets the current value from the system properties map for {@value #JDK_XML_XSLTC_IS_STANDALONE}. 3660 * <p> 3661 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3662 * </p> 3663 * 3664 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3665 * @since 3.15.0 3666 */ 3667 public static String getJdkXmlXsltcIsStandalone() { 3668 return getProperty(JDK_XML_XSLTC_IS_STANDALONE); 3669 } 3670 3671 /** 3672 * Gets the current value from the system properties map for {@value #LINE_SEPARATOR}. 3673 * <p> 3674 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3675 * </p> 3676 * 3677 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3678 */ 3679 public static String getLineSeparator() { 3680 return getProperty(LINE_SEPARATOR); 3681 } 3682 3683 /** 3684 * Gets the current value from the system properties map for {@value #LINE_SEPARATOR}. 3685 * <p> 3686 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3687 * </p> 3688 * 3689 * @param defaultIfAbsent get this Supplier when the property is empty or throws SecurityException. 3690 * @return the current value from the system properties map. 3691 * @since 3.15.0 3692 */ 3693 public static String getLineSeparator(final Supplier<String> defaultIfAbsent) { 3694 return getProperty(LINE_SEPARATOR, defaultIfAbsent); 3695 } 3696 3697 /** 3698 * Gets the current value for the property named {@code "SimpleClassName.Key"} as a {@code long}. 3699 * <p> 3700 * If a {@link SecurityException} is caught, the return value is {@code null}. 3701 * </p> 3702 * 3703 * @param clazz The Class to use for the SimpleClassName. 3704 * @param key The subkey. 3705 * @param defaultIfAbsent The default value. 3706 * @return a long or {@code defaultIfAbsent}'s value. 3707 * @see Class#getSimpleName() 3708 * @since 3.19.0 3709 */ 3710 public static long getLong(final Class<?> clazz, final String key, final LongSupplier defaultIfAbsent) { 3711 return getLong(toKey(clazz, key, true), defaultIfAbsent); 3712 } 3713 3714 /** 3715 * Gets the current value for the property named {@code key} as a {@code long}. 3716 * <p> 3717 * If a {@link SecurityException} is caught, the return value is {@code null}. 3718 * </p> 3719 * 3720 * @param key The key. 3721 * @param defaultIfAbsent The default value. 3722 * @return a {@code long} or {@code defaultIfAbsent}'s value. 3723 */ 3724 public static long getLong(final String key, final LongSupplier defaultIfAbsent) { 3725 final String str = getProperty(key); 3726 return str == null ? defaultIfAbsent != null ? defaultIfAbsent.getAsLong() : 0 : Long.parseLong(str); 3727 } 3728 3729 /** 3730 * Gets the current value from the system properties map for {@value #NATIVE_ENCODING}. 3731 * <p> 3732 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3733 * </p> 3734 * 3735 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3736 * @since 3.15.0 3737 */ 3738 public static String getNativeEncoding() { 3739 return getProperty(NATIVE_ENCODING); 3740 } 3741 3742 /** 3743 * Gets the current value from the system properties map for {@value #NETWORK_ADDRESS_CACHE_NEGATIVE_TTL}. 3744 * <p> 3745 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3746 * </p> 3747 * 3748 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3749 * @since 3.15.0 3750 */ 3751 public static String getNetworkAddressCacheNegativeTtl() { 3752 return getProperty(NETWORK_ADDRESS_CACHE_NEGATIVE_TTL); 3753 } 3754 3755 /** 3756 * Gets the current value from the system properties map for {@value #NETWORK_ADDRESS_CACHE_STALE_TTL}. 3757 * <p> 3758 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3759 * </p> 3760 * 3761 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3762 * @since 3.15.0 3763 */ 3764 public static String getNetworkAddressCacheStaleTtl() { 3765 return getProperty(NETWORK_ADDRESS_CACHE_STALE_TTL); 3766 } 3767 3768 /** 3769 * Gets the current value from the system properties map for {@value #NETWORK_ADDRESS_CACHE_TTL}. 3770 * <p> 3771 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3772 * </p> 3773 * 3774 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3775 * @since 3.15.0 3776 */ 3777 public static String getNetworkAddressCacheTtl() { 3778 return getProperty(NETWORK_ADDRESS_CACHE_TTL); 3779 } 3780 3781 /** 3782 * Gets the current value from the system properties map for {@value #ORG_JCP_XML_DSIG_SECURE_VALIDATION}. 3783 * <p> 3784 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3785 * </p> 3786 * 3787 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3788 * @since 3.15.0 3789 */ 3790 public static String getOrgJcpXmlDsigSecureValidation() { 3791 return getProperty(ORG_JCP_XML_DSIG_SECURE_VALIDATION); 3792 } 3793 3794 /** 3795 * Gets the current value from the system properties map for {@value #ORG_OPENJDK_JAVA_UTIL_STREAM_TRIPWIRE}. 3796 * <p> 3797 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3798 * </p> 3799 * 3800 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3801 * @since 3.15.0 3802 */ 3803 public static String getOrgOpenJdkJavaUtilStreamTripwire() { 3804 return getProperty(ORG_OPENJDK_JAVA_UTIL_STREAM_TRIPWIRE); 3805 } 3806 3807 /** 3808 * Gets the current value from the system properties map for {@value #OS_ARCH}. 3809 * <p> 3810 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3811 * </p> 3812 * 3813 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3814 */ 3815 public static String getOsArch() { 3816 return getProperty(OS_ARCH); 3817 } 3818 3819 /** 3820 * Gets the current value from the system properties map for {@value #OS_NAME}. 3821 * <p> 3822 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3823 * </p> 3824 * 3825 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3826 */ 3827 public static String getOsName() { 3828 return getProperty(OS_NAME); 3829 } 3830 3831 /** 3832 * Gets the current value from the system properties map for {@value #OS_VERSION}. 3833 * <p> 3834 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3835 * </p> 3836 * 3837 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3838 */ 3839 public static String getOsVersion() { 3840 return getProperty(OS_VERSION); 3841 } 3842 3843 /** 3844 * Gets the current value for the property named {@code key} as a {@link Path}. 3845 * <p> 3846 * If a {@link SecurityException} is caught, the return value is {@code null}. 3847 * </p> 3848 * 3849 * @param key The key. 3850 * @param defaultIfAbsent The default value. 3851 * @return a {@link Path} or {@code defaultIfAbsent}'s value. 3852 * @since 3.20.0 3853 */ 3854 public static Path getPath(final String key, final Supplier<Path> defaultIfAbsent) { 3855 final String str = getProperty(key); 3856 return str == null ? defaultIfAbsent != null ? defaultIfAbsent.get() : null : Paths.get(str); 3857 } 3858 3859 /** 3860 * Gets the current value from the system properties map for {@value #PATH_SEPARATOR}. 3861 * <p> 3862 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3863 * </p> 3864 * 3865 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3866 */ 3867 public static String getPathSeparator() { 3868 return getProperty(PATH_SEPARATOR); 3869 } 3870 3871 /** 3872 * Gets a System property, defaulting to {@code null} if the property cannot be read. 3873 * <p> 3874 * If a {@link SecurityException} is caught, the return value is {@code null}. 3875 * </p> 3876 * 3877 * @param property The system property name. 3878 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3879 */ 3880 public static String getProperty(final String property) { 3881 return getProperty(property, Suppliers.nul()); 3882 } 3883 3884 /** 3885 * Gets a System property, defaulting to {@code null} if the property cannot be read. 3886 * <p> 3887 * If a {@link SecurityException} is caught, the return value is {@code null}. 3888 * </p> 3889 * 3890 * @param property the system property name. 3891 * @param defaultIfAbsent use this value when the property is empty or throws SecurityException. 3892 * @return the system property value or {@code null} if a security problem occurs. 3893 */ 3894 static String getProperty(final String property, final String defaultIfAbsent) { 3895 return getProperty(property, () -> defaultIfAbsent); 3896 } 3897 3898 /** 3899 * Gets a System property, defaulting to {@code null} if the property cannot be read. 3900 * <p> 3901 * If a {@link SecurityException} is caught, the return value is {@code null}. 3902 * </p> 3903 * 3904 * @param property the system property name. 3905 * @param defaultIfAbsent get this Supplier when the property is empty or throws SecurityException. 3906 * @return the system property value or {@code null} if a security problem occurs. 3907 */ 3908 static String getProperty(final String property, final Supplier<String> defaultIfAbsent) { 3909 try { 3910 if (StringUtils.isEmpty(property)) { 3911 return Suppliers.get(defaultIfAbsent); 3912 } 3913 return StringUtils.getIfEmpty(System.getProperty(property), defaultIfAbsent); 3914 } catch (final SecurityException ignore) { 3915 // We are not allowed to look at this property. 3916 // 3917 // System.err.println("Caught a SecurityException reading the system property '" + property 3918 // + "'; the SystemUtils property value will default to null."); 3919 return defaultIfAbsent.get(); 3920 } 3921 } 3922 3923 /** 3924 * Gets the current value from the system properties map for {@value #SOCKS_PROXY_HOST}. 3925 * <p> 3926 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3927 * </p> 3928 * 3929 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3930 * @since 3.15.0 3931 */ 3932 public static String getSocksProxyHost() { 3933 return getProperty(SOCKS_PROXY_HOST); 3934 } 3935 3936 /** 3937 * Gets the current value from the system properties map for {@value #SOCKS_PROXY_PORT}. 3938 * <p> 3939 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3940 * </p> 3941 * 3942 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3943 * @since 3.15.0 3944 */ 3945 public static String getSocksProxyPort() { 3946 return getProperty(SOCKS_PROXY_PORT); 3947 } 3948 3949 /** 3950 * Gets the current value from the system properties map for {@value #SOCKS_PROXY_VERSION}. 3951 * <p> 3952 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3953 * </p> 3954 * 3955 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3956 * @since 3.15.0 3957 */ 3958 public static String getSocksProxyVersion() { 3959 return getProperty(SOCKS_PROXY_VERSION); 3960 } 3961 3962 /** 3963 * Gets the current value from the system properties map for {@value #STDERR_ENCODING}. 3964 * <p> 3965 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3966 * </p> 3967 * 3968 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3969 * @since 3.15.0 3970 */ 3971 public static String getStdErrEncoding() { 3972 return getProperty(STDERR_ENCODING); 3973 } 3974 3975 /** 3976 * Gets the current value from the system properties map for {@value #STDOUT_ENCODING}. 3977 * <p> 3978 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3979 * </p> 3980 * 3981 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3982 * @since 3.15.0 3983 */ 3984 public static String getStdOutEncoding() { 3985 return getProperty(STDOUT_ENCODING); 3986 } 3987 3988 /** 3989 * Gets the current value from the system properties map for {@value #SUN_NET_HTTP_SERVER_DRAIN_AMOUNT}. 3990 * <p> 3991 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 3992 * </p> 3993 * 3994 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 3995 * @since 3.15.0 3996 */ 3997 public static String getSunNetHttpServerDrainAmount() { 3998 return getProperty(SUN_NET_HTTP_SERVER_DRAIN_AMOUNT); 3999 } 4000 4001 /** 4002 * Gets the current value from the system properties map for {@value #SUN_NET_HTTP_SERVER_IDLE_INTERVAL}. 4003 * <p> 4004 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4005 * </p> 4006 * 4007 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4008 * @since 3.15.0 4009 */ 4010 public static String getSunNetHttpServerIdleInterval() { 4011 return getProperty(SUN_NET_HTTP_SERVER_IDLE_INTERVAL); 4012 } 4013 4014 /** 4015 * Gets the current value from the system properties map for {@value #SUN_NET_HTTP_SERVER_MAX_IDLE_CONNECTIONS}. 4016 * <p> 4017 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4018 * </p> 4019 * 4020 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4021 * @since 3.15.0 4022 */ 4023 public static String getSunNetHttpServerMaxIdleConnections() { 4024 return getProperty(SUN_NET_HTTP_SERVER_MAX_IDLE_CONNECTIONS); 4025 } 4026 4027 /** 4028 * Gets the current value from the system properties map for {@value #SUN_NET_HTTP_SERVER_MAX_REQ_HEADERS}. 4029 * <p> 4030 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4031 * </p> 4032 * 4033 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4034 * @since 3.15.0 4035 */ 4036 public static String getSunNetHttpServerMaxReqHeaders() { 4037 return getProperty(SUN_NET_HTTP_SERVER_MAX_REQ_HEADERS); 4038 } 4039 4040 /** 4041 * Gets the current value from the system properties map for {@value #SUN_NET_HTTP_SERVER_MAX_REQ_TIME}. 4042 * <p> 4043 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4044 * </p> 4045 * 4046 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4047 * @since 3.15.0 4048 */ 4049 public static String getSunNetHttpServerMaxReqTime() { 4050 return getProperty(SUN_NET_HTTP_SERVER_MAX_REQ_TIME); 4051 } 4052 4053 /** 4054 * Gets the current value from the system properties map for {@value #SUN_NET_HTTP_SERVER_MAX_RSP_TIME}. 4055 * <p> 4056 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4057 * </p> 4058 * 4059 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4060 * @since 3.15.0 4061 */ 4062 public static String getSunNetHttpServerMaxRspTime() { 4063 return getProperty(SUN_NET_HTTP_SERVER_MAX_RSP_TIME); 4064 } 4065 4066 /** 4067 * Gets the current value from the system properties map for {@value #SUN_NET_HTTP_SERVER_NO_DELAY}. 4068 * <p> 4069 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4070 * </p> 4071 * 4072 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4073 * @since 3.15.0 4074 */ 4075 public static String getSunNetHttpServerNoDelay() { 4076 return getProperty(SUN_NET_HTTP_SERVER_NO_DELAY); 4077 } 4078 4079 /** 4080 * Gets the current value from the system properties map for {@value #SUN_SECURITY_KRB5_PRINCIPAL}. 4081 * <p> 4082 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4083 * </p> 4084 * 4085 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4086 * @since 3.15.0 4087 */ 4088 public static String getSunSecurityKrb5Principal() { 4089 return getProperty(SUN_SECURITY_KRB5_PRINCIPAL); 4090 } 4091 4092 /** 4093 * Gets the current value from the system properties map for {@value #USER_COUNTRY}. 4094 * <p> 4095 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4096 * </p> 4097 * 4098 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4099 */ 4100 public static String getUserCountry() { 4101 return getProperty(USER_COUNTRY); 4102 } 4103 4104 /** 4105 * Gets the current value from the system properties map for {@value #USER_DIR}. 4106 * <p> 4107 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4108 * </p> 4109 * 4110 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4111 */ 4112 public static String getUserDir() { 4113 return getProperty(USER_DIR); 4114 } 4115 4116 /** 4117 * Gets the current value from the system properties map for {@value #USER_EXTENSIONS}. 4118 * <p> 4119 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4120 * </p> 4121 * 4122 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4123 * @since 3.15.0 4124 */ 4125 public static String getUserExtensions() { 4126 return getProperty(USER_EXTENSIONS); 4127 } 4128 4129 /** 4130 * Gets the current value from the system properties map for {@value #USER_HOME}. 4131 * <p> 4132 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4133 * </p> 4134 * 4135 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4136 */ 4137 public static String getUserHome() { 4138 return getProperty(USER_HOME); 4139 } 4140 4141 /** 4142 * Gets the current value from the system properties map for {@value #USER_LANGUAGE}. 4143 * <p> 4144 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4145 * </p> 4146 * 4147 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4148 */ 4149 public static String getUserLanguage() { 4150 return getProperty(USER_LANGUAGE); 4151 } 4152 4153 /** 4154 * Gets the current value from the system properties map for {@value #USER_NAME}. 4155 * <p> 4156 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4157 * </p> 4158 * 4159 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4160 */ 4161 public static String getUserName() { 4162 return getProperty(USER_NAME); 4163 } 4164 4165 /** 4166 * Gets the current value from the system properties map for {@value #USER_NAME}. 4167 * <p> 4168 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4169 * </p> 4170 * 4171 * @param defaultValue get this Supplier when the property is empty or throws SecurityException. 4172 * @return The system property value or {@code defaultValue} if the property is absent or a security problem occurs. 4173 * @since 3.15.0 4174 */ 4175 public static String getUserName(final String defaultValue) { 4176 return getProperty(USER_NAME, defaultValue); 4177 } 4178 4179 /** 4180 * Gets the current value from the system properties map for {@value #USER_REGION}. 4181 * <p> 4182 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4183 * </p> 4184 * 4185 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4186 * @since 3.15.0 4187 */ 4188 public static String getUserRegion() { 4189 return getProperty(USER_REGION); 4190 } 4191 4192 /** 4193 * Gets the current value from the system properties map for {@value #USER_SCRIPT}. 4194 * <p> 4195 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4196 * </p> 4197 * 4198 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4199 * @since 3.15.0 4200 */ 4201 public static String getUserScript() { 4202 return getProperty(USER_SCRIPT); 4203 } 4204 4205 /** 4206 * Gets the current value from the system properties map for {@value #USER_TIMEZONE}. 4207 * <p> 4208 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4209 * </p> 4210 * 4211 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4212 */ 4213 public static String getUserTimezone() { 4214 return getProperty(USER_TIMEZONE); 4215 } 4216 4217 /** 4218 * Gets the current value from the system properties map for {@value #USER_VARIANT}. 4219 * <p> 4220 * Returns {@code null} if the property cannot be read due to a {@link SecurityException}. 4221 * </p> 4222 * 4223 * @return The system property value or {@code null} if the property is absent or a security problem occurs. 4224 * @since 3.15.0 4225 */ 4226 public static String getUserVariant() { 4227 return getProperty(USER_VARIANT); 4228 } 4229 4230 /** 4231 * Tests whether the given property is set. 4232 * <p> 4233 * Short-hand for {@code getProperty(property) != null}. 4234 * </p> 4235 * <p> 4236 * If a {@link SecurityException} is caught, the return value is {@code false}. 4237 * </p> 4238 * 4239 * @param property the system property name. 4240 * @return whether the given property is set. 4241 * @since 3.18.0 4242 */ 4243 public static boolean isPropertySet(final String property) { 4244 return getProperty(property) != null; 4245 } 4246 4247 private static String toKey(final Class<?> clazz, final String key, final boolean simpleKey) { 4248 return ClassUtils.getName(clazz, StringUtils.EMPTY, simpleKey) + "." + key; 4249 } 4250 4251 /** 4252 * Make private in 4.0. 4253 * 4254 * @deprecated TODO Make private in 4.0. 4255 */ 4256 @Deprecated 4257 public SystemProperties() { 4258 // empty 4259 } 4260}