/*
 * Interface wrapper code.
 *
 * Generated by SIP 6.6.2
 *
 * Copyright (c) 2022 Riverbank Computing Limited <info@riverbankcomputing.com>
 * 
 * This file is part of PyQtWebEngine.
 * 
 * This file may be used under the terms of the GNU General Public License
 * version 3.0 as published by the Free Software Foundation and appearing in
 * the file LICENSE included in the packaging of this file.  Please review the
 * following information to ensure the GNU General Public License version 3.0
 * requirements will be met: http://www.gnu.org/copyleft/gpl.html.
 * 
 * If you do not wish to use this file under the terms of the GPL version 3.0
 * then you may purchase a commercial license.  For more information contact
 * info@riverbankcomputing.com.
 * 
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 */

#include "sipAPIQtWebEngineCore.h"

#line 29 "/build/pyqt5-webengine/src/PyQtWebEngine-5.15.6/sip/QtWebEngineCore/qwebengineclientcertificatestore.sip"
#include <qwebengineclientcertificatestore.h>
#line 29 "/build/pyqt5-webengine/src/PyQtWebEngine-5.15.6/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineClientCertificateStore.cpp"

#line 28 "/usr/lib/python3.10/site-packages/PyQt5/bindings/QtNetwork/qsslcertificate.sip"
#include <qsslcertificate.h>
#line 33 "/build/pyqt5-webengine/src/PyQtWebEngine-5.15.6/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineClientCertificateStore.cpp"
#line 28 "/usr/lib/python3.10/site-packages/PyQt5/bindings/QtCore/qpycore_qvector.sip"
#include <qvector.h>
#line 36 "/build/pyqt5-webengine/src/PyQtWebEngine-5.15.6/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineClientCertificateStore.cpp"
#line 28 "/usr/lib/python3.10/site-packages/PyQt5/bindings/QtNetwork/qsslkey.sip"
#include <qsslkey.h>
#line 39 "/build/pyqt5-webengine/src/PyQtWebEngine-5.15.6/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineClientCertificateStore.cpp"


PyDoc_STRVAR(doc_QWebEngineClientCertificateStore_add, "add(self, QSslCertificate, QSslKey)");

extern "C" {static PyObject *meth_QWebEngineClientCertificateStore_add(PyObject *, PyObject *);}
static PyObject *meth_QWebEngineClientCertificateStore_add(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QSslCertificate* a0;
        const  ::QSslKey* a1;
         ::QWebEngineClientCertificateStore *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9J9", &sipSelf, sipType_QWebEngineClientCertificateStore, &sipCpp, sipType_QSslCertificate, &a0, sipType_QSslKey, &a1))
        {
            sipCpp->add(*a0,*a1);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QWebEngineClientCertificateStore, sipName_add, doc_QWebEngineClientCertificateStore_add);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QWebEngineClientCertificateStore_certificates, "certificates(self) -> List[QSslCertificate]");

extern "C" {static PyObject *meth_QWebEngineClientCertificateStore_certificates(PyObject *, PyObject *);}
static PyObject *meth_QWebEngineClientCertificateStore_certificates(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QWebEngineClientCertificateStore *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QWebEngineClientCertificateStore, &sipCpp))
        {
            QVector< ::QSslCertificate>*sipRes;

            sipRes = new QVector< ::QSslCertificate>(sipCpp->certificates());

            return sipConvertFromNewType(sipRes,sipType_QVector_0100QSslCertificate,SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QWebEngineClientCertificateStore, sipName_certificates, doc_QWebEngineClientCertificateStore_certificates);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QWebEngineClientCertificateStore_remove, "remove(self, QSslCertificate)");

extern "C" {static PyObject *meth_QWebEngineClientCertificateStore_remove(PyObject *, PyObject *);}
static PyObject *meth_QWebEngineClientCertificateStore_remove(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QSslCertificate* a0;
         ::QWebEngineClientCertificateStore *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9", &sipSelf, sipType_QWebEngineClientCertificateStore, &sipCpp, sipType_QSslCertificate, &a0))
        {
            sipCpp->remove(*a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QWebEngineClientCertificateStore, sipName_remove, doc_QWebEngineClientCertificateStore_remove);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QWebEngineClientCertificateStore_clear, "clear(self)");

extern "C" {static PyObject *meth_QWebEngineClientCertificateStore_clear(PyObject *, PyObject *);}
static PyObject *meth_QWebEngineClientCertificateStore_clear(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
         ::QWebEngineClientCertificateStore *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QWebEngineClientCertificateStore, &sipCpp))
        {
            sipCpp->clear();

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QWebEngineClientCertificateStore, sipName_clear, doc_QWebEngineClientCertificateStore_clear);

    return SIP_NULLPTR;
}


/* Call the instance's destructor. */
extern "C" {static void release_QWebEngineClientCertificateStore(void *, int);}
static void release_QWebEngineClientCertificateStore(void *, int)
{
}


static PyMethodDef methods_QWebEngineClientCertificateStore[] = {
    {sipName_add, meth_QWebEngineClientCertificateStore_add, METH_VARARGS, doc_QWebEngineClientCertificateStore_add},
    {sipName_certificates, meth_QWebEngineClientCertificateStore_certificates, METH_VARARGS, doc_QWebEngineClientCertificateStore_certificates},
    {sipName_clear, meth_QWebEngineClientCertificateStore_clear, METH_VARARGS, doc_QWebEngineClientCertificateStore_clear},
    {sipName_remove, meth_QWebEngineClientCertificateStore_remove, METH_VARARGS, doc_QWebEngineClientCertificateStore_remove}
};


static pyqt5ClassPluginDef plugin_QWebEngineClientCertificateStore = {
    SIP_NULLPTR,
    0,
    SIP_NULLPTR,
    SIP_NULLPTR
};


sipClassTypeDef sipTypeDef_QtWebEngineCore_QWebEngineClientCertificateStore = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_SUPER_INIT|SIP_TYPE_LIMITED_API|SIP_TYPE_CLASS,
        sipNameNr_QWebEngineClientCertificateStore,
        SIP_NULLPTR,
        &plugin_QWebEngineClientCertificateStore
    },
    {
        sipNameNr_QWebEngineClientCertificateStore,
        {0, 0, 1},
        4, methods_QWebEngineClientCertificateStore,
        0, SIP_NULLPTR,
        0, SIP_NULLPTR,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    SIP_NULLPTR,
    -1,
    sipNameNr_sip_simplewrapper,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_QWebEngineClientCertificateStore,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    0,
};
