IP Library Granted Patent US 9,690,757
Granted Patent B2
US 9,690,757 · App. 15/102,761 · Granted Jun 27, 2017

Method of and system for processing content of a web resource in a browser application

Inventors: Konstantin Sergeevitch Nikitin (Kaluga Region, RU); Vyacheslav Olegovich Chigrin (Kharkov, RU)
Assignee: YANDEX EUROPE AG
G06F17/2205G06F3/065G06F3/067G06F3/0619G06F17/2247G11C7/1072H04L67/02G06F3/0483
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,690,757
App. No.
15/102,761
Granted
Jun 27, 2017
Kind
B2
Abstract

There is disclosed a method of storing content of a web page, web page having a static object and a dynamic object, the web page being displayed in a browser application executed on an electronic device, the electronic device having a memory. The method can be executed by the electronic device. The method comprises: storing, in an archive file, an indication of the static object; storing, in the archive file, an indication of the dynamic object; identifying at least one binding between the dynamic object to the static object, the binding being representative of a link therebetween; storing an indication of the binding in the archive file; storing the archive file in the memory.

Claims (55)

1. A method of storing content of a web page, the web page having a static object and a dynamic object, the web page being displayed in a browser application executed on an electronic device, the electronic device having a memory, the method being executed by the electronic device, the method comprising:

storing, in an archive file, an indication of the static object;

storing, in the archive file, an indication of the dynamic object;

identifying at least one binding between the dynamic object to the static object, the binding being representative of a link therebetween;

storing an indication of the binding in the archive file; and

storing the archive file in the memory; and wherein:

said archive file comprises an MHTML file;

said storing an indication of the binding comprises maintaining a reference tracker, the reference tracker for mapping the static object to an associated hibernate-ID, the hibernate-ID being representative of the binding;

said storing an indication of the binding further comprises maintaining an element information table mapping an identifier of the static object and the associated hibernate-id, the mapping having a unique record identifier;

said static object comprises an associated object, and wherein the dynamic object comprises a respective binding to the static object and the associated object, and wherein the element information mapping maintains a respective hibernate-ID identifier for the static object and the associated object in association with the unique record identifier; and

said storing the indication of the static object comprises storing a DOM tree element in the MHTML file, the method further comprising augmenting a record associated with the DOM tree element in the MHTML file with an indication of the unique record identifier.

2. The method of claim 1 , further comprising augmenting a record associated with the dynamic object in the JavaScript heap with an indication of the hibernate-ID of the static object.

3. A method of storing content of a web page, the web page having a static object and a dynamic object, the web page being displayed in a browser application executed on an electronic device, the electronic device having a memory, the method being executed by the electronic device, the method comprising:

storing, in an archive file, an indication of the static object;

storing, in the archive file, an indication of the dynamic object;

identifying at least one binding between the dynamic object to the static object, the binding being representative of a link therebetween;

storing an indication of the binding in the archive file;

storing the archive file in the memory; and wherein:

said archive file comprises an MHTML file;

said storing the indication of the static object comprises storing a DOM tree element in the MHTML file;

said storing the indication of the dynamic object comprises serializing a JavaScript heap and storing an indication thereof in the MHTML file; and

said storing the indication of the binding comprises:

maintaining a reference tracker, mapping the static object to an associated hibernate-ID and maintaining an element information table mapping an identifier of the static object and the associated hibernate-id, the mapping having a unique record identifier;

augmenting a record associated with the DOM tree element in the MHTML file with an indication of the unique record identifier; and

augmenting a record associated with the dynamic object in the JavaScript heap with an indication of the hibernate-ID of the static object.

4. The method of claim 3 , wherein said static object comprises an associated object, and wherein the dynamic object comprises a respective binding to the static object and the associated object, and wherein the element information mapping maintains a respective hibernate-ID identifier for the static object and the associated object in association with the unique record identifier.

5. The method of claim 3 , further comprising restoring the archive file.

6. The method of claim 5 , wherein said restoring comprises:

retrieving the static object from the DOM tree element in the MHTML file;

retrieving the dynamic object from the JavaScript heap stored in the MHTML file;

retrieving the binding from the MHTML file.

7. The method of claim 6 , wherein said retrieving the binding from the MHTML file comprises:

responsive to the record associated with the DOM tree element in the MHTML file containing the indication of the unique record identifier, accessing the element information table to retrieve the associated hibernate-id;

re-registering said hibernate-ID and an associated object identifier in the reference tracker;

responsive to detection of the indication of the hibernate-ID in the record associated with the dynamic object in the JavaScript heap, accessing the reference tracker to retrieve the associated object identifier;

based on the associated object identifier, restoring the binding.

8. The method of claim 1 , wherein said method is executed as part of tab hibernating routine, the hibernation routine being associated with a tab in the browser application associated with the web page.

9. The method of claim 8 , wherein said tab hibernating routine is executed in response to detection of user inactivity in association with the tab.

10. The method of claim 8 , further comprising executing a restoration routine.

11. The method of claim 10 , wherein said restoration routine is executed in response to a user re-activating the tab.

12. The method of claim 1 , wherein said memory comprises a random access memory and a hard drive memory, and wherein the static object and the dynamic object are stored in the random access memory prior to the execution of the method and in the hard drive memory after execution of the method.

13. A server comprising:

a communication interface for communication with an electronic device via a communication network;

a memory; and

a processor operationally connected with the communication interface and the memory, the processor configured to store content of a web page, the web page having a static object and a dynamic object, the web page being displayed in a browser application executed by the processor, the processor being further configured to:

store, in an archive file, an indication of the static object;

store, in the archive file, an indication of the dynamic object;

identify at least one binding between the dynamic object to the static object, the binding being representative of a link therebetween;

store an indication of the binding in the archive file;

store the archive file in the memory; and wherein:

said archive file comprises an MHTML file;

said storing an indication of the binding comprises maintaining a reference tracker, the reference tracker for mapping the static object to an associated hibernate-ID, the hibernate-ID being representative of the binding;

said storing an indication of the binding further comprises maintaining an element information table mapping an identifier of the static object and the associated hibernate-id, the mapping having a unique record identifier;

said static object comprises an associated object, and wherein the dynamic object comprises a respective binding to the static object and the associated object, and wherein the element information mapping maintains a respective hibernate-ID identifier for the static object and the associated object in association with the unique record identifier; and

said storing the indication of the static object comprises storing a DOM tree element in the MHTML file, the method further comprising augmenting a record associated with the DOM tree element in the MHTML file with an indication of the unique record identifier.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2024
From: DIRECT CURSUS TECHNOLOGY L.L.C
To: Y.E. HUB ARMENIA LLC
Reel/Frame 068524/0184 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2023
From: YANDEX EUROPE AG
To: DIRECT CURSUS TECHNOLOGY L.L.C
Reel/Frame 065692/0720 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2016
From: NIKITIN, KONSTANTIN SERGEEVITCH; CHIGRIN, VYACHESLAV OLEGOVICH
To: YANDEX LLC
Reel/Frame 040595/0715 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2016
From: YANDEX LLC
To: YANDEX EUROPE AG
Reel/Frame 040595/0730 →
Priority Claims (1)
RU 2014139172 · Sep 29, 2014 · national
Continuity (1)
Related Publication 20170031871A1 · Feb 2, 2017