Top Description Fields Constructors Methods
org.apache.hc.client5.http.cookie

public Class CookiePriorityComparator

extends Object
implements Comparator<Cookie>
Class Inheritance
All Implemented Interfaces
java.util.Comparator
Annotations
@Contract
threading:STATELESS
Imports
java.time.Instant, java.util.Comparator, org.apache.hc.core5.annotation.Contract, .ThreadingBehavior

This cookie comparator ensures that cookies with longer paths take precedence over cookies with shorter path. Among cookies with equal path length cookies with earlier creation time take precedence over cookies with later creation time
Since
4.4

Field Summary

Modifier and TypeField and Description
public static final CookiePriorityComparator

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public int
compare(final Cookie
the first object to be compared.
c1
,
final Cookie
the second object to be compared.
c2
)

Implements java.util.Comparator.compare.

Compares its two arguments for order.
private int
getPathLength(final Cookie cookie)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

INSTANCEback to summary
public static final CookiePriorityComparator INSTANCE

Constructor Detail

CookiePriorityComparatorback to summary
public CookiePriorityComparator()

Method Detail

compareback to summary
public int compare(final Cookie c1, final Cookie c2)

Implements java.util.Comparator.compare.

Doc from java.util.Comparator.compare.

Compares its two arguments for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

The implementor must ensure that signum(compare(x, y)) == -signum(compare(y, x)) for all x and y. (This implies that compare(x, y) must throw an exception if and only if compare(y, x) throws an exception.)

The implementor must also ensure that the relation is transitive: ((compare(x, y)>0) && (compare(y, z)>0)) implies compare(x, z)>0.

Finally, the implementor must ensure that compare(x, y)==0 implies that signum(compare(x, z))==signum(compare(y, z)) for all z.

Parameters
c1:Cookie

the first object to be compared.

c2:Cookie

the second object to be compared.

Returns:int

a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

Annotations
@Override
getPathLengthback to summary
private int getPathLength(final Cookie cookie)