热汗舞蹈 v1.24.1.0版本的 MD5 值为:f1dc6ef07903515a73f51f41f372123e
以下内容为反编译后的 g.java 源代码,内容仅作参考
package q;
import com.xiaomi.mipush.sdk.Constants;
import java.io.File;
import java.io.IOException;
import java.util.Map;
public class g<E> extends l<E> {
public static String f36289q = "http://logback.qos.ch/codes.html#earlier_fa_collision";
public boolean f36290k = true;
public String f36291l = null;
public boolean f36292m = false;
public boolean f36293n = false;
public boolean f36294o = false;
public m0.k f36295p = new m0.k(8192);
@Override
public void N(E e10) {
if (!this.f36293n && this.f36294o) {
this.f36293n = true;
if (Q()) {
addError("Collisions detected with FileAppender/RollingAppender instances defined earlier. Aborting.");
addError(f36289q);
} else {
try {
V(S());
super.start();
} catch (IOException e11) {
this.f36306a = false;
addError("openFile(" + this.f36291l + Constants.ACCEPT_TIME_SEPARATOR_SP + this.f36290k + ") failed", e11);
}
}
}
super.N(e10);
}
public void P(String str, String str2, String str3) {
addError("'" + str + "' option has the same value \"" + str2 + "\" as that given for appender [" + str3 + "] defined earlier.");
}
public boolean Q() {
Map map;
boolean z10 = false;
if (this.f36291l == null || (map = (Map) this.context.d("FA_FILENAME_COLLISION_MAP")) == null) {
return false;
}
for (Map.Entry entry : map.entrySet()) {
if (this.f36291l.equals(entry.getValue())) {
P("File", (String) entry.getValue(), (String) entry.getKey());
z10 = true;
}
}
if (this.f36308c != null) {
map.put(getName(), this.f36291l);
}
return z10;
}
public final String R(String str) {
return (!m0.i.a() || new File(str).isAbsolute()) ? str : m0.l.H(this.context.a("DATA_DIR"), str);
}
public String S() {
throw null;
}
public boolean T() {
return this.f36290k;
}
public boolean U() {
return this.f36292m;
}
public boolean V(String str) throws IOException {
String R = R(str);
this.f36303h.lock();
try {
File file = new File(R);
if (!m0.l.G(file)) {
addError("Failed to create parent directories for [" + file.getAbsolutePath() + "]");
}
g0.b bVar = new g0.b(file, this.f36290k, this.f36295p.a());
bVar.i(this.context);
M(bVar);
return true;
} finally {
this.f36303h.unlock();
}
}
public final String W() {
return this.f36291l;
}
public void X(boolean z10) {
this.f36290k = z10;
}
public void Y(String str) {
this.f36291l = str == null ? null : str.trim();
}
@Override
public void start() {
String str;
String S = S();
boolean z10 = true;
if (S != null) {
String R = R(S);
addInfo("File property is set to [" + R + "]");
if (this.f36292m && !T()) {
X(true);
addWarn("Setting \"Append\" property to true on account of \"Prudent\" mode");
}
if (this.f36294o) {
M(new k());
} else if (Q()) {
addError("Collisions detected with FileAppender/RollingAppender instances defined earlier. Aborting.");
str = f36289q;
} else {
try {
V(R);
} catch (IOException e10) {
addError("openFile(" + R + Constants.ACCEPT_TIME_SEPARATOR_SP + this.f36290k + ") failed", e10);
}
}
z10 = false;
if (z10) {
super.start();
return;
}
return;
}
str = "\"File\" property not set for appender named [" + this.f36308c + "]";
addError(str);
if (z10) {
}
}
@Override
public void stop() {
super.stop();
Map<String, String> H = m0.f.H(this.context);
if (H == null || getName() == null) {
return;
}
H.remove(getName());
}
}