1 package org.eclipse.aether.util.graph.version;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.Iterator;
23
24 import org.eclipse.aether.collection.DependencyCollectionContext;
25 import org.eclipse.aether.collection.VersionFilter;
26 import org.eclipse.aether.version.Version;
27
28
29
30
31 public final class HighestVersionFilter
32 implements VersionFilter
33 {
34
35
36
37
38 public HighestVersionFilter()
39 {
40 }
41
42 public void filterVersions( VersionFilterContext context )
43 {
44 Iterator<Version> it = context.iterator();
45 for ( boolean hasNext = it.hasNext(); hasNext; )
46 {
47 it.next();
48 if ( hasNext = it.hasNext() )
49 {
50 it.remove();
51 }
52 }
53 }
54
55 public VersionFilter deriveChildFilter( DependencyCollectionContext context )
56 {
57 return this;
58 }
59
60 @Override
61 public boolean equals( Object obj )
62 {
63 if ( this == obj )
64 {
65 return true;
66 }
67 else if ( null == obj || !getClass().equals( obj.getClass() ) )
68 {
69 return false;
70 }
71 return true;
72 }
73
74 @Override
75 public int hashCode()
76 {
77 return getClass().hashCode();
78 }
79
80 }