package cz.abclinuxu.datoveschranky.common.interfaces; import cz.abclinuxu.datoveschranky.common.entities.Message; import cz.abclinuxu.datoveschranky.common.entities.MessageEnvelope; import java.io.OutputStream; /** * * Stahování celých zpráv, tedy včetně příloh. * * @author Vaclav Rosecky <xrosecky 'at' gmail 'dot' com> */ public interface DataBoxDownloadService { /** * Stáhne celou přijatou zprávu (i s přílohami) k dané obálce. Nyní pouze * stahuje přijaté zprávy, odeslané nelze stáhnout (webové služby ISDS * takovou službu neposkytuji). Pokud chcete stáhnout odeslanou zprávu, * stáhněte ji podepsanou metodou @see DataBoxDownloadService#downloadSignedMessage * downloadSignedMessage a odstrante obálku. * * @param envelope obálka zprávy, ke které má stáhnout přílohy * @param storer určuje, jak se mají zprávy ukládat * @throws DataBoxException */ public Message downloadMessage(MessageEnvelope envelope, AttachmentStorer storer); /** * Stáhne podepsanou zprávu ve formátu PKCS7 a uloží ji do výstupního * proudu. Tento formát je vhodný pro zálohování. PKCS7 je binární formát, * žádné XML ani zfo soubor. Po odstranění podpisu je výsledek XML. * * @param envelope obálka zprávy, ke které má stáhnout přílohy * @param os kam se má uložit * @throws DataBoxException */ public void downloadSignedMessage(MessageEnvelope envelope, OutputStream os); }