mirror of
https://github.com/VibedByKaKi/alexandroid.git
synced 2026-11-14 01:47:17 +01:00
183 lines
6.9 KiB
Java
183 lines
6.9 KiB
Java
package com.fasterxml.jackson.annotation;
|
|
|
|
import com.fasterxml.jackson.annotation.ObjectIdGenerator;
|
|
import java.util.UUID;
|
|
|
|
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
|
|
/* loaded from: classes7.dex */
|
|
public class ObjectIdGenerators {
|
|
|
|
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
|
|
public static abstract class Base<T> extends ObjectIdGenerator<T> {
|
|
protected final Class<?> _scope;
|
|
|
|
public Base(Class<?> cls) {
|
|
this._scope = cls;
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public boolean canUseFor(ObjectIdGenerator<?> objectIdGenerator) {
|
|
return objectIdGenerator.getClass() == getClass() && objectIdGenerator.getScope() == this._scope;
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public abstract T generateId(Object obj);
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public Class<?> getScope() {
|
|
return this._scope;
|
|
}
|
|
}
|
|
|
|
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
|
|
public static abstract class None extends ObjectIdGenerator<Object> {
|
|
}
|
|
|
|
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
|
|
public static abstract class PropertyGenerator extends Base<Object> {
|
|
private static final long serialVersionUID = 1;
|
|
|
|
public PropertyGenerator(Class<?> cls) {
|
|
super(cls);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerators.Base, com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public /* bridge */ /* synthetic */ boolean canUseFor(ObjectIdGenerator objectIdGenerator) {
|
|
return super.canUseFor(objectIdGenerator);
|
|
}
|
|
}
|
|
|
|
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
|
|
public static final class UUIDGenerator extends Base<UUID> {
|
|
private static final long serialVersionUID = 1;
|
|
|
|
public UUIDGenerator() {
|
|
this(Object.class);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerators.Base, com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public boolean canUseFor(ObjectIdGenerator<?> objectIdGenerator) {
|
|
return objectIdGenerator.getClass() == UUIDGenerator.class;
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator.IdKey key(Object obj) {
|
|
if (obj == null) {
|
|
return null;
|
|
}
|
|
return new ObjectIdGenerator.IdKey(UUIDGenerator.class, null, obj);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerators.Base, com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public UUID generateId(Object obj) {
|
|
return UUID.randomUUID();
|
|
}
|
|
|
|
private UUIDGenerator(Class<?> cls) {
|
|
super(Object.class);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator<UUID> forScope(Class<?> cls) {
|
|
return this;
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator<UUID> newForSerialization(Object obj) {
|
|
return this;
|
|
}
|
|
}
|
|
|
|
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
|
|
public static final class StringIdGenerator extends Base<String> {
|
|
private static final long serialVersionUID = 1;
|
|
|
|
public StringIdGenerator() {
|
|
this(Object.class);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerators.Base, com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public boolean canUseFor(ObjectIdGenerator<?> objectIdGenerator) {
|
|
return objectIdGenerator instanceof StringIdGenerator;
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerators.Base, com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public String generateId(Object obj) {
|
|
return UUID.randomUUID().toString();
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator.IdKey key(Object obj) {
|
|
if (obj == null) {
|
|
return null;
|
|
}
|
|
return new ObjectIdGenerator.IdKey(StringIdGenerator.class, null, obj);
|
|
}
|
|
|
|
private StringIdGenerator(Class<?> cls) {
|
|
super(Object.class);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator<String> forScope(Class<?> cls) {
|
|
return this;
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator<String> newForSerialization(Object obj) {
|
|
return this;
|
|
}
|
|
}
|
|
|
|
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
|
|
public static final class IntSequenceGenerator extends Base<Integer> {
|
|
private static final long serialVersionUID = 1;
|
|
protected transient int _nextValue;
|
|
|
|
public IntSequenceGenerator() {
|
|
this(Object.class, -1);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerators.Base, com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public /* bridge */ /* synthetic */ boolean canUseFor(ObjectIdGenerator objectIdGenerator) {
|
|
return super.canUseFor(objectIdGenerator);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator<Integer> forScope(Class<?> cls) {
|
|
return this._scope == cls ? this : new IntSequenceGenerator(cls, this._nextValue);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerators.Base, com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public Integer generateId(Object obj) {
|
|
if (obj == null) {
|
|
return null;
|
|
}
|
|
int i = this._nextValue;
|
|
this._nextValue = i + 1;
|
|
return Integer.valueOf(i);
|
|
}
|
|
|
|
public int initialValue() {
|
|
return 1;
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator.IdKey key(Object obj) {
|
|
if (obj == null) {
|
|
return null;
|
|
}
|
|
return new ObjectIdGenerator.IdKey(IntSequenceGenerator.class, this._scope, obj);
|
|
}
|
|
|
|
@Override // com.fasterxml.jackson.annotation.ObjectIdGenerator
|
|
public ObjectIdGenerator<Integer> newForSerialization(Object obj) {
|
|
return new IntSequenceGenerator(this._scope, initialValue());
|
|
}
|
|
|
|
public IntSequenceGenerator(Class<?> cls, int i) {
|
|
super(cls);
|
|
this._nextValue = i;
|
|
}
|
|
}
|
|
}
|