001package com.box.sdk;
002
003/**
004 * Contains the encryption preferences for JWT assertion.
005 */
006
007public class JWTEncryptionPreferences {
008    private String publicKeyID;
009    private String privateKey;
010    private String privateKeyPassword;
011    private EncryptionAlgorithm encryptionAlgorithm;
012
013    /**
014     * Returns the ID for public key for validating the JWT signature.
015     *
016     * @return the publicKeyID.
017     */
018    public String getPublicKeyID() {
019        return this.publicKeyID;
020    }
021
022    /**
023     * Sets the ID for public key for validating the JWT signature.
024     *
025     * @param publicKeyID the publicKeyID to set.
026     */
027    public void setPublicKeyID(String publicKeyID) {
028        this.publicKeyID = publicKeyID;
029    }
030
031    /**
032     * Returns the private key for generating the JWT signature.
033     *
034     * @return the privateKey.
035     */
036    public String getPrivateKey() {
037        return this.privateKey;
038    }
039
040    /**
041     * Sets the private key for generating the JWT signature.
042     *
043     * @param privateKey the privateKey to set.
044     */
045    public void setPrivateKey(String privateKey) {
046        this.privateKey = privateKey;
047    }
048
049    /**
050     * Returns the password for the private key.
051     *
052     * @return the privateKeyPassword.
053     */
054    public String getPrivateKeyPassword() {
055        return this.privateKeyPassword;
056    }
057
058    /**
059     * Sets the password for the private key.
060     *
061     * @param privateKeyPassword the privateKeyPassword to set.
062     */
063    public void setPrivateKeyPassword(String privateKeyPassword) {
064        this.privateKeyPassword = privateKeyPassword;
065    }
066
067    /**
068     * Returns the type of encryption algorithm for JWT.
069     *
070     * @return the encryptionAlgorithm.
071     */
072    public EncryptionAlgorithm getEncryptionAlgorithm() {
073        return this.encryptionAlgorithm;
074    }
075
076    /**
077     * Sets the type of encryption algorithm for JWT.
078     *
079     * @param encryptionAlgorithm the encryptionAlgorithm to set.
080     */
081    public void setEncryptionAlgorithm(EncryptionAlgorithm encryptionAlgorithm) {
082        this.encryptionAlgorithm = encryptionAlgorithm;
083    }
084}