UrlClassifierFeatureResult.cpp (1519B)
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */ 3 /* This Source Code Form is subject to the terms of the Mozilla Public 4 * License, v. 2.0. If a copy of the MPL was not distributed with this 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 7 #include "mozilla/net/UrlClassifierFeatureResult.h" 8 9 namespace mozilla { 10 namespace net { 11 12 UrlClassifierFeatureResult::UrlClassifierFeatureResult( 13 nsIURI* aURI, nsIUrlClassifierFeature* aFeature, const nsACString& aList) 14 : mURI(aURI), mFeature(aFeature), mList(aList) {} 15 16 UrlClassifierFeatureResult::~UrlClassifierFeatureResult() = default; 17 18 NS_IMETHODIMP 19 UrlClassifierFeatureResult::GetUri(nsIURI** aURI) { 20 NS_ENSURE_ARG_POINTER(aURI); 21 nsCOMPtr<nsIURI> uri = mURI; 22 uri.forget(aURI); 23 return NS_OK; 24 } 25 26 NS_IMETHODIMP 27 UrlClassifierFeatureResult::GetFeature(nsIUrlClassifierFeature** aFeature) { 28 NS_ENSURE_ARG_POINTER(aFeature); 29 nsCOMPtr<nsIUrlClassifierFeature> feature = mFeature; 30 feature.forget(aFeature); 31 return NS_OK; 32 } 33 34 NS_IMETHODIMP 35 UrlClassifierFeatureResult::GetList(nsACString& aList) { 36 aList = mList; 37 return NS_OK; 38 } 39 40 NS_INTERFACE_MAP_BEGIN(UrlClassifierFeatureResult) 41 NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIUrlClassifierFeatureResult) 42 NS_INTERFACE_MAP_ENTRY(nsIUrlClassifierFeatureResult) 43 NS_INTERFACE_MAP_END 44 45 NS_IMPL_ADDREF(UrlClassifierFeatureResult) 46 NS_IMPL_RELEASE(UrlClassifierFeatureResult) 47 48 } // namespace net 49 } // namespace mozilla