1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.resolver.internal.ant.types;
20
21 import org.apache.tools.ant.PropertyHelper;
22
23
24
25 @SuppressWarnings("deprecation")
26 class PomPropertyHelper extends PropertyHelper {
27
28 private final ModelValueExtractor extractor;
29
30 public static void register(ModelValueExtractor extractor, PropertyHelper propertyHelper) {
31 PomPropertyHelper helper = new PomPropertyHelper(extractor);
32 helper.setNext(propertyHelper.getNext());
33 propertyHelper.setNext(helper);
34 }
35
36 PomPropertyHelper(ModelValueExtractor extractor) {
37 if (extractor == null) {
38 throw new IllegalArgumentException("no model value exractor specified");
39 }
40 this.extractor = extractor;
41 setProject(extractor.getProject());
42 }
43
44 @Override
45 public Object getPropertyHook(String ns, String name, boolean user) {
46 Object value = extractor.getValue(name);
47 if (value != null) {
48 return value;
49 } else if (extractor.isApplicable(name)) {
50 return null;
51 }
52 return super.getPropertyHook(ns, name, user);
53 }
54 }