IP Library Granted Patent US 8,352,922
Granted Patent B2
US 8,352,922 · App. 12/415,908 · Granted Jan 8, 2013

Date and time simulation for time-sensitive applications

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 8,352,922
App. No.
12/415,908
Granted
Jan 8, 2013
Kind
B2
Abstract

A process for providing a simulated date and/or time to a time-sensitive application is disclosed herein. Such a process may include detecting the invocation of a time handler method configured to retrieve system time. Upon detecting the invocation, the contents of a call stack may be captured and analyzed to determine which requester method initiated the invocation. The process may then determine whether the requester method should receive a real or simulated system time. A real system time may be returned to the requester method in the event it should receive the real system time. A simulated system time may be returned to the requester method in the event it should receive the simulated system time. A corresponding apparatus and computer program product are also disclosed and claimed herein.

Claims (25)

1. An apparatus for providing a simulated date and/or time to a time-sensitive application, the apparatus comprising:

a detection module to detect an invocation of a time handler method, the time handler method configured to retrieve the system time of a computing system;

a capture module to capture the contents of a call stack once the invocation is detected;

a stack walk module to walk the call stack until reaching a requestor method that initiated the invocation;

a stack analysis module to analyze the contents of the call stack to determine which requestor method initiated the invocation;

the stack analysis module further configured to determine whether the requestor method that initiated the invocation is to receive one of a real system time and a simulated system time;

a return module configured to return a real system time in the event the requestor method is to receive the real system time; and

the return module further configured to return a simulated system time in the event the requestor method is to receive the simulated system time.

2. The apparatus of claim 1 , wherein the stack analysis module is further configured to ignore intermediate methods that did not initiate the invocation.

3. The apparatus of claim 1 , wherein the stack analysis module is further configured to reference a configuration file listing requestor methods that are to receive a simulated time.

4. The apparatus of claim 1 , further comprising a call module to call an operating system service that returns the real system time.

5. The apparatus of claim 1 , further comprising a call module to call a time/date simulation application that returns the simulated system time.

6. The apparatus of claim 1 , wherein the requestor method is a java requestor method.

7. A computer program product for providing a simulated date and/or time to a time-sensitive application, the computer program product comprising a computer-readable storage medium having computer-usable program code embodied therein, the computer-usable program code comprising:

computer-usable program code to detect an invocation of a time handler method, the time handler method configured to retrieve the system time of a computing system;

computer-usable program code to capture the contents of a call stack upon detecting the invocation;

computer-usable program code to walk the call stack until reaching a requestor method that initiated the invocation;

computer-usable program code to analyze the contents of the call stack to determine which requestor method initiated the invocation;

computer-usable program code to determine whether the requestor method that initiated the invocation is to receive one of a real system time and a simulated system time;

computer-usable program code to return a real system time in the event the requestor method is to receive the real system time; and

computer-usable program code to return a simulated system time in the event the requestor method is to receive the simulated system time.

8. The computer program product of claim 7 , further comprising computer-usable program code to ignore intermediate methods that did not initiate the invocation.

9. The computer program product of claim 7 , further comprising computer-usable program code to read a configuration file listing requestor methods that are to receive a simulated time.

10. The computer program product of claim 7 , further comprising computer-usable program code to call an operating system service that returns the real system time.

11. The computer program product of claim 7 , further comprising computer-usable program code to call a time/date simulation application that returns the simulated system time.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: AIRBNB, INC.
Reel/Frame 056427/0193 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2009
From: GRAY-DONALD, TRENT A.; PRICE, MARC W.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 022479/0569 →