
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __java_security_cert_CertPathBuilderSpi__
#define __java_security_cert_CertPathBuilderSpi__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace java
  {
    namespace security
    {
      namespace cert
      {
          class CertPathBuilderResult;
          class CertPathBuilderSpi;
          class CertPathParameters;
      }
    }
  }
}

class java::security::cert::CertPathBuilderSpi : public ::java::lang::Object
{

public:
  CertPathBuilderSpi();
  virtual ::java::security::cert::CertPathBuilderResult * engineBuild(::java::security::cert::CertPathParameters *) = 0;
  static ::java::lang::Class class$;
};

#endif // __java_security_cert_CertPathBuilderSpi__
