- Added realracing3-community.apk (71.57 MB) - Removed 32-bit support (armeabi-v7a) - Only includes arm64-v8a libraries - Decompiled source code included - Added README-community.md with analysis
124 lines
5.3 KiB
Java
124 lines
5.3 KiB
Java
package com.google.firebase.encoders.json;
|
|
|
|
import com.google.firebase.encoders.DataEncoder;
|
|
import com.google.firebase.encoders.EncodingException;
|
|
import com.google.firebase.encoders.ObjectEncoder;
|
|
import com.google.firebase.encoders.ObjectEncoderContext;
|
|
import com.google.firebase.encoders.ValueEncoder;
|
|
import com.google.firebase.encoders.ValueEncoderContext;
|
|
import com.google.firebase.encoders.config.Configurator;
|
|
import com.google.firebase.encoders.config.EncoderConfig;
|
|
import java.io.IOException;
|
|
import java.io.StringWriter;
|
|
import java.io.Writer;
|
|
import java.text.DateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.Date;
|
|
import java.util.HashMap;
|
|
import java.util.Locale;
|
|
import java.util.Map;
|
|
import java.util.TimeZone;
|
|
|
|
/* loaded from: classes3.dex */
|
|
public final class JsonDataEncoderBuilder implements EncoderConfig {
|
|
public static final ObjectEncoder DEFAULT_FALLBACK_ENCODER = new ObjectEncoder() { // from class: com.google.firebase.encoders.json.JsonDataEncoderBuilder$$ExternalSyntheticLambda0
|
|
@Override // com.google.firebase.encoders.ObjectEncoder
|
|
public final void encode(Object obj, Object obj2) {
|
|
JsonDataEncoderBuilder.lambda$static$0(obj, (ObjectEncoderContext) obj2);
|
|
}
|
|
};
|
|
public static final ValueEncoder STRING_ENCODER = new ValueEncoder() { // from class: com.google.firebase.encoders.json.JsonDataEncoderBuilder$$ExternalSyntheticLambda1
|
|
@Override // com.google.firebase.encoders.ValueEncoder
|
|
public final void encode(Object obj, Object obj2) {
|
|
((ValueEncoderContext) obj2).add((String) obj);
|
|
}
|
|
};
|
|
public static final ValueEncoder BOOLEAN_ENCODER = new ValueEncoder() { // from class: com.google.firebase.encoders.json.JsonDataEncoderBuilder$$ExternalSyntheticLambda2
|
|
@Override // com.google.firebase.encoders.ValueEncoder
|
|
public final void encode(Object obj, Object obj2) {
|
|
JsonDataEncoderBuilder.lambda$static$2((Boolean) obj, (ValueEncoderContext) obj2);
|
|
}
|
|
};
|
|
public static final TimestampEncoder TIMESTAMP_ENCODER = new TimestampEncoder();
|
|
public final Map objectEncoders = new HashMap();
|
|
public final Map valueEncoders = new HashMap();
|
|
public ObjectEncoder fallbackEncoder = DEFAULT_FALLBACK_ENCODER;
|
|
public boolean ignoreNullValues = false;
|
|
|
|
public JsonDataEncoderBuilder ignoreNullValues(boolean z) {
|
|
this.ignoreNullValues = z;
|
|
return this;
|
|
}
|
|
|
|
public static /* synthetic */ void lambda$static$0(Object obj, ObjectEncoderContext objectEncoderContext) {
|
|
throw new EncodingException("Couldn't find encoder for type " + obj.getClass().getCanonicalName());
|
|
}
|
|
|
|
public static final class TimestampEncoder implements ValueEncoder {
|
|
public static final DateFormat rfc339;
|
|
|
|
public TimestampEncoder() {
|
|
}
|
|
|
|
static {
|
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", Locale.US);
|
|
rfc339 = simpleDateFormat;
|
|
simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
|
|
}
|
|
|
|
@Override // com.google.firebase.encoders.ValueEncoder
|
|
public void encode(Date date, ValueEncoderContext valueEncoderContext) {
|
|
valueEncoderContext.add(rfc339.format(date));
|
|
}
|
|
}
|
|
|
|
public static /* synthetic */ void lambda$static$2(Boolean bool, ValueEncoderContext valueEncoderContext) {
|
|
valueEncoderContext.add(bool.booleanValue());
|
|
}
|
|
|
|
public JsonDataEncoderBuilder() {
|
|
registerEncoder(String.class, STRING_ENCODER);
|
|
registerEncoder(Boolean.class, BOOLEAN_ENCODER);
|
|
registerEncoder(Date.class, TIMESTAMP_ENCODER);
|
|
}
|
|
|
|
@Override // com.google.firebase.encoders.config.EncoderConfig
|
|
public JsonDataEncoderBuilder registerEncoder(Class cls, ObjectEncoder objectEncoder) {
|
|
this.objectEncoders.put(cls, objectEncoder);
|
|
this.valueEncoders.remove(cls);
|
|
return this;
|
|
}
|
|
|
|
public JsonDataEncoderBuilder registerEncoder(Class cls, ValueEncoder valueEncoder) {
|
|
this.valueEncoders.put(cls, valueEncoder);
|
|
this.objectEncoders.remove(cls);
|
|
return this;
|
|
}
|
|
|
|
public JsonDataEncoderBuilder configureWith(Configurator configurator) {
|
|
configurator.configure(this);
|
|
return this;
|
|
}
|
|
|
|
public DataEncoder build() {
|
|
return new DataEncoder() { // from class: com.google.firebase.encoders.json.JsonDataEncoderBuilder.1
|
|
@Override // com.google.firebase.encoders.DataEncoder
|
|
public void encode(Object obj, Writer writer) {
|
|
JsonValueObjectEncoderContext jsonValueObjectEncoderContext = new JsonValueObjectEncoderContext(writer, JsonDataEncoderBuilder.this.objectEncoders, JsonDataEncoderBuilder.this.valueEncoders, JsonDataEncoderBuilder.this.fallbackEncoder, JsonDataEncoderBuilder.this.ignoreNullValues);
|
|
jsonValueObjectEncoderContext.add(obj, false);
|
|
jsonValueObjectEncoderContext.close();
|
|
}
|
|
|
|
@Override // com.google.firebase.encoders.DataEncoder
|
|
public String encode(Object obj) {
|
|
StringWriter stringWriter = new StringWriter();
|
|
try {
|
|
encode(obj, stringWriter);
|
|
} catch (IOException unused) {
|
|
}
|
|
return stringWriter.toString();
|
|
}
|
|
};
|
|
}
|
|
}
|