// Path: java-ca-lib/src/main/java/io/github/olivierlemasle/ca/CA.java
// public static DnBuilder dn() {
//   return new DnBuilderImpl();
// }
// 
// Path: java-ca-lib/src/main/java/io/github/olivierlemasle/ca/DistinguishedName.java
// public interface DistinguishedName {
// 
//   public X500Name getX500Name();
// 
//   public X500Principal getX500Principal();
// 
//   public byte[] getEncoded();
// 
//   public String getName();
// }
// 
// Path: java-ca-lib/src/main/java/io/github/olivierlemasle/ca/RootCertificate.java
// public interface RootCertificate extends CertificateWithPrivateKey {
// 
//   public Signer signCsr(final CSR request);
// 
// }


import static io.github.olivierlemasle.ca.CA.dn;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.github.olivierlemasle.ca.DistinguishedName;
import io.github.olivierlemasle.ca.RootCertificate;
package io.github.olivierlemasle.caweb.api;




public class CertificateAuthority {
  private RootCertificate caCertificate;

  public CertificateAuthority() {
    // Jackson
  }

  public CertificateAuthority(final RootCertificate caCertificate) {
    this.caCertificate = caCertificate;
  }

  @JsonIgnore
  public RootCertificate getCaCertificate() {
    return caCertificate;
  }

  @JsonProperty
// Path: java-ca-lib/src/main/java/io/github/olivierlemasle/ca/CA.java
// public static DnBuilder dn() {
//   return new DnBuilderImpl();
// }
// 
// Path: java-ca-lib/src/main/java/io/github/olivierlemasle/ca/DistinguishedName.java
// public interface DistinguishedName {
// 
//   public X500Name getX500Name();
// 
//   public X500Principal getX500Principal();
// 
//   public byte[] getEncoded();
// 
//   public String getName();
// }
// 
// Path: java-ca-lib/src/main/java/io/github/olivierlemasle/ca/RootCertificate.java
// public interface RootCertificate extends CertificateWithPrivateKey {
// 
//   public Signer signCsr(final CSR request);
// 
// }


// Path: ca-api/src/main/java/io/github/olivierlemasle/caweb/api/CertificateAuthority.java
import static io.github.olivierlemasle.ca.CA.dn;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.github.olivierlemasle.ca.DistinguishedName;
import io.github.olivierlemasle.ca.RootCertificate;

package io.github.olivierlemasle.caweb.api;




public class CertificateAuthority {
  private RootCertificate caCertificate;

  public CertificateAuthority() {
    // Jackson
  }

  public CertificateAuthority(final RootCertificate caCertificate) {
    this.caCertificate = caCertificate;
  }

  @JsonIgnore
  public RootCertificate getCaCertificate() {
    return caCertificate;
  }

  @JsonProperty
  public DistinguishedName getSubject() {