package org.mercury_im.messenger.data.model; import org.jivesoftware.smackx.ox.store.definition.OpenPgpTrustStore; import org.jxmpp.jid.EntityBareJid; import org.mercury_im.messenger.data.converter.EntityBareJidConverter; import org.mercury_im.messenger.data.converter.OpenPgpTrustConverter; import org.mercury_im.messenger.data.converter.OpenPgpV4FingerprintConverter; import org.pgpainless.key.OpenPgpV4Fingerprint; import java.util.UUID; import io.requery.Column; import io.requery.Convert; import io.requery.Entity; import io.requery.ForeignKey; import io.requery.Key; import io.requery.ReferentialAction; import io.requery.Table; import io.requery.converter.UUIDConverter; @Table(name = "ikey_trust") @Entity public class AbstractIkeyTrustModel { @Key @ForeignKey(references = AbstractAccountModel.class, delete = ReferentialAction.CASCADE) @Convert(UUIDConverter.class) UUID accountId; @Key @Convert(EntityBareJidConverter.class) EntityBareJid jid; @Key @Convert(OpenPgpV4FingerprintConverter.class) OpenPgpV4Fingerprint fingerprint; @Column(name = "trust") @Convert(OpenPgpTrustConverter.class) OpenPgpTrustStore.Trust trust; }