Package net.shibboleth.idp.consent.logic.impl

# Class CounterStorageKeyComparator

java.lang.Object
net.shibboleth.idp.consent.logic.impl.CounterStorageKeyComparator

All Implemented Interfaces:
  `Comparator<String>`

public class CounterStorageKeyComparator extends Object implements Comparator<String>
A `Comparator` used to order storage keys so that the least used and oldest storage keys are returned first. The constructor for this class accepts two arguments : (1) the storage keys in order of oldest first and (2) the number of times the storage keys were used.

## Field Summary

Fields
Modifier and Type
Field
Description
`private final Map<String,Long>`
`keyToCounterMap`
Map of storage keys to counters.
`private final List<String>`
`storageKeys`
Storage keys in FIFO order.

## Constructor Summary

Constructors
Constructor
Description
`CounterStorageKeyComparator(List<String> keys, Map<String,Long> map)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`int`
`compare(String o1, String o2)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface java.util.Comparator

`equals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong`

## Field Details

### storageKeys

@Nonnull private final List<String> storageKeys
Storage keys in FIFO order.

### keyToCounterMap

@Nonnull private final Map<String,Long> keyToCounterMap
Map of storage keys to counters.

## Constructor Details

### CounterStorageKeyComparator

public CounterStorageKeyComparator(@Nonnull List<String> keys, @Nonnull Map<String,Long> map)
Constructor.

Parameters:
  `keys` - storage keys in FIFO order
  `map` - number of times the storage keys were used

## Method Details

### compare

public int compare(String o1, String o2)

Specified by:
  `compare` in interface `Comparator<String>`