001package com.nimbusds.jose; 002 003 004import java.util.Set; 005 006 007/** 008 * JSON Web Encryption (JWE) provider. 009 * 010 * <p>The JWE provider can be queried to determine its algorithm capabilities. 011 * 012 * @author Vladimir Dzhuvinov 013 * @version 2015-05-26 014 */ 015public interface JWEProvider extends JOSEProvider { 016 017 018 /** 019 * Returns the names of the supported algorithms by the JWE provider 020 * instance. These correspond to the {@code alg} JWE header parameter. 021 * 022 * @return The supported JWE algorithms, empty set if none. 023 */ 024 Set<JWEAlgorithm> supportedJWEAlgorithms(); 025 026 027 /** 028 * Returns the names of the supported encryption methods by the JWE 029 * provier. These correspond to the {@code enc} JWE header parameter. 030 * 031 * @return The supported encryption methods, empty set if none. 032 */ 033 Set<EncryptionMethod> supportedEncryptionMethods(); 034}