mirror of
https://github.com/LBRYFoundation/lbry-android.git
synced 2025-08-23 17:47:28 +00:00
* simplify code for readability * code-cleanup. Make non-changing variables final * Bump buildToolsVersion 29.0.1 -> 29.0.2 for FDroid build compability * Set gradle version to static 3.6.4 instead of dynamic 3.+ * Use StandardCharsets.UTF_8 instead of string UTF8 * Remove unused imports * Add missing null check Co-authored-by: Patric Karlström <patric@pkcab.eu>
68 lines
1.8 KiB
Java
68 lines
1.8 KiB
Java
package io.lbry.browser.model;
|
|
|
|
import androidx.annotation.Nullable;
|
|
|
|
import io.lbry.browser.utils.Helper;
|
|
import lombok.Getter;
|
|
import lombok.Setter;
|
|
import lombok.ToString;
|
|
|
|
/**
|
|
* Class to represent a key to check equality with another object
|
|
*/
|
|
@ToString
|
|
public class ClaimCacheKey {
|
|
@Getter
|
|
@Setter
|
|
private String claimId;
|
|
@Getter
|
|
@Setter
|
|
private String url;
|
|
|
|
public static ClaimCacheKey fromClaimShortUrl(Claim claim) {
|
|
ClaimCacheKey key = new ClaimCacheKey();
|
|
key.setUrl(claim.getShortUrl());
|
|
return key;
|
|
}
|
|
|
|
public static ClaimCacheKey fromClaimPermanentUrl(Claim claim) {
|
|
ClaimCacheKey key = new ClaimCacheKey();
|
|
key.setUrl(claim.getPermanentUrl());
|
|
return key;
|
|
}
|
|
|
|
public static ClaimCacheKey fromClaim(Claim claim) {
|
|
ClaimCacheKey key = new ClaimCacheKey();
|
|
key.setClaimId(claim.getClaimId());
|
|
key.setUrl(!Helper.isNullOrEmpty(claim.getShortUrl()) ? claim.getShortUrl() : claim.getPermanentUrl());
|
|
return key;
|
|
}
|
|
|
|
@Override
|
|
public boolean equals(@Nullable Object obj) {
|
|
if (!(obj instanceof ClaimCacheKey)) {
|
|
return false;
|
|
}
|
|
ClaimCacheKey key = (ClaimCacheKey) obj;
|
|
if (!Helper.isNullOrEmpty(claimId) && !Helper.isNullOrEmpty(key.getClaimId())) {
|
|
return claimId.equalsIgnoreCase(key.getClaimId());
|
|
}
|
|
if (!Helper.isNullOrEmpty(url) && !Helper.isNullOrEmpty(key.getUrl())) {
|
|
return url.equalsIgnoreCase(key.getUrl());
|
|
}
|
|
return false;
|
|
}
|
|
|
|
@Override
|
|
public int hashCode() {
|
|
if (!Helper.isNullOrEmpty(url)) {
|
|
return url.hashCode();
|
|
}
|
|
if (!Helper.isNullOrEmpty(claimId)) {
|
|
return claimId.hashCode();
|
|
}
|
|
|
|
return super.hashCode();
|
|
}
|
|
}
|
|
|