118 lines
3.9 KiB
Java
118 lines
3.9 KiB
Java
package com.google.zxing.client.android.encode;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.Collection;
|
|
import java.util.HashMap;
|
|
import java.util.HashSet;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Set;
|
|
|
|
/* loaded from: classes.dex */
|
|
final class VCardContactEncoder extends ContactEncoder {
|
|
VCardContactEncoder() {
|
|
}
|
|
|
|
private static String a(int i) {
|
|
if (i == 10 || i == 17 || i == 18) {
|
|
return "work";
|
|
}
|
|
switch (i) {
|
|
case 1:
|
|
case 2:
|
|
case 5:
|
|
case 6:
|
|
return "home";
|
|
case 3:
|
|
case 4:
|
|
return "work";
|
|
default:
|
|
return null;
|
|
}
|
|
}
|
|
|
|
private static String b(int i) {
|
|
if (i == 4 || i == 5) {
|
|
return "fax";
|
|
}
|
|
if (i == 6) {
|
|
return "pager";
|
|
}
|
|
if (i == 13) {
|
|
return "fax";
|
|
}
|
|
if (i == 16) {
|
|
return "textphone";
|
|
}
|
|
if (i == 18) {
|
|
return "pager";
|
|
}
|
|
if (i != 20) {
|
|
return null;
|
|
}
|
|
return "text";
|
|
}
|
|
|
|
private static Integer c(String str) {
|
|
try {
|
|
return Integer.valueOf(str);
|
|
} catch (NumberFormatException unused) {
|
|
return null;
|
|
}
|
|
}
|
|
|
|
@Override // com.google.zxing.client.android.encode.ContactEncoder
|
|
public String[] a(List<String> list, String str, List<String> list2, List<String> list3, List<String> list4, List<String> list5, List<String> list6, String str2) {
|
|
StringBuilder sb = new StringBuilder(100);
|
|
sb.append("BEGIN:VCARD");
|
|
sb.append('\n');
|
|
sb.append("VERSION:3.0");
|
|
sb.append('\n');
|
|
StringBuilder sb2 = new StringBuilder(100);
|
|
VCardFieldFormatter vCardFieldFormatter = new VCardFieldFormatter();
|
|
ContactEncoder.a(sb, sb2, "N", list, 1, (Formatter) null, (Formatter) vCardFieldFormatter, '\n');
|
|
ContactEncoder.a(sb, sb2, "ORG", str, vCardFieldFormatter, '\n');
|
|
ContactEncoder.a(sb, sb2, "ADR", list2, 1, (Formatter) null, (Formatter) vCardFieldFormatter, '\n');
|
|
List<Map<String, Set<String>>> a = a(list3, list4);
|
|
ContactEncoder.a(sb, sb2, "TEL", list3, Integer.MAX_VALUE, (Formatter) new VCardTelDisplayFormatter(a), (Formatter) new VCardFieldFormatter(a), '\n');
|
|
ContactEncoder.a(sb, sb2, "EMAIL", list5, Integer.MAX_VALUE, (Formatter) null, (Formatter) vCardFieldFormatter, '\n');
|
|
ContactEncoder.a(sb, sb2, "URL", list6, Integer.MAX_VALUE, (Formatter) null, (Formatter) vCardFieldFormatter, '\n');
|
|
ContactEncoder.a(sb, sb2, "NOTE", str2, vCardFieldFormatter, '\n');
|
|
sb.append("END:VCARD");
|
|
sb.append('\n');
|
|
return new String[]{sb.toString(), sb2.toString()};
|
|
}
|
|
|
|
private static List<Map<String, Set<String>>> a(Collection<String> collection, List<String> list) {
|
|
if (list == null || list.isEmpty()) {
|
|
return null;
|
|
}
|
|
ArrayList arrayList = new ArrayList();
|
|
for (int i = 0; i < collection.size(); i++) {
|
|
if (list.size() <= i) {
|
|
arrayList.add(null);
|
|
} else {
|
|
HashMap hashMap = new HashMap();
|
|
arrayList.add(hashMap);
|
|
HashSet hashSet = new HashSet();
|
|
hashMap.put("TYPE", hashSet);
|
|
String str = list.get(i);
|
|
Integer c = c(str);
|
|
if (c == null) {
|
|
hashSet.add(str);
|
|
} else {
|
|
String b = b(c.intValue());
|
|
String a = a(c.intValue());
|
|
if (b != null) {
|
|
hashSet.add(b);
|
|
}
|
|
if (a != null) {
|
|
hashSet.add(a);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return arrayList;
|
|
}
|
|
}
|