package net.sf.scuba.smartcards; import java.io.Serializable; import java.util.Collection; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.Map; /* loaded from: classes6.dex */ public abstract class CardService implements Serializable { protected static final int SESSION_STARTED_STATE = 1; protected static final int SESSION_STOPPED_STATE = 0; private static final Map objectToServiceMap; private static final long serialVersionUID = 5618527358158494957L; private Collection apduListeners = new HashSet(); protected int state = 0; public abstract void close(); public abstract byte[] getATR() throws CardServiceException; public boolean isExtendedAPDULengthSupported() { return false; } public abstract boolean isOpen(); public abstract void open() throws CardServiceException; public abstract ResponseAPDU transmit(CommandAPDU commandAPDU) throws CardServiceException; static { HashMap hashMap = new HashMap(); objectToServiceMap = hashMap; hashMap.put("javax.smartcardio.CardTerminal", "net.sf.scuba.smartcards.TerminalCardService"); hashMap.put("sun.security.smartcardio.TerminalImpl", "net.sf.scuba.smartcards.TerminalCardService"); hashMap.put("android.nfc.tech.IsoDep", "net.sf.scuba.smartcards.IsoDepCardService"); } public static CardService getInstance(Object obj) { Class cls; String value; if (obj == null) { throw new IllegalArgumentException(); } String canonicalName = obj.getClass().getCanonicalName(); for (Map.Entry entry : objectToServiceMap.entrySet()) { try { cls = Class.forName(entry.getKey()); value = entry.getValue(); } catch (ClassNotFoundException unused) { continue; } if (cls.isInstance(obj)) { try { return (CardService) Class.forName(value).getConstructor(cls).newInstance(obj); } catch (Exception e) { throw new IllegalArgumentException(e); break; } } continue; } StringBuilder sb = new StringBuilder("Could not find a CardService for object of class \""); sb.append(canonicalName); sb.append("\""); throw new IllegalArgumentException(sb.toString()); } public void addAPDUListener(APDUListener aPDUListener) { Collection collection = this.apduListeners; if (collection != null) { collection.add(aPDUListener); } } public void removeAPDUListener(APDUListener aPDUListener) { Collection collection = this.apduListeners; if (collection != null) { collection.remove(aPDUListener); } } /* JADX INFO: Access modifiers changed from: protected */ public void notifyExchangedAPDU(int i, CommandAPDU commandAPDU, ResponseAPDU responseAPDU) { Collection collection = this.apduListeners; if (collection == null || collection.size() <= 0) { return; } APDUEvent aPDUEvent = new APDUEvent(this, "RAW", i, commandAPDU, responseAPDU); Iterator it = this.apduListeners.iterator(); while (it.hasNext()) { it.next().exchangedAPDU(aPDUEvent); } } }