Author: tjwatson
Date: Wed Nov  2 19:16:36 2016
New Revision: 1767767

URL: http://svn.apache.org/viewvc?rev=1767767&view=rev
Log:
[FELIX-5390] general clean up of code

 - remove unused imports
 - fix generic declaration issues
 - remove dead code

Modified:
    felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Candidates.java
    felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Logger.java
    
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
    
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/WrappedResource.java
    
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/ArrayMap.java
    
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/CopyOnWriteSet.java
    
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMap.java
    
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapList.java
    
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapSet.java

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Candidates.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Candidates.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Candidates.java 
(original)
+++ 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Candidates.java 
Wed Nov  2 19:16:36 2016
@@ -155,7 +155,6 @@ class Candidates
         return m_delta;
     }
 
-    @SuppressWarnings("ThrowableResultOfMethodCallIgnored")
     public void populate(Collection<Resource> resources)
     {
         ResolveContext rc = m_session.getContext();
@@ -253,19 +252,6 @@ class Candidates
         return !PackageNamespace.RESOLUTION_DYNAMIC.equals(res);
     }
 
-    private boolean isMandatory(ResolveContext rc, Requirement requirement) {
-        // The requirement is optional
-        if (Util.isOptional(requirement)) {
-            return false;
-        }
-        // This is a fragment that is already resolved and there is no 
unresolved hosts to attach it to
-        Resource resource = requirement.getResource();
-        if (Util.isFragment(resource) && 
rc.getWirings().containsKey(resource)) {
-            return false;
-        }
-        return true;
-    }
-
     private void populateSubstitutables()
     {
         for (Map.Entry<Resource, PopulateResult> populated : 
m_populateResultCache.fast())
@@ -280,6 +266,7 @@ class Candidates
     private void populateSubstitutables(Resource resource)
     {
         // Collect the package names exported
+        @SuppressWarnings("serial")
         OpenHashMap<String, List<Capability>> exportNames = new 
OpenHashMap<String, List<Capability>>() {
             @Override
             protected List<Capability> compute(String s) {
@@ -740,7 +727,7 @@ class Candidates
     public CandidateSelector clearMultipleCardinalityCandidates(Requirement 
req, Collection<Capability> caps)
     {
         // this is a special case where we need to completely replace the 
CandidateSelector
-       // this method should never be called from normal Candidates 
permutations
+        // this method should never be called from normal Candidates 
permutations
         CandidateSelector candidates = m_candidateMap.get(req);
         List<Capability> remaining = new 
ArrayList<Capability>(candidates.getRemainingCandidates());
         remaining.removeAll(caps);

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Logger.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Logger.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Logger.java 
(original)
+++ felix/trunk/resolver/src/main/java/org/apache/felix/resolver/Logger.java 
Wed Nov  2 19:16:36 2016
@@ -20,8 +20,6 @@ package org.apache.felix.resolver;
 
 import org.osgi.resource.Resource;
 
-import org.osgi.service.resolver.ResolutionException;
-
 /**
  * <p>
  * This class mimics the standard OSGi <tt>LogService</tt> interface. An

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java 
(original)
+++ 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java 
Wed Nov  2 19:16:36 2016
@@ -375,7 +375,7 @@ public class ResolverImpl implements Res
         return doResolve(session);
     }
 
-    private Map doResolve(ResolveSession session) throws ResolutionException {
+    private Map<Resource, List<Wire>> doResolve(ResolveSession session) throws 
ResolutionException {
         Map<Resource, List<Wire>> wireMap = new HashMap<Resource, 
List<Wire>>();
 
         boolean retry;
@@ -1689,6 +1689,7 @@ public class ResolverImpl implements Res
         List<Capability> caps = (wiring != null)
                 ? wiring.getResourceCapabilities(null)
                 : resource.getCapabilities(null);
+        @SuppressWarnings("serial")
         OpenHashMap<String, Set<Capability>> pkgs = new OpenHashMap<String, 
Set<Capability>>(caps.size()) {
             public Set<Capability> compute(String pkgName) {
                 return new HashSet<Capability>();
@@ -1967,6 +1968,7 @@ public class ResolverImpl implements Res
         return wireMap;
     }
 
+    @SuppressWarnings("unused")
     private static void dumpResourcePkgMap(
         ResolveContext rc, Map<Resource, Packages> resourcePkgMap)
     {
@@ -2025,6 +2027,7 @@ public class ResolverImpl implements Res
         public final OpenHashMap<String, ArrayMap<Capability, UsedBlames>> 
m_usedPkgs;
         public final OpenHashMap<Capability, Set<Capability>> m_sources;
 
+        @SuppressWarnings("serial")
         public Packages(Resource resource)
         {
             int nbCaps = resource.getCapabilities(null).size();

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/WrappedResource.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/WrappedResource.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/WrappedResource.java
 (original)
+++ 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/WrappedResource.java
 Wed Nov  2 19:16:36 2016
@@ -21,7 +21,6 @@ package org.apache.felix.resolver;
 import java.util.*;
 import org.osgi.framework.namespace.ExecutionEnvironmentNamespace;
 import org.osgi.framework.namespace.HostNamespace;
-import org.osgi.framework.namespace.IdentityNamespace;
 import org.osgi.resource.Capability;
 import org.osgi.resource.Requirement;
 import org.osgi.resource.Resource;

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/ArrayMap.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/ArrayMap.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/ArrayMap.java 
(original)
+++ 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/ArrayMap.java 
Wed Nov  2 19:16:36 2016
@@ -20,7 +20,6 @@ package org.apache.felix.resolver.util;
 
 import java.util.*;
 
-@SuppressWarnings("NullableProblems")
 public class ArrayMap<K, V> extends AbstractMap<K, V> {
 
     private Object[] table;
@@ -133,25 +132,26 @@ public class ArrayMap<K, V> extends Abst
             @Override
             public Iterator<Entry<K, V>> iterator() {
                 return new Iterator<Entry<K, V>>() {
-                    FastEntry entry = new FastEntry();
+                    FastEntry<K, V> entry = new FastEntry<K, V>();
                     int index = 0;
 
                     public boolean hasNext() {
                         return index < size;
                     }
 
-                    public FastEntry next() {
+                    @SuppressWarnings("unchecked")
+                    public FastEntry<K, V> next() {
                         if (index >= size) {
                             throw new NoSuchElementException();
                         }
                         int i = index << 1;
-                        entry.key = table[i];
-                        entry.value = table[i + 1];
+                        entry.key = (K) table[i];
+                        entry.value = (V) table[i + 1];
                         index++;
                         return entry;
                     }
-       
-                       public void remove() {
+
+                    public void remove() {
                         throw new UnsupportedOperationException();
                     }
                 };

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/CopyOnWriteSet.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/CopyOnWriteSet.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/CopyOnWriteSet.java
 (original)
+++ 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/CopyOnWriteSet.java
 Wed Nov  2 19:16:36 2016
@@ -19,13 +19,11 @@
 package org.apache.felix.resolver.util;
 
 import java.lang.reflect.Array;
-import java.util.AbstractSet;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.Set;
 
-@SuppressWarnings("NullableProblems")
 public class CopyOnWriteSet<E> implements Set<E>, Cloneable {
 
     Object[] data;
@@ -116,6 +114,7 @@ public class CopyOnWriteSet<E> implement
             return false;
         }
         Object[] o1 = data;
+        @SuppressWarnings("rawtypes")
         Object[] o2 = ((CopyOnWriteSet) o).data;
         if (o1 == o2) {
             return true;

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMap.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMap.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMap.java
 (original)
+++ 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMap.java
 Wed Nov  2 19:16:36 2016
@@ -37,7 +37,6 @@ import java.util.SortedSet;
 /**
  * Based on fastutil Object2ObjectLinkedOpenHashMap
  */
-@SuppressWarnings("NullableProblems")
 public class OpenHashMap<K, V> implements Serializable, Cloneable, 
SortedMap<K, V> {
 
     private static final long serialVersionUID = 0L;
@@ -126,14 +125,14 @@ public class OpenHashMap<K, V> implement
         } else if (!(o instanceof Map)) {
             return false;
         } else {
-            Map m = (Map) o;
+            Map<?, ?> m = (Map<?, ?>) o;
             int n = m.size();
             if (this.size() != n) {
                 return false;
             }
             Iterator<? extends Entry<?, ?>> i = this.fast().iterator();
             while (n-- > 0) {
-                Entry e = i.next();
+                Entry<?, ?> e = i.next();
                 Object k = e.getKey();
                 Object v = e.getValue();
                 Object v2 = m.get(k);
@@ -239,7 +238,7 @@ public class OpenHashMap<K, V> implement
 
         int n = m.size();
         if (m instanceof OpenHashMap) {
-            Iterator<? extends Map.Entry<? extends K, ? extends V>> i = 
((OpenHashMap) m).fast().iterator();
+            Iterator<? extends Map.Entry<? extends K, ? extends V>> i = 
((OpenHashMap<? extends K, ? extends V>) m).fast().iterator();
             while (n-- != 0) {
                 Map.Entry<? extends K, ? extends V> e = i.next();
                 this.put(e.getKey(), e.getValue());
@@ -413,13 +412,6 @@ public class OpenHashMap<K, V> implement
     }
 
     @SuppressWarnings("unchecked")
-    private V setValue(int pos, V v) {
-        Object oldValue = this.value[pos];
-        this.value[pos] = v;
-        return (V) oldValue;
-    }
-
-    @SuppressWarnings("unchecked")
     public V removeFirst() {
         if (this.size == 0) {
             throw new NoSuchElementException();
@@ -475,200 +467,6 @@ public class OpenHashMap<K, V> implement
         }
     }
 
-    private void moveIndexToFirst(int i) {
-        if (this.size != 1 && this.first != i) {
-            if (this.last == i) {
-                this.last = (int) (this.link[i] >>> 32);
-                this.link[this.last] |= 0xFFFFFFFFL;
-            } else {
-                long linki = this.link[i];
-                int prev = (int) (linki >>> 32);
-                int next = (int) linki;
-                this.link[prev] ^= (this.link[prev] ^ linki & 0xFFFFFFFFL) & 
0xFFFFFFFFL;
-                this.link[next] ^= (this.link[next] ^ linki & 
0xFFFFFFFF00000000L) & 0xFFFFFFFF00000000L;
-            }
-
-            this.link[this.first] ^= (this.link[this.first] ^ ((long) i & 
0xFFFFFFFFL) << 32) & 0xFFFFFFFF00000000L;
-            this.link[i] = 0xFFFFFFFF00000000L | (long) this.first & 
0xFFFFFFFFL;
-            this.first = i;
-        }
-    }
-
-    private void moveIndexToLast(int i) {
-        if (this.size != 1 && this.last != i) {
-            if (this.first == i) {
-                this.first = (int) this.link[i];
-                this.link[this.first] |= 0xFFFFFFFF00000000L;
-            } else {
-                long linki = this.link[i];
-                int prev = (int) (linki >>> 32);
-                int next = (int) linki;
-                this.link[prev] ^= (this.link[prev] ^ linki & 0xFFFFFFFFL) & 
0xFFFFFFFFL;
-                this.link[next] ^= (this.link[next] ^ linki & 
0xFFFFFFFF00000000L) & 0xFFFFFFFF00000000L;
-            }
-
-            this.link[this.last] ^= (this.link[this.last] ^ (long) i & 
0xFFFFFFFFL) & 0xFFFFFFFFL;
-            this.link[i] = ((long) this.last & 0xFFFFFFFFL) << 32 | 
0xFFFFFFFFL;
-            this.last = i;
-        }
-    }
-
-    @SuppressWarnings("unchecked")
-    public V getAndMoveToFirst(K k) {
-        if (k == null) {
-            if (this.containsNullKey) {
-                this.moveIndexToFirst(this.n);
-                return (V) this.value[this.n];
-            } else {
-                return this.defRetValue;
-            }
-        } else {
-            Object[] key = this.key;
-            Object curr;
-            int pos;
-            if ((curr = key[pos = mix(k.hashCode()) & this.mask]) == null) {
-                return this.defRetValue;
-            } else if (k.equals(curr)) {
-                this.moveIndexToFirst(pos);
-                return (V) this.value[pos];
-            } else {
-                while ((curr = key[pos = pos + 1 & this.mask]) != null) {
-                    if (k.equals(curr)) {
-                        this.moveIndexToFirst(pos);
-                        return (V) this.value[pos];
-                    }
-                }
-
-                return this.defRetValue;
-            }
-        }
-    }
-
-    @SuppressWarnings("unchecked")
-    public V getAndMoveToLast(K k) {
-        if (k == null) {
-            if (this.containsNullKey) {
-                this.moveIndexToLast(this.n);
-                return (V) this.value[this.n];
-            } else {
-                return this.defRetValue;
-            }
-        } else {
-            Object[] key = this.key;
-            Object curr;
-            int pos;
-            if ((curr = key[pos = mix(k.hashCode()) & this.mask]) == null) {
-                return this.defRetValue;
-            } else if (k.equals(curr)) {
-                this.moveIndexToLast(pos);
-                return (V) this.value[pos];
-            } else {
-                while ((curr = key[pos = pos + 1 & this.mask]) != null) {
-                    if (k.equals(curr)) {
-                        this.moveIndexToLast(pos);
-                        return (V) this.value[pos];
-                    }
-                }
-
-                return this.defRetValue;
-            }
-        }
-    }
-
-    public V putAndMoveToFirst(K k, V v) {
-        int pos;
-        if (k == null) {
-            if (this.containsNullKey) {
-                this.moveIndexToFirst(this.n);
-                return this.setValue(this.n, v);
-            }
-
-            this.containsNullKey = true;
-            pos = this.n;
-        } else {
-            Object[] key = this.key;
-            Object curr;
-            if ((curr = key[pos = mix(k.hashCode()) & this.mask]) != null) {
-                if (curr.equals(k)) {
-                    this.moveIndexToFirst(pos);
-                    return this.setValue(pos, v);
-                }
-
-                while ((curr = key[pos = pos + 1 & this.mask]) != null) {
-                    if (curr.equals(k)) {
-                        this.moveIndexToFirst(pos);
-                        return this.setValue(pos, v);
-                    }
-                }
-            }
-
-            key[pos] = k;
-        }
-
-        this.value[pos] = v;
-        if (this.size == 0) {
-            this.first = this.last = pos;
-            this.link[pos] = -1L;
-        } else {
-            this.link[this.first] ^= (this.link[this.first] ^ ((long) pos & 
0xFFFFFFFFL) << 32) & 0xFFFFFFFF00000000L;
-            this.link[pos] = 0xFFFFFFFF00000000L | (long) this.first & 
0xFFFFFFFFL;
-            this.first = pos;
-        }
-
-        if (this.size++ >= this.maxFill) {
-            this.rehash(arraySize(this.size, this.f));
-        }
-
-        return this.defRetValue;
-    }
-
-    public V putAndMoveToLast(K k, V v) {
-        int pos;
-        if (k == null) {
-            if (this.containsNullKey) {
-                this.moveIndexToLast(this.n);
-                return this.setValue(this.n, v);
-            }
-
-            this.containsNullKey = true;
-            pos = this.n;
-        } else {
-            Object[] key = this.key;
-            Object curr;
-            if ((curr = key[pos = mix(k.hashCode()) & this.mask]) != null) {
-                if (curr.equals(k)) {
-                    this.moveIndexToLast(pos);
-                    return this.setValue(pos, v);
-                }
-
-                while ((curr = key[pos = pos + 1 & this.mask]) != null) {
-                    if (curr.equals(k)) {
-                        this.moveIndexToLast(pos);
-                        return this.setValue(pos, v);
-                    }
-                }
-            }
-
-            key[pos] = k;
-        }
-
-        this.value[pos] = v;
-        if (this.size == 0) {
-            this.first = this.last = pos;
-            this.link[pos] = -1L;
-        } else {
-            this.link[this.last] ^= (this.link[this.last] ^ (long) pos & 
0xFFFFFFFFL) & 0xFFFFFFFFL;
-            this.link[pos] = ((long) this.last & 0xFFFFFFFFL) << 32 | 
0xFFFFFFFFL;
-            this.last = pos;
-        }
-
-        if (this.size++ >= this.maxFill) {
-            this.rehash(arraySize(this.size, this.f));
-        }
-
-        return this.defRetValue;
-    }
-
     @SuppressWarnings("unchecked")
     public V get(Object k) {
         if (k == null) {
@@ -845,7 +643,7 @@ public class OpenHashMap<K, V> implement
 
     public SortedSet<Map.Entry<K, V>> entrySet() {
         if (entries == null) {
-            entries = new OpenHashMap.MapEntrySet();
+            entries = new MapEntrySet();
         }
 
         return this.entries;
@@ -853,7 +651,7 @@ public class OpenHashMap<K, V> implement
 
     public SortedSet<K> keySet() {
         if (keys == null) {
-            keys = new OpenHashMap.KeySet();
+            keys = new KeySet();
         }
 
         return keys;
@@ -1052,7 +850,7 @@ public class OpenHashMap<K, V> implement
     private void writeObject(ObjectOutputStream s) throws IOException {
         Object[] key = this.key;
         Object[] value = this.value;
-        OpenHashMap.MapIterator i = new OpenHashMap.MapIterator(null);
+        OpenHashMap<K, V>.MapIterator i = new MapIterator();
         s.defaultWriteObject();
         int j = this.size;
 
@@ -1109,23 +907,7 @@ public class OpenHashMap<K, V> implement
 
     }
 
-    private void checkTable() {
-    }
-
     private final class ValueIterator extends MapIterator implements 
Iterator<V> {
-        @SuppressWarnings("unchecked")
-        public V previous() {
-            return (V) value[this.previousEntry()];
-        }
-
-        public void set(V v) {
-            throw new UnsupportedOperationException();
-        }
-
-        public void add(V v) {
-            throw new UnsupportedOperationException();
-        }
-
         public ValueIterator() {
             super();
         }
@@ -1140,10 +922,6 @@ public class OpenHashMap<K, V> implement
         private KeySet() {
         }
 
-        public Iterator<K> iterator(K from) {
-            return new KeyIterator(from);
-        }
-
         public Iterator<K> iterator() {
             return new KeyIterator();
         }
@@ -1202,23 +980,6 @@ public class OpenHashMap<K, V> implement
     }
 
     private final class KeyIterator extends MapIterator implements Iterator<K> 
{
-        public KeyIterator(Object k) {
-            super(k);
-        }
-
-        @SuppressWarnings("unchecked")
-        public K previous() {
-            return (K) key[this.previousEntry()];
-        }
-
-        public void set(K k) {
-            throw new UnsupportedOperationException();
-        }
-
-        public void add(K k) {
-            throw new UnsupportedOperationException();
-        }
-
         public KeyIterator() {
             super();
         }
@@ -1273,7 +1034,7 @@ public class OpenHashMap<K, V> implement
             if (!(o instanceof java.util.Map.Entry)) {
                 return false;
             } else {
-                java.util.Map.Entry e = (java.util.Map.Entry) o;
+                Map.Entry<?, ?> e = (Map.Entry<?, ?>) o;
                 Object k = e.getKey();
                 if (k == null) {
                     if (containsNullKey) {
@@ -1314,7 +1075,7 @@ public class OpenHashMap<K, V> implement
             if (!(o instanceof java.util.Map.Entry)) {
                 return false;
             } else {
-                java.util.Map.Entry e = (java.util.Map.Entry) o;
+                Map.Entry<?, ?> e = (Map.Entry<?, ?>) o;
                 Object k = e.getKey();
                 Object v = e.getValue();
                 if (k == null) {
@@ -1380,18 +1141,6 @@ public class OpenHashMap<K, V> implement
         public void clear() {
             OpenHashMap.this.clear();
         }
-
-        public EntryIterator iterator(Entry<K, V> from) {
-            return new EntryIterator(from.getKey());
-        }
-
-        public FastEntryIterator fastIterator() {
-            return new FastEntryIterator();
-        }
-
-        public FastEntryIterator fastIterator(Entry<K, V> from) {
-            return new FastEntryIterator(from.getKey());
-        }
     }
 
     private class FastEntryIterator extends MapIterator implements 
Iterator<Entry<K, V>> {
@@ -1402,61 +1151,27 @@ public class OpenHashMap<K, V> implement
             this.entry = new MapEntry();
         }
 
-        public FastEntryIterator(Object from) {
-            super(from);
-            this.entry = new MapEntry();
-        }
-
-        public OpenHashMap.MapEntry next() {
+        public MapEntry next() {
             this.entry.index = this.nextEntry();
             return this.entry;
         }
-
-        public OpenHashMap.MapEntry previous() {
-            this.entry.index = this.previousEntry();
-            return this.entry;
-        }
-
-        public void set(Entry<K, V> ok) {
-            throw new UnsupportedOperationException();
-        }
-
-        public void add(Entry<K, V> ok) {
-            throw new UnsupportedOperationException();
-        }
     }
 
     private class EntryIterator extends MapIterator implements 
Iterator<Entry<K, V>> {
-        private OpenHashMap.MapEntry entry;
+        private MapEntry entry;
 
         public EntryIterator() {
             super();
         }
 
-        public EntryIterator(Object from) {
-            super(from);
-        }
-
-        public OpenHashMap.MapEntry next() {
+        public MapEntry next() {
             return this.entry = new MapEntry(this.nextEntry());
         }
 
-        public OpenHashMap.MapEntry previous() {
-            return this.entry = new MapEntry(this.previousEntry());
-        }
-
         public void remove() {
             super.remove();
             this.entry.index = -1;
         }
-
-        public void set(Entry<K, V> ok) {
-            throw new UnsupportedOperationException();
-        }
-
-        public void add(Entry<K, V> ok) {
-            throw new UnsupportedOperationException();
-        }
     }
 
     public static abstract class AbstractObjectSet<K> extends 
AbstractObjectCollection<K> implements Cloneable {
@@ -1466,7 +1181,7 @@ public class OpenHashMap<K, V> implement
             } else if (!(o instanceof Set)) {
                 return false;
             } else {
-                Set s = (Set) o;
+                Set<?> s = (Set<?>) o;
                 return s.size() == this.size() && this.containsAll(s);
             }
         }
@@ -1476,7 +1191,7 @@ public class OpenHashMap<K, V> implement
             int n = this.size();
 
             Object k;
-            for (Iterator i = this.iterator(); n-- != 0; h += k == null ? 0 : 
k.hashCode()) {
+            for (Iterator<K> i = this.iterator(); n-- != 0; h += k == null ? 0 
: k.hashCode()) {
                 k = i.next();
             }
 
@@ -1507,39 +1222,10 @@ public class OpenHashMap<K, V> implement
             this.index = 0;
         }
 
-        private MapIterator(Object from) {
-            if (from == null) {
-                if (containsNullKey) {
-                    this.next = (int) link[n];
-                    this.prev = n;
-                } else {
-                    throw new NoSuchElementException("The key " + from + " 
does not belong to this map.");
-                }
-            } else {
-                if (key[last] == null ? from == null : 
(key[last].equals(from))) {
-                    this.prev = last;
-                    this.index = size;
-                } else {
-                    for (int pos = mix(from.hashCode()) & mask; key[pos] != 
null; pos = pos + 1 & mask) {
-                        if (key[pos].equals(from)) {
-                            this.next = (int) link[pos];
-                            this.prev = pos;
-                            return;
-                        }
-                    }
-                    throw new NoSuchElementException("The key " + from + " 
does not belong to this map.");
-                }
-            }
-        }
-
         public boolean hasNext() {
             return this.next != -1;
         }
 
-        public boolean hasPrevious() {
-            return this.prev != -1;
-        }
-
         private void ensureIndexKnown() {
             if (index < 0) {
                 if (prev == -1) {
@@ -1555,16 +1241,6 @@ public class OpenHashMap<K, V> implement
             }
         }
 
-        public int nextIndex() {
-            ensureIndexKnown();
-            return index;
-        }
-
-        public int previousIndex() {
-            ensureIndexKnown();
-            return index - 1;
-        }
-
         public int nextEntry() {
             if (!hasNext()) {
                 throw new NoSuchElementException();
@@ -1579,27 +1255,13 @@ public class OpenHashMap<K, V> implement
             }
         }
 
-        public int previousEntry() {
-            if (!hasPrevious()) {
-                throw new NoSuchElementException();
-            } else {
-                curr = prev;
-                prev = (int) (link[curr] >>> 32);
-                next = curr;
-                if (index >= 0) {
-                    --index;
-                }
-                return curr;
-            }
-        }
-
         public void remove() {
             this.ensureIndexKnown();
             if (curr == -1) throw new IllegalStateException();
 
             if (curr == prev) {
                     /* If the last operation was a next(), we are removing an 
entry that preceeds
-                                      the current index, and thus we must 
decrement it. */
+                     * the current index, and thus we must decrement it. */
                 index--;
                 prev = (int) (link[curr] >>> 32);
             } else {
@@ -1607,8 +1269,8 @@ public class OpenHashMap<K, V> implement
             }
 
             size--;
-                       /* Now we manually fix the pointers. Because of our 
knowledge of next
-                          and prev, this is going to be faster than calling 
fixPointers(). */
+            /* Now we manually fix the pointers. Because of our knowledge of 
next
+             * and prev, this is going to be faster than calling 
fixPointers(). */
             if (prev == -1) {
                 first = next;
             } else {
@@ -1650,18 +1312,6 @@ public class OpenHashMap<K, V> implement
                 }
             }
         }
-
-        public int skip(final int n) {
-            int i = n;
-            while (i-- != 0 && hasNext()) nextEntry();
-            return n - i - 1;
-        }
-
-        public int back(final int n) {
-            int i = n;
-            while (i-- != 0 && hasPrevious()) previousEntry();
-            return n - i - 1;
-        }
     }
 
     final class MapEntry implements Entry<K, V> {
@@ -1695,7 +1345,7 @@ public class OpenHashMap<K, V> implement
             if (!(o instanceof Entry)) {
                 return false;
             } else {
-                Entry e = (Entry) o;
+                Entry<?, ?> e = (Entry<?, ?>) o;
                 if (key[this.index] == null) {
                     if (e.getKey() != null) {
                         return false;
@@ -1767,7 +1417,7 @@ public class OpenHashMap<K, V> implement
 
         public boolean containsAll(Collection<?> c) {
             int n = c.size();
-            Iterator i = c.iterator();
+            Iterator<?> i = c.iterator();
 
             do {
                 if (n-- == 0) {
@@ -1781,7 +1431,7 @@ public class OpenHashMap<K, V> implement
         public boolean retainAll(Collection<?> c) {
             boolean retVal = false;
             int n = this.size();
-            Iterator i = this.iterator();
+            Iterator<K> i = this.iterator();
 
             while (n-- != 0) {
                 if (!c.contains(i.next())) {
@@ -1796,7 +1446,7 @@ public class OpenHashMap<K, V> implement
         public boolean removeAll(Collection<?> c) {
             boolean retVal = false;
             int n = c.size();
-            Iterator i = c.iterator();
+            Iterator<?> i = c.iterator();
 
             while (n-- != 0) {
                 if (this.remove(i.next())) {
@@ -1813,7 +1463,7 @@ public class OpenHashMap<K, V> implement
 
         public String toString() {
             StringBuilder s = new StringBuilder();
-            Iterator i = this.iterator();
+            Iterator<K> i = this.iterator();
             int n = this.size();
             boolean first = true;
             s.append("{");

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapList.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapList.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapList.java
 (original)
+++ 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapList.java
 Wed Nov  2 19:16:36 2016
@@ -21,6 +21,7 @@ package org.apache.felix.resolver.util;
 import org.osgi.resource.Requirement;
 
 public class OpenHashMapList extends OpenHashMap<Requirement, 
CandidateSelector> {
+    private static final long serialVersionUID = 0L;
 
     public OpenHashMapList() {
         super();

Modified: 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapSet.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapSet.java?rev=1767767&r1=1767766&r2=1767767&view=diff
==============================================================================
--- 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapSet.java
 (original)
+++ 
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/util/OpenHashMapSet.java
 Wed Nov  2 19:16:36 2016
@@ -19,6 +19,7 @@
 package org.apache.felix.resolver.util;
 
 public class OpenHashMapSet<K, V> extends OpenHashMap<K, CopyOnWriteSet<V>> {
+    private static final long serialVersionUID = 1L;
 
     public OpenHashMapSet() {
         super();
@@ -28,6 +29,7 @@ public class OpenHashMapSet<K, V> extend
         super(initialCapacity);
     }
 
+    @SuppressWarnings("unchecked")
     public OpenHashMapSet<K, V> deepClone() {
         OpenHashMapSet<K, V> copy = (OpenHashMapSet<K, V>) super.clone();
         Object[] values = copy.value;


Reply via email to