1 package org.apache.maven.properties.internal;
2
3 import java.util.Properties;
4
5 /*
6 * Licensed to the Apache Software Foundation (ASF) under one
7 * or more contributor license agreements. See the NOTICE file
8 * distributed with this work for additional information
9 * regarding copyright ownership. The ASF licenses this file
10 * to you under the Apache License, Version 2.0 (the
11 * "License"); you may not use this file except in compliance
12 * with the License. You may obtain a copy of the License at
13 *
14 * http://www.apache.org/licenses/LICENSE-2.0
15 *
16 * Unless required by applicable law or agreed to in writing,
17 * software distributed under the License is distributed on an
18 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
19 * KIND, either express or implied. See the License for the
20 * specific language governing permissions and limitations
21 * under the License.
22 */
23
24 /**
25 * @since 3.2.3
26 */
27 public class SystemProperties
28 {
29 /**
30 * Thread-safe System.properties copy implementation.
31 *
32 * @see http://jira.codehaus.org/browse/MNG-5670
33 */
34 public static void addSystemProperties( Properties props )
35 {
36 for ( String key : System.getProperties().stringPropertyNames() )
37 {
38 props.put( key, System.getProperty( key ) );
39 }
40 }
41
42 /**
43 * Returns System.properties copy.
44 */
45 public static Properties getSystemProperties()
46 {
47 Properties systemProperties = new Properties();
48 addSystemProperties( systemProperties );
49 return systemProperties;
50 }
51 }