1/* 2 * Copyright (C) 2012 Google, Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * 2. Redistributions in binary form must reproduce the above copyright 10 * notice, this list of conditions and the following disclaimer in the 11 * documentation and/or other materials provided with the distribution. 12 * 13 * THIS SOFTWARE IS PROVIDED BY GOOGLE INC. ``AS IS'' AND ANY 14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR 17 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 18 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 19 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 20 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 21 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26#include "config.h" 27#include "CachedResourceRequest.h" 28 29#include "CachedResourceLoader.h" 30#include "Document.h" 31#include "Element.h" 32 33namespace WebCore { 34 35CachedResourceRequest::CachedResourceRequest(const ResourceRequest& resourceRequest, const String& charset, ResourceLoadPriority priority) 36 : m_resourceRequest(resourceRequest) 37 , m_charset(charset) 38 , m_options(CachedResourceLoader::defaultCachedResourceOptions()) 39 , m_priority(priority) 40 , m_forPreload(false) 41 , m_defer(NoDefer) 42{ 43} 44 45CachedResourceRequest::CachedResourceRequest(const ResourceRequest& resourceRequest, const ResourceLoaderOptions& options) 46 : m_resourceRequest(resourceRequest) 47 , m_options(options) 48 , m_priority(ResourceLoadPriorityUnresolved) 49 , m_forPreload(false) 50 , m_defer(NoDefer) 51{ 52} 53 54CachedResourceRequest::CachedResourceRequest(const ResourceRequest& resourceRequest, ResourceLoadPriority priority) 55 : m_resourceRequest(resourceRequest) 56 , m_options(CachedResourceLoader::defaultCachedResourceOptions()) 57 , m_priority(priority) 58 , m_forPreload(false) 59 , m_defer(NoDefer) 60{ 61} 62 63CachedResourceRequest::~CachedResourceRequest() 64{ 65} 66 67void CachedResourceRequest::setInitiator(PassRefPtr<Element> element) 68{ 69 ASSERT(!m_initiatorElement && m_initiatorName.isEmpty()); 70 m_initiatorElement = element; 71} 72 73void CachedResourceRequest::setInitiator(const AtomicString& name) 74{ 75 ASSERT(!m_initiatorElement && m_initiatorName.isEmpty()); 76 m_initiatorName = name; 77} 78 79const AtomicString& CachedResourceRequest::initiatorName() const 80{ 81 if (m_initiatorElement) 82 return m_initiatorElement->localName(); 83 if (!m_initiatorName.isEmpty()) 84 return m_initiatorName; 85 86 DEPRECATED_DEFINE_STATIC_LOCAL(AtomicString, defaultName, ("resource", AtomicString::ConstructFromLiteral)); 87 return defaultName; 88} 89 90} // namespace WebCore 91