package org.mercury_im.messenger.core.store.crypto; import org.bouncycastle.openpgp.PGPException; import org.bouncycastle.openpgp.PGPPublicKeyRing; import org.bouncycastle.openpgp.PGPPublicKeyRingCollection; import org.bouncycastle.openpgp.PGPSecretKeyRing; import org.bouncycastle.openpgp.PGPSecretKeyRingCollection; import org.jivesoftware.smackx.ox.OpenPgpContact; import org.jivesoftware.smackx.ox.callback.SecretKeyPassphraseCallback; import org.jivesoftware.smackx.ox.exception.MissingUserIdOnKeyException; import org.jivesoftware.smackx.ox.store.definition.OpenPgpStore; import org.jxmpp.jid.BareJid; import org.mercury_im.messenger.core.data.repository.OpenPgpRepository; import org.pgpainless.key.OpenPgpV4Fingerprint; import org.pgpainless.key.collection.PGPKeyRing; import org.pgpainless.key.protection.SecretKeyRingProtector; import org.pgpainless.key.protection.UnprotectedKeysProtector; import java.io.IOException; import java.security.InvalidAlgorithmParameterException; import java.security.NoSuchAlgorithmException; import java.security.NoSuchProviderException; import java.util.Date; import java.util.Map; import java.util.UUID; import javax.inject.Inject; public class MercuryOpenPgpStore implements OpenPgpStore { private final UUID accountId; private SecretKeyRingProtector keyRingProtector; private SecretKeyPassphraseCallback passphraseCallback; @Inject OpenPgpRepository repository; public MercuryOpenPgpStore(UUID accountId) { this.accountId = accountId; } @Override public OpenPgpContact getOpenPgpContact(BareJid contactsJid) { return null; } @Override public void setKeyRingProtector(SecretKeyRingProtector unlocker) { this.keyRingProtector = unlocker; } @Override public SecretKeyRingProtector getKeyRingProtector() { return keyRingProtector; } @Override public void setSecretKeyPassphraseCallback(SecretKeyPassphraseCallback callback) { passphraseCallback = callback; } @Override public PGPPublicKeyRingCollection getPublicKeysOf(BareJid owner) throws IOException, PGPException { return null; } @Override public PGPSecretKeyRingCollection getSecretKeysOf(BareJid owner) throws IOException, PGPException { return null; } @Override public PGPPublicKeyRing getPublicKeyRing(BareJid owner, OpenPgpV4Fingerprint fingerprint) throws IOException, PGPException { return null; } @Override public PGPSecretKeyRing getSecretKeyRing(BareJid owner, OpenPgpV4Fingerprint fingerprint) throws IOException, PGPException { return null; } @Override public void deletePublicKeyRing(BareJid owner, OpenPgpV4Fingerprint fingerprint) throws IOException, PGPException { } @Override public void deleteSecretKeyRing(BareJid owner, OpenPgpV4Fingerprint fingerprint) throws IOException, PGPException { } @Override public PGPKeyRing generateKeyRing(BareJid owner) throws PGPException, NoSuchAlgorithmException, NoSuchProviderException, InvalidAlgorithmParameterException { return null; } @Override public void importSecretKey(BareJid owner, PGPSecretKeyRing secretKeys) throws IOException, PGPException, MissingUserIdOnKeyException { } @Override public void importPublicKey(BareJid owner, PGPPublicKeyRing publicKeys) throws IOException, PGPException, MissingUserIdOnKeyException { } @Override public Map getPublicKeyFetchDates(BareJid contact) throws IOException { return null; } @Override public void setPublicKeyFetchDates(BareJid contact, Map dates) throws IOException { } @Override public Map getAnnouncedFingerprintsOf(BareJid contact) throws IOException { return null; } @Override public void setAnnouncedFingerprintsOf(BareJid contact, Map data) throws IOException { } @Override public Trust getTrust(BareJid owner, OpenPgpV4Fingerprint fingerprint) throws IOException { return null; } @Override public void setTrust(BareJid owner, OpenPgpV4Fingerprint fingerprint, Trust trust) throws IOException { } }