LeechCraft Azoth  0.6.70-16373-g319c272718
Modular multiprotocol IM plugin for LeechCraft
icanhavesslerrors.h
Go to the documentation of this file.
1 /**********************************************************************
2  * LeechCraft - modular cross-platform feature rich internet client.
3  * Copyright (C) 2006-2014 Georg Rudoy
4  *
5  * Distributed under the Boost Software License, Version 1.0.
6  * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7  **********************************************************************/
8 
9 #pragma once
10 
11 #include <memory>
12 #include <QtPlugin>
13 
14 template<typename>
15 class QList;
16 
17 class QSslError;
18 
19 namespace LC
20 {
21 namespace Azoth
22 {
24  {
25  protected:
26  virtual ~ICanHaveSslErrors () = default;
27  public:
29  {
30  protected:
31  virtual ~ISslErrorsReaction () = default;
32  public:
33  virtual void Ignore () = 0;
34  virtual void Abort () = 0;
35  };
36 
37  using ISslErrorsReaction_ptr = std::shared_ptr<ISslErrorsReaction>;
38 
39  virtual QObject* GetQObject () = 0;
40  protected:
41  virtual void sslErrors (const QList<QSslError>&, const ISslErrorsReaction_ptr&) = 0;
42  };
43 }
44 }
45 
46 Q_DECLARE_INTERFACE (LC::Azoth::ICanHaveSslErrors,
47  "org.LeechCraft.Azoth.ICanHaveSslErrors/1.0")
virtual ~ICanHaveSslErrors()=default
virtual void sslErrors(const QList< QSslError > &, const ISslErrorsReaction_ptr &)=0
virtual QObject * GetQObject()=0
std::shared_ptr< ISslErrorsReaction > ISslErrorsReaction_ptr