Fing.apk(点击下载) / h.java


package com.overlook.android.fing.engine.h;

import android.content.Context;
import android.text.TextUtils;
import com.huawei.hms.support.api.push.pushselfshow.prepare.NotificationIconUtil;
import com.overlook.android.fing.engine.d.a;
import com.overlook.android.fing.engine.model.net.Node;
import com.overlook.android.fing.engine.model.net.p;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.Iterator;

/* compiled from: XmlNetworkExporter */
public class h extends b {
    public h(Context context) {
        super(context);
    }

    private void d(String str, int i2, boolean z, OutputStreamWriter outputStreamWriter) throws IOException {
        for (int i3 = 0; i3 < i2; i3++) {
            outputStreamWriter.append("    ");
        }
        outputStreamWriter.append("<");
        if (z) {
            outputStreamWriter.append(NotificationIconUtil.SPLIT_CHAR);
        }
        outputStreamWriter.append((CharSequence) str);
        outputStreamWriter.append(">");
        outputStreamWriter.append("\n");
    }

    private void e(String str, String str2, int i2, OutputStreamWriter outputStreamWriter) throws IOException {
        if (!TextUtils.isEmpty(str)) {
            for (int i3 = 0; i3 < i2; i3++) {
                outputStreamWriter.append("    ");
            }
            outputStreamWriter.append("<").append((CharSequence) str2).append(">");
            if (str == null) {
                str = null;
            } else {
                StringBuilder sb = new StringBuilder();
                boolean z = false;
                for (int i4 = 0; i4 < str.length(); i4++) {
                    char charAt = str.charAt(i4);
                    boolean z2 = charAt < ' ';
                    boolean z3 = charAt > '~';
                    if ((charAt == '<' || charAt == '&' || charAt == '>') || z3 || z2) {
                        sb.append("&#");
                        sb.append((int) charAt);
                        sb.append(";");
                        z = true;
                    } else {
                        sb.append(charAt);
                    }
                }
                if (z) {
                    str = sb.toString();
                }
            }
            outputStreamWriter.append((CharSequence) str);
            outputStreamWriter.append("</").append((CharSequence) str2).append(">");
            outputStreamWriter.append("\n");
        }
    }

    /* JADX WARNING: Code restructure failed: missing block: B:39:0x0136, code lost:
        r15 = move-exception;
     */
    /* JADX WARNING: Code restructure failed: missing block: B:41:?, code lost:
        r4.close();
     */
    /* JADX WARNING: Code restructure failed: missing block: B:42:0x013b, code lost:
        r0 = move-exception;
     */
    /* JADX WARNING: Code restructure failed: missing block: B:43:0x013c, code lost:
        r14.addSuppressed(r0);
     */
    /* JADX WARNING: Code restructure failed: missing block: B:44:0x013f, code lost:
        throw r15;
     */
    @Override // com.overlook.android.fing.engine.h.g
    public void a(p pVar, OutputStream outputStream) throws Exception {
        OutputStreamWriter outputStreamWriter = new OutputStreamWriter(outputStream);
        outputStreamWriter.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>").append("\n");
        outputStreamWriter.append("<!-- Generated by Fing on ").append((CharSequence) b(System.currentTimeMillis())).append(" -->").append("\n");
        outputStreamWriter.append("<!-- https://www.fing.com/ -->").append("\n");
        d("Network", 0, false, outputStreamWriter);
        d("Devices", 1, false, outputStreamWriter);
        Iterator it = ((ArrayList) c(pVar)).iterator();
        while (it.hasNext()) {
            Node node = (Node) it.next();
            d("Device", 2, false, outputStreamWriter);
            if (node.o0() && !node.u0()) {
                e(node.O().toString(), "Address", 3, outputStreamWriter);
            }
            if (node.K() != null && !node.K().m() && !node.K().j() && !node.K().i()) {
                e(node.K().v(a.l(this)), "HardwareAddress", 3, outputStreamWriter);
            }
            e(node.p(), "Name", 3, outputStreamWriter);
            e(node.l(), "Make", 3, outputStreamWriter);
            e(node.n(), "Model", 3, outputStreamWriter);
            e(node.L(), "Hostname", 3, outputStreamWriter);
            e(node.k().i(), "Type", 3, outputStreamWriter);
            e(node.e0() == Node.c.UP ? "UP" : node.e0() == Node.c.INRANGE ? "IN RANGE" : "DOWN", "State", 3, outputStreamWriter);
            if (node.I() != 0) {
                e(b(node.I()), "FirstSeen", 3, outputStreamWriter);
            }
            if (node.V() != 0) {
                e(b(node.V()), "LastSeen", 3, outputStreamWriter);
            }
            d("Device", 2, true, outputStreamWriter);
        }
        d("Devices", 1, true, outputStreamWriter);
        d("Network", 0, true, outputStreamWriter);
        outputStreamWriter.close();
    }
}