class HTTPClient::JRubySSLSocket::TrustStoreLoader

def add(cert_source)

def add(cert_source)
  return if cert_source == :default
  if cert_source.respond_to?(:to_pem)
    pem = cert_source.to_pem
    load_pem(pem)
  elsif File.directory?(cert_source)
    warn("#{cert_source}: directory not yet supported")
    return
  else
    pem = nil
    File.read(cert_source).each_line do |line|
      case line
      when /-----BEGIN CERTIFICATE-----/
        pem = ''
      when /-----END CERTIFICATE-----/
        load_pem(pem)
        # keep parsing in case where multiple certificates in a file
      else
        if pem
          pem << line
        end
      end
    end
  end
end

def initialize

def initialize
  @trust_store = KeyStore.getInstance('JKS')
  @trust_store.load(nil)
  @size = 0
end

def load_pem(pem)

def load_pem(pem)
  cert = PEMUtils.read_certificate(pem)
  @size += 1
  @trust_store.setCertificateEntry("cert_#{@size}", cert)
end

def trust_store

def trust_store
  if @size == 0
    nil
  else
    @trust_store
  end
end