1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.internal.impl;
20
21 import java.util.Arrays;
22 import java.util.Collection;
23 import java.util.Collections;
24 import java.util.HashMap;
25 import java.util.Map;
26
27 import org.apache.maven.api.DependencyProperties;
28 import org.apache.maven.api.annotations.Nonnull;
29
30 import static org.apache.maven.internal.impl.Utils.nonNull;
31
32
33
34
35 public class DefaultDependencyProperties implements DependencyProperties {
36 private final Map<String, String> properties;
37
38 public DefaultDependencyProperties(String... flags) {
39 this(Arrays.asList(flags));
40 }
41
42 public DefaultDependencyProperties(@Nonnull Collection<String> flags) {
43 nonNull(flags, "flags");
44 HashMap<String, String> map = new HashMap<>();
45 for (String flag : flags) {
46 map.put(flag, Boolean.TRUE.toString());
47 }
48 this.properties = Collections.unmodifiableMap(map);
49 }
50
51 public DefaultDependencyProperties(@Nonnull Map<String, String> properties) {
52 this.properties = Collections.unmodifiableMap(nonNull(properties, "properties"));
53 }
54
55 @Nonnull
56 @Override
57 public Map<String, String> asMap() {
58 return properties;
59 }
60
61 @Override
62 public boolean checkFlag(@Nonnull String flag) {
63 nonNull(flag, "flag");
64 return Boolean.parseBoolean(properties.getOrDefault(flag, ""));
65 }
66 }