aboutsummaryrefslogtreecommitdiffstats
path: root/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/common/serializers/X509CertificateListDeserializer.java
blob: 7d77fd0e4b42993428f1ea02369f505567d8f7e9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.athenz.client.common.serializers;

import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;
import com.yahoo.security.X509CertificateUtils;

import java.io.IOException;
import java.security.cert.X509Certificate;
import java.util.List;

/**
 * @author bjorncs
 */
public class X509CertificateListDeserializer extends JsonDeserializer<List<X509Certificate>> {

    @Override
    public List<X509Certificate> deserialize(JsonParser parser, DeserializationContext ctxt) throws IOException {
        return X509CertificateUtils.certificateListFromPem(parser.getValueAsString());
    }
}