public class RefMap extends AbstractMap<String,Ref>
RefDatabase namespace.
 
 Although not declared as a SortedMap, iterators from this
 map's projections always return references in
 RefComparator ordering. The map's internal
 representation is a sorted array of Ref objects,
 which means lookup and replacement is O(log N), while insertion and removal
 can be as expensive as O(N + log N) while the list expands or contracts.
 Since this is not a general map implementation, all entries must be keyed by
 the reference name.
 
 This class is really intended as a helper for RefDatabase, which
 needs to perform a merge-join of three sorted
 RefLists in order to present the unified
 namespace of the packed-refs file, the loose refs/ directory tree, and the
 resolved form of any symbolic references.
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>| Constructor and Description | 
|---|
RefMap()
Construct an empty map with a small initial capacity. 
 | 
RefMap(String prefix,
      RefList<? extends Ref> packed,
      RefList<? extends Ref> loose,
      RefList<? extends Ref> resolved)
Construct a map to merge 3 collections together. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
boolean | 
containsKey(Object name) | 
Set<Map.Entry<String,Ref>> | 
entrySet() | 
Ref | 
get(Object key) | 
boolean | 
isEmpty() | 
Ref | 
put(String keyName,
   Ref value) | 
Ref | 
remove(Object key) | 
static Collector<Ref,?,RefMap> | 
toRefMap(BinaryOperator<Ref> mergeFunction)
 | 
String | 
toString() | 
clear, clone, containsValue, equals, hashCode, keySet, putAll, size, valuesfinalize, getClass, notify, notifyAll, wait, wait, waitcompute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAllpublic RefMap()
public RefMap(String prefix, RefList<? extends Ref> packed, RefList<? extends Ref> loose, RefList<? extends Ref> resolved)
prefix - prefix used to slice the lists down. Only references whose
            names start with this prefix will appear to reside in the map.
            Must not be null, use "" (the empty string) to select
            all list items.packed - items from the packed reference list, this is the last list
            searched.loose - items from the loose reference list, this list overrides
            packed if a name appears in both.resolved - resolved symbolic references. This list overrides the prior
            list loose, if an item appears in both. Items in this
            list must also appear in loose.public boolean containsKey(Object name)
containsKey in interface Map<String,Ref>containsKey in class AbstractMap<String,Ref>public boolean isEmpty()
public String toString()
toString in class AbstractMap<String,Ref>Copyright © 2021 Eclipse JGit Project. All rights reserved.