001// SPDX-FileCopyrightText: 2021 Paul Schaub <vanitasvitae@fsfe.org> 002// 003// SPDX-License-Identifier: Apache-2.0 004 005package org.pgpainless.sop; 006 007import sop.SOP; 008import sop.operation.Armor; 009import sop.operation.Dearmor; 010import sop.operation.Decrypt; 011import sop.operation.DetachInbandSignatureAndMessage; 012import sop.operation.Encrypt; 013import sop.operation.ExtractCert; 014import sop.operation.GenerateKey; 015import sop.operation.Sign; 016import sop.operation.Verify; 017import sop.operation.Version; 018 019public class SOPImpl implements SOP { 020 021 @Override 022 public Version version() { 023 return new VersionImpl(); 024 } 025 026 @Override 027 public GenerateKey generateKey() { 028 return new GenerateKeyImpl(); 029 } 030 031 @Override 032 public ExtractCert extractCert() { 033 return new ExtractCertImpl(); 034 } 035 036 @Override 037 public Sign sign() { 038 return new SignImpl(); 039 } 040 041 @Override 042 public Verify verify() { 043 return new VerifyImpl(); 044 } 045 046 @Override 047 public Encrypt encrypt() { 048 return new EncryptImpl(); 049 } 050 051 @Override 052 public Decrypt decrypt() { 053 return new DecryptImpl(); 054 } 055 056 @Override 057 public Armor armor() { 058 return new ArmorImpl(); 059 } 060 061 @Override 062 public Dearmor dearmor() { 063 return new DearmorImpl(); 064 } 065 066 @Override 067 public DetachInbandSignatureAndMessage detachInbandSignatureAndMessage() { 068 return new DetachInbandSignatureAndMessageImpl(); 069 } 070}