这是indexloc提供的服务,不要输入任何密码
Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.termux.shared.net.socket.local;

import android.content.Context;
import android.util.Pair;

import androidx.annotation.Keep;
import androidx.annotation.NonNull;
Expand All @@ -10,6 +11,9 @@
import com.termux.shared.logger.Logger;
import com.termux.shared.markdown.MarkdownUtils;

import java.util.ArrayList;
import java.util.List;

/** The {@link PeerCred} of the {@link LocalClientSocket} containing info of client/peer. */
@Keep
public class PeerCred {
Expand Down Expand Up @@ -76,18 +80,39 @@ public static String getPeerCredLogString(final PeerCred peerCred) {
return peerCred.getLogString();
}

/**
* Get log variables {@link List < Pair <String, Object>>} for {@link PeerCred}.
*
* @return Returns the log variables in list {@link List< Pair <String, String>>}.
*/
private List<Pair<String, String>> getLogVariableList() {
List<Pair<String, String>> variableList = new ArrayList<Pair<String, String>>() {{
add(Pair.create("Process", getProcessString()));
add(Pair.create("User", getUserString()));
add(Pair.create("Group", getGroupString()));
add(Pair.create("Cmdline", cmdline));
}};
return variableList;
}

/** Get a log {@link String} for the {@link PeerCred}. */
@NonNull
public String getLogString() {
StringBuilder logString = new StringBuilder();

logString.append("Peer Cred:");
logString.append("\n").append(Logger.getSingleLineLogStringEntry("Process", getProcessString(), "-"));
logString.append("\n").append(Logger.getSingleLineLogStringEntry("User", getUserString(), "-"));
logString.append("\n").append(Logger.getSingleLineLogStringEntry("Group", getGroupString(), "-"));

if (cmdline != null)
logString.append("\n").append(Logger.getMultiLineLogStringEntry("Cmdline", cmdline, "-"));
for (Pair<String, String> logVar: getLogVariableList()) {
String label = logVar.first;
String object = logVar.second;
switch(label) {
case "Cmdline":
if (label != null) logString.append("\n").append(Logger.getMultiLineLogStringEntry(label, object, "-"));
break;
default:
logString.append("\n").append(Logger.getSingleLineLogStringEntry(label, object, "-"));
}
}

return logString.toString();
}
Expand All @@ -109,12 +134,18 @@ public String getMarkdownString() {
StringBuilder markdownString = new StringBuilder();

markdownString.append("## ").append("Peer Cred");
markdownString.append("\n").append(MarkdownUtils.getSingleLineMarkdownStringEntry("Process", getProcessString(), "-"));
markdownString.append("\n").append(MarkdownUtils.getSingleLineMarkdownStringEntry("User", getUserString(), "-"));
markdownString.append("\n").append(MarkdownUtils.getSingleLineMarkdownStringEntry("Group", getGroupString(), "-"));

if (cmdline != null)
markdownString.append("\n").append(MarkdownUtils.getMultiLineMarkdownStringEntry("Cmdline", cmdline, "-"));
for (Pair<String, String> logVar: getLogVariableList()) {
String label = logVar.first;
String object = logVar.second;
switch(label) {
case "Cmdline":
if (label != null) markdownString.append("\n").append(MarkdownUtils.getMultiLineMarkdownStringEntry(label, object, "-"));
break;
default:
markdownString.append("\n").append(MarkdownUtils.getSingleLineMarkdownStringEntry(label, object, "-"));
}
}

return markdownString.toString();
}
Expand Down