Пример #1
0
String InspectorDOMStorageAgent::storageId(Storage* storage)
{
    ASSERT(storage);
    Frame* frame = storage->frame();
    ExceptionCode ec = 0;
    bool isLocalStorage = (frame->document()->domWindow()->localStorage(ec) == storage && !ec);
    return storageId(frame->document()->securityOrigin(), isLocalStorage);
}
Пример #2
0
String InspectorDOMStorageAgent::storageId(Storage* storage)
{
    ASSERT(storage);
    Document* document = storage->frame()->document();
    ASSERT(document);
    DOMWindow* window = document->domWindow();
    ASSERT(window);
    RefPtr<SecurityOrigin> securityOrigin = document->securityOrigin();
    bool isLocalStorage = window->optionalLocalStorage() == storage;
    return storageId(securityOrigin.get(), isLocalStorage)->toJSONString();
}
Пример #3
0
void InspectorDOMStorageAgent::didDispatchDOMStorageEvent(const String&, const String&, const String&, StorageType storageType, SecurityOrigin* securityOrigin, Page*)
{
    if (!m_frontend || !m_enabled)
        return;

    String id = storageId(securityOrigin, storageType == LocalStorage);

    if (id.isEmpty())
        return;

    m_frontend->domstorage()->domStorageUpdated(id);
}
Пример #4
0
void InspectorDOMStorageAgent::didDispatchDOMStorageEvent(const String& key, const String& oldValue, const String& newValue, StorageType storageType, SecurityOrigin* securityOrigin)
{
    if (!m_frontend || !isEnabled())
        return;

    RefPtr<TypeBuilder::DOMStorage::StorageId> id = storageId(securityOrigin, storageType == LocalStorage);

    if (key.isNull())
        m_frontend->domstorage()->domStorageItemsCleared(id);
    else if (newValue.isNull())
        m_frontend->domstorage()->domStorageItemRemoved(id, key);
    else if (oldValue.isNull())
        m_frontend->domstorage()->domStorageItemAdded(id, key, newValue);
    else
        m_frontend->domstorage()->domStorageItemUpdated(id, key, oldValue, newValue);
}
Пример #5
0
void InspectorDOMStorageAgent::didDispatchDOMStorageEvent(
    const String& key,
    const String& oldValue,
    const String& newValue,
    StorageType storageType,
    SecurityOrigin* securityOrigin) {
  if (!frontend())
    return;

  std::unique_ptr<protocol::DOMStorage::StorageId> id =
      storageId(securityOrigin, storageType == LocalStorage);

  if (key.isNull())
    frontend()->domStorageItemsCleared(std::move(id));
  else if (newValue.isNull())
    frontend()->domStorageItemRemoved(std::move(id), key);
  else if (oldValue.isNull())
    frontend()->domStorageItemAdded(std::move(id), key, newValue);
  else
    frontend()->domStorageItemUpdated(std::move(id), key, oldValue, newValue);
}