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