- 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
118 lines
4.4 KiB
Java
118 lines
4.4 KiB
Java
package csdk.glucentralservices.kvstore;
|
|
|
|
import java.util.HashMap;
|
|
import java.util.HashSet;
|
|
import java.util.concurrent.locks.ReadWriteLock;
|
|
import java.util.concurrent.locks.ReentrantReadWriteLock;
|
|
|
|
/* loaded from: classes4.dex */
|
|
public class StringStore {
|
|
private static volatile StringStore sInstance;
|
|
private HashMap<String, String> mStore = new HashMap<>();
|
|
private HashSet<String> mInitializedPlugins = new HashSet<>();
|
|
private ReadWriteLock mLock = new ReentrantReadWriteLock();
|
|
private final HashSet<String> mPluginNames = new HashSet<String>() { // from class: csdk.glucentralservices.kvstore.StringStore.1
|
|
{
|
|
add("gluads");
|
|
add("gluanalytics");
|
|
add("gluapptracking");
|
|
add("glucentralservices");
|
|
add("gluiap");
|
|
add("glumarketing");
|
|
add("glucustomersupport");
|
|
add("starlightsecurity");
|
|
}
|
|
};
|
|
private final HashMap<String, SetStringHandler> mHandlers = new HashMap<String, SetStringHandler>() { // from class: csdk.glucentralservices.kvstore.StringStore.2
|
|
{
|
|
put("*init", new SetStringHandler() { // from class: csdk.glucentralservices.kvstore.StringStore.2.1
|
|
@Override // csdk.glucentralservices.kvstore.StringStore.SetStringHandler
|
|
public void process(String str) {
|
|
if (StringStore.this.mPluginNames.contains(str)) {
|
|
if (!StringStore.this.mInitializedPlugins.contains(str)) {
|
|
StringStore.this.mInitializedPlugins.add(str);
|
|
return;
|
|
}
|
|
StringBuilder sb = new StringBuilder();
|
|
sb.append(str);
|
|
sb.append(" is already initialized");
|
|
return;
|
|
}
|
|
StringBuilder sb2 = new StringBuilder();
|
|
sb2.append("Unsupported plugin: ");
|
|
sb2.append(str);
|
|
}
|
|
});
|
|
put("*destroy", new SetStringHandler() { // from class: csdk.glucentralservices.kvstore.StringStore.2.2
|
|
@Override // csdk.glucentralservices.kvstore.StringStore.SetStringHandler
|
|
public void process(String str) {
|
|
if (StringStore.this.mPluginNames.contains(str)) {
|
|
if (StringStore.this.mInitializedPlugins.contains(str)) {
|
|
StringStore.this.mInitializedPlugins.remove(str);
|
|
} else {
|
|
StringBuilder sb = new StringBuilder();
|
|
sb.append(str);
|
|
sb.append(" has not been initialized");
|
|
}
|
|
if (StringStore.this.mInitializedPlugins.size() == 0) {
|
|
StringStore.this.mStore.clear();
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
StringBuilder sb2 = new StringBuilder();
|
|
sb2.append("Unsupported plugin: ");
|
|
sb2.append(str);
|
|
}
|
|
});
|
|
}
|
|
};
|
|
|
|
public interface SetStringHandler {
|
|
void process(String str);
|
|
}
|
|
|
|
private static StringStore Instance() {
|
|
if (sInstance == null) {
|
|
synchronized (StringStore.class) {
|
|
try {
|
|
if (sInstance == null) {
|
|
sInstance = new StringStore();
|
|
}
|
|
} finally {
|
|
}
|
|
}
|
|
}
|
|
return sInstance;
|
|
}
|
|
|
|
private StringStore() {
|
|
}
|
|
|
|
private String getValue(String str) {
|
|
this.mLock.readLock().lock();
|
|
String str2 = this.mStore.get(str);
|
|
this.mLock.readLock().unlock();
|
|
return str2;
|
|
}
|
|
|
|
private void setKeyValue(String str, String str2) {
|
|
this.mLock.writeLock().lock();
|
|
SetStringHandler setStringHandler = this.mHandlers.get(str);
|
|
if (setStringHandler == null) {
|
|
this.mStore.put(str, str2);
|
|
} else {
|
|
setStringHandler.process(str2);
|
|
}
|
|
this.mLock.writeLock().unlock();
|
|
}
|
|
|
|
public static String get(String str) {
|
|
return Instance().getValue(str);
|
|
}
|
|
|
|
public static void set(String str, String str2) {
|
|
Instance().setKeyValue(str, str2);
|
|
}
|
|
}
|