AltSvcTransactionParent.h (1534B)
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 #ifndef AltSvcTransactionParent_h__ 7 #define AltSvcTransactionParent_h__ 8 9 #include "mozilla/net/PAltSvcTransactionParent.h" 10 #include "mozilla/net/SpeculativeTransaction.h" 11 12 namespace mozilla { 13 namespace net { 14 15 class AltSvcMappingValidator; 16 17 // 03d22e57-c364-4871-989a-6593eb909d24 18 #define ALTSVCTRANSACTIONPARENT_IID \ 19 {0x03d22e57, 0xc364, 0x4871, {0x98, 0x9a, 0x65, 0x93, 0xeb, 0x90, 0x9d, 0x24}} 20 21 class AltSvcTransactionParent final : public PAltSvcTransactionParent, 22 public SpeculativeTransaction { 23 public: 24 NS_DECL_ISUPPORTS_INHERITED 25 NS_INLINE_DECL_STATIC_IID(ALTSVCTRANSACTIONPARENT_IID) 26 27 explicit AltSvcTransactionParent(nsHttpConnectionInfo* aConnInfo, 28 nsIInterfaceRequestor* aCallbacks, 29 uint32_t aCaps, 30 AltSvcMappingValidator* aValidator); 31 32 bool Init(); 33 mozilla::ipc::IPCResult Recv__delete__(const bool& aValidateResult); 34 mozilla::ipc::IPCResult RecvOnTransactionClose(const bool& aValidateResult); 35 36 private: 37 virtual ~AltSvcTransactionParent(); 38 39 RefPtr<AltSvcMappingValidator> mValidator; 40 }; 41 42 } // namespace net 43 } // namespace mozilla 44 45 #endif // AltSvcTransactionParent_h__