1. A computer-implemented system comprising:
a communications module to receive a request for a web page;
a document object model (DOM) interceptor to intercept an original document object model (DOM) provided by a web application in response to the request;
an activator to activate a browser emulator, the browser emulator being a Java runtime configured to execute JavaScript code; and
a DOM manipulator to replace JavaScript code in the original DOM with an event interceptor to produce a modified DOM, the modified DOM corresponding to the requested web page, the event interceptor to facilitate communications over a specialized communications channel between a browser application that renders the web page and the browser emulator.
2. The system of claim 1, wherein the communications module is to:
generate the requested web page corresponding to the modified DOM; and
provide the web page to the browser application.
3. The system of claim 1, wherein the browser emulator is to:
receive an event from the browser application that renders the web page via the specialized communications channel;
execute JavaScript code associated with the event; and
propagate a result of the execution of the JavaScript code associated with the event to the browser application.
4. The system of claim 3, wherein the browser emulator is to update the modified DOM in response to the execution of the JavaScript code associated with the event.
5. The system of claim 3, wherein the event is associated with a user action.
6. The system of claim 5, wherein the result of the execution of the JavaScript code associated with the event is associated with a visual presentation of the web page.
7. The system of claim 1, wherein the browser emulator is in communication with a debugging module, the browser emulator to provide data associated with execution of the JavaScript code to the debugging module.
8. The system of claim 1, wherein the browser emulator is provided as part of an integrated development environment.
9. The system of claim 1, wherein the browser emulator and the browser application that renders the web page are provided on the same hardware.
10. The system of claim 1, wherein the event interceptor is provided according to a type of the browser application that renders the web page.
11. A computer-implemented method comprising:
using one or more processors to perform at least some of operations of:
receiving a request for a web page;
intercepting an original document object model (DOM) provided by a web application in response to the request;
activating a browser emulator, the browser emulator being a Java runtime configured to execute JavaScript code; and
replacing JavaScript code in the original DOM with an event interceptor to produce a modified DOM, the modified DOM corresponding to the requested web page, the event interceptor to facilitate communications over a specialized communications channel between a browser application that renders the web page and the browser emulator.
12. The method of claim 11, comprising:
generating the requested web page corresponding to the modified DOM; and
providing the web page to the browser application.
13. The method of claim 11, comprising:
receiving an event from the browser application that renders the web page via the specialized communications channel;
executing JavaScript code associated with the event; and
propagating a result of the execution of the JavaScript code associated with the event to the browser application.
14. The method of claim 13, comprising updating the modified DOM in response to the executing of the JavaScript code associated with the event.
15. The method of claim 13, wherein the event is associated with a user action.
16. The method of claim 15, wherein the result of the executing of the JavaScript code associated with the event is associated with a visual presentation of the web page.
17. The method of claim 13, comprising providing data associated with the executing of the JavaScript code to a debugging module.
18. The method of claim 13, wherein the executing of the JavaScript code is performed in an integrated development environment.
19. The method of claim 11, comprising:
determining a vendor-specific type of the browser application; and
replacing the JavaScript code in the original DOM with the event interceptor based on the vendor-specific type of the browser application.
20. A machine-readable medium having instruction data to cause a machine to perform operations comprising:
receive a request for a web page;
intercept an original document object model (DOM) provided by a web application in response to the request;
activate a browser emulator, the browser emulator being a Java runtime configured to execute JavaScript code; and
replace JavaScript code in the original DOM with an event interceptor to produce a modified DOM, the modified DOM corresponding to the requested web page, the event interceptor to facilitate communications over a specialized communications channel between a browser application that renders the web page and the browser emulator.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method for building an index, comprising:
storing, using a computer with a processor, a current version of a store having a tokenized version of each document in a corpus of documents, a delta store accumulating changes to the current version of the store, and previously generated global analysis computations, wherein the previously generated global analysis computations include an anchor text table, a rank table, and a duplicates table;
building a new version of the index and outputting a raw anchor text table and a raw duplicates table a by accessing the current version of the store, the delta store, and the previously generated global analysis, computations; and
generating new global analysis computations by accessing the raw anchor text table, the raw duplicates table, and the previously generated global analysis computations, wherein the new global analysis computations include a new anchor text table, a new rank table, and a new duplicates table.
2. The method of claim 1, further comprising:
building a new version of a delta store using the previously generated global analysis computations, a current version of a delta store, and newly crawled documents.
3. The method of claim 1, further comprising:
building a new version of a delta index using the previously generated global analysis computations, a current version of a delta store, and newly crawled documents.
4. The method of claim 3, wherein the creation of the new delta index allows new documents to be indexed and retrieved before global analysis computations for the new documents are performed.
5. The method of claim 3, further comprising:
receiving a query requesting retrieval of one or more documents; and
accessing the new version of the index and the new version of the delta index to retrieve one or more documents.
6. The method of claim 3, wherein generating the new global analysis computations is performed in parallel with creation of the new version of the delta index.
7. The method of claim 1, wherein the new global analysis computations are generated using results of recent processing of documents existing at a certain point in time.
8. An article of manufacture comprising a tangible computer readable storage medium storing a program for building an index, wherein the program, when executed by a processor of a computer, causes operations to be performed, the operations comprising:
storing a current version of a store having a tokenized version of each document in a corpus of documents, a delta store accumulating changes to the current version of the store, and previously generated global analysis computations, wherein the previously generated global analysis computations include an anchor text table, a rank table, and a duplicates table;
building a new version of the index and outputting a raw anchor text table and a raw duplicates table by accessing the current version of the store storei, the delta store, and the previously generated global analysis computations; and
generating new global analysis computations by accessing the raw anchor text table, the raw duplicates table, and the previously generated global analysis computations, wherein the new global analysis computations include a new anchor text table, a new rank table, and a new duplicates table.
9. The article of manufacture of claim 8, wherein the operations for index creation further comprise:
building a new version of a delta store using the previously generated global analysis computations, a current version of a delta store, and newly crawled documents.
10. The article of manufacture of claim 8, wherein the operations further comprise:
building a new version of a delta index using the previously generated global analysis computations, a current version of a delta store, and newly crawled documents.
11. The article of manufacture of claim 10, wherein the creation of the new delta index allows new documents to be indexed and retrieved before global analysis computations for the new documents are performed.
12. The article of manufacture of claim 10, wherein the operations further comprise:
receiving a query requesting retrieval of one or more documents; and
accessing the new version of the index and the new version of the delta index to retrieve one or more documents.
13. The article of manufacture of claim 10, wherein generating the new global analysis computations is performed in parallel with creation of the new version of the delta index.
14. The article of manufacture of claim 8, wherein the new global analysis computations are generated using results of recent processing of documents existing at a certain point in time.
15. A computer system, comprising:
a processor; and
hardware logic for:
storing a current version of a store having a tokenized version of each document in a corpus of documents, a delta store accumulating changes to the current version of the store, and previously generated global analysis computations, wherein the previously generated global analysis computations include an anchor text table, a rank table, and a duplicates table;
building a new version of the index and outputting a raw anchor text table and a raw duplicates table by accessing the current version of the store, the delta store, and the previously generated global analysis computations; and
generating new global analysis computations by accessing the raw anchor text table, the raw duplicates table, and the previously generated global analysis computations, wherein the new global analysis computations include a new anchor text table, a new rank table, and a new duplicates table.
16. The computer system of claim 15, wherein the logic for index creation further comprises:
building a new version of a delta store using the previously generated global analysis computations, a current version of a delta store, and newly crawled documents.
17. The computer system of claim 15, wherein the logic further comprises:
building a new version of a delta index using the previously generated global analysis computations, a current version of a delta store, and newly crawled documents.
18. The computer system of claim 17, wherein the creation of the new delta index allows new documents to be indexed and retrieved before global analysis computations for the new documents are performed.
19. The computer system of claim 17, wherein the logic further comprises:
receiving a query requesting retrieval of one or more documents; and
accessing the new version of the index and the new version of the delta index to retrieve one or more documents.
20. The computer system of claim 17, wherein generating the new global analysis computations is performed in parallel with creation of the new version of the delta index.
21. The computer system of claim 15, wherein the new global analysis computations are generated using results of recent processing of documents existing at a certain point in time.