Home | History | Annotate | Download | only in private
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef PPAPI_CPP_PRIVATE_X509_CERTIFICATE_PRIVATE_H_
      6 #define PPAPI_CPP_PRIVATE_X509_CERTIFICATE_PRIVATE_H_
      7 
      8 #include "ppapi/c/pp_stdint.h"
      9 #include "ppapi/c/private/ppb_x509_certificate_private.h"
     10 #include "ppapi/cpp/resource.h"
     11 
     12 namespace pp {
     13 
     14 class Var;
     15 
     16 class X509CertificatePrivate : public Resource {
     17  public:
     18   // Creates an is_null() object.
     19   X509CertificatePrivate();
     20   X509CertificatePrivate(PassRef, PP_Resource resource);
     21   explicit X509CertificatePrivate(const InstanceHandle& instance);
     22 
     23   // Returns true if the required interface is available.
     24   static bool IsAvailable();
     25 
     26   // Creates a new certificate from a DER-encoded representation. Returns true
     27   // if the certificate was successfully created.
     28   bool Initialize(const char* bytes, uint32_t length);
     29   // Returns the specified field as a |Var|.
     30   Var GetField(PP_X509Certificate_Private_Field field) const;
     31 };
     32 
     33 }  // namespace pp
     34 
     35 #endif  // PPAPI_CPP_PRIVATE_X509_CERTIFICATE_PRIVATE_H_
     36