Sha256: f768ea5e3dc463d418a8ee77a7441cc22a0fbbf873c7263e90334dd145851b14

Contents?: true

Size: 1001 Bytes

Versions: 1

Compression:

Stored size: 1001 Bytes

Contents


module Ccrypto
  class X509Cert
    include TR::CondUtils
 
    def to_der
      @nativeX509.encoded
    end

    def method_missing(mtd, *args, &block)
      @nativeX509.send(mtd, *args, &block)
    end

    def equal?(cert)
      if cert.nil?
        if @nativeX509.nil?
          true
        else
          false
        end
      else

        tcert = self.class.to_java_cert(cert)
        lcert = self.class.to_java_cert(@nativeX509)

        tcert.encoded == @nativeX509.encoded
      end
    end

    def self.to_java_cert(cert)
      raise X509CertException, "Given certificate to convert to Java certificate object is empty" if is_empty?(cert) 

      case cert
      when java.security.cert.Certificate
        cert
      when org.bouncycastle.cert.X509CertificateHolder
        cert.to_java_cert
      when Ccrypto::X509Cert
        to_java_cert(cert.nativeX509)
      else
        raise X509CertException, "Unknown certificate type #{cert} for conversion"
      end

    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ccrypto-java-0.1.0 lib/ccrypto/java/ext/x509_cert.rb