Package io.fathom.cloud.secrets.services

Source Code of io.fathom.cloud.secrets.services.SecretItemImpl

package io.fathom.cloud.secrets.services;

import io.fathom.cloud.protobuf.SecretsModel.SecretRecordItemData;
import io.fathom.cloud.services.SecretService.SecretItem;

import org.keyczar.Crypter;
import org.keyczar.exceptions.KeyczarException;

public class SecretItemImpl implements SecretItem {

    private final SecretImpl parent;
    private final SecretRecordItemData data;

    public SecretItemImpl(SecretImpl parent, SecretRecordItemData data) {
        this.parent = parent;
        this.data = data;
    }

    @Override
    public byte[] getBytes() {
        Crypter crypter = parent.getCrypter();
        byte[] plaintext;
        try {
            plaintext = crypter.decrypt(data.getCiphertext().toByteArray());
        } catch (KeyczarException e) {
            throw new IllegalStateException("Error decrypting secret", e);
        }
        return plaintext;
    }

}
TOP

Related Classes of io.fathom.cloud.secrets.services.SecretItemImpl

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.