Patents Examined by Nathan Price
  • Patent number: 7743391
    Abstract: A flexible architecture component for providing data integration and exchange between a plurality of client applications is disclosed. The client applications are coupled to a network and access respective data sources, wherein the data sources of each of the client applications may be stored in different formats and are not directly accessible by the other client applications. Aspects of the present invention include providing an adapter API that provides a first set of methods for the client applications to use to translate data into XML. Each of the client applications is then modified to invoke the methods in the adapter API to convert data in their respective data sources into XML format and to have the XML formatted data imported into a database on a server, thereby standardizing the data from the data sources.
    Type: Grant
    Filed: July 15, 2003
    Date of Patent: June 22, 2010
    Assignee: LSI Corporation
    Inventors: Ekambaram Balaji, Balaji Ganesan, Chandramouli Srinivasan
  • Patent number: 7559065
    Abstract: In a conventional managed information environment network, event notification mechanisms typically monitor the various nodes and interconnections in the network. In particular configurations of the invention, an event service infrastructure allows an event, or class definition, to define the event and related event data. Invocation of the event includes only the event specific class definition. The infrastructure transparently processes the subsequent reporting and invocation of the appropriate event handler. The event handler, corresponding to the event definition, performs remedial and responsive processing of the event. A developer need only develop entities to subscribe to an event to identify the appropriate handler, and publish the event with any related event data upon detection. Each particular event avoids extraneous event definitions and associated files, thereby relieving the developer from unrelated events and allowing focus on the pertinent events.
    Type: Grant
    Filed: December 31, 2003
    Date of Patent: July 7, 2009
    Assignee: EMC Corporation
    Inventors: Stanislav Sosnovsky, Ruben Michel, Ilya Liubovich
  • Patent number: 7559066
    Abstract: A method of processing a transaction on an end user application and an application server. This is accomplished by initiating the transaction on the end user application in a first language (such as a markup language) with a first application program (such as a Web browser), and transmitting the transaction to the server and converting the transaction from the first language of the first end user application to a language running on the application server, processing the transaction on the application server, and transmitting the transaction from the application server back to the end user application, and converting the transaction from the language running on the application server to the language of the end user application.
    Type: Grant
    Filed: May 4, 2001
    Date of Patent: July 7, 2009
    Assignee: International Business Machines Corporation
    Inventors: Shyh-Mei F. Ho, Andrzej McColl Krasun, Benjamin Johnson Sheats
  • Patent number: 7552446
    Abstract: Complex software systems often require time-based processing, such as delayed or periodic timer event handling. A timer service provides an Application Programming Interface (API) for managing timers, and therefore provides a developer abstraction for representing time-based processing. In operation, the timer service infrastructure employs a plurality of timer events, each having a corresponding timer handler, in which each of the timer events is associated with a generic timer reference, employed by a timer interface. The generic reference, therefore, may refer to any of the plurality of timers. The timer service may disable, or passivate modules including subscribers having timer handlers without disrupting timer continuity and invocation. Upon timer expiration, the timer service enables modules having subscribers to the timer. The timer service therefore seamlessly enables inactive modules upon timer expiration.
    Type: Grant
    Filed: December 31, 2003
    Date of Patent: June 23, 2009
    Assignee: EMC Corporation
    Inventors: Stanislav Sosnovsky, Ruben Michel, Ilya Liubovich
  • Patent number: 7546610
    Abstract: A computer-implemented framework and method for managing application complexes comprising multiple tiers of servers, where servers in a common tier run an identical application and servers in different tiers run different applications, and all the servers work together to provide a specific service, the application complex being definable via an application complex type. The framework has a plugin interface adapted for connection to the framework of a plugin in respect of each application complex type, the plugin encapsulating a relationship between disparate resources composing the respective application complex type and respective characteristics of said resources. A user interface in the framework provides general tasks that are independent of operational semantics of the application complex and is responsive to user operations for interfacing with the framework for defining an instance of the application complex and allowing the user to populate the application complex with servers.
    Type: Grant
    Filed: July 16, 2003
    Date of Patent: June 9, 2009
    Assignee: International Business Machines Corporation
    Inventors: Yariv Aridor, Ofer Biran, Srirama Krishnakumar, Gregory Pruett, Ben-Ami Yassour
  • Patent number: 7543307
    Abstract: An interface is defined using an interface definition language, some portion of which is common to an interface definition language directed to a software object and a means for defining a function name, an argument, and a return value for each function. A server interface for realizing the interface comprises means for inputting for identifying a function name described in the interface definition language, means for inputting and outputting an argument, and means for outputting a return value.
    Type: Grant
    Filed: July 17, 2003
    Date of Patent: June 2, 2009
    Assignee: Okuma Corporation
    Inventors: Hiroshi Oyama, Hiroaki Takada, Morio Fukushima
  • Patent number: 7543301
    Abstract: A system for sharing queues among multiple applications each running inside its own virtual machine.
    Type: Grant
    Filed: October 21, 2003
    Date of Patent: June 2, 2009
    Assignee: Gemstone Systems, Inc.
    Inventors: David J. Monnie, Robert Bretl, Eric J. Zoerner
  • Patent number: 7539997
    Abstract: A method for providing stand-in objects, where relationships among objects are automatically resolved in an object oriented relational database model without the necessity of retrieving data from the database until it is needed. A “fault” class is defined, as well as fault objects whose data haven't yet been fetched from the database. An object that's created for the destination of a relationship whenever an object that includes the relationship is fetched from the database. When an object is fetched that has relationships, fault objects are created to “stand-in” for the destination objects of those relationships. Fault objects transform themselves into the actual enterprise objects—and fetch their data—the first time they're accessed. Subsequently, messages sent to the target objects are responded to by the objects themselves.
    Type: Grant
    Filed: July 31, 2006
    Date of Patent: May 26, 2009
    Assignee: Next Software, Inc.
    Inventors: Richard Williamson, Linus Upson, Daniel Willhite, Jack Greenfield
  • Patent number: 7523458
    Abstract: A method for providing stand-in objects, where relationships among objects are automatically resolved in an object oriented relational database model without the necessity of retrieving data from the database until it is needed. A “fault” class is defined, as well as fault objects whose data haven't yet been fetched from the database. An object that's created for the destination of a relationship whenever an object that includes the relationship is fetched from the database. When an object is fetched that has relationships, fault objects are created to “stand-in” for the destination objects of those relationships. Fault objects transform themselves into the actual enterprise objects—and fetch their data—the first time they're accessed. Subsequently, messages sent to the target objects are responded to by the objects themselves.
    Type: Grant
    Filed: September 23, 2005
    Date of Patent: April 21, 2009
    Assignee: Next Software, Inc.
    Inventors: Richard Williamson, Linus Upson, Daniel Willhite, Jack Greenfield
  • Patent number: 7519970
    Abstract: A user interface template that implements a task pattern for a model class and a model adapter that provides an interface for the application that conforms to the model class are identified. A user interface for the application is created from the identified user interface template and the identified model adapter. The user interface template may include a generic view and a generic controller. The model adapter may provide a business object interface, and may be configured to communicate with the application via a J2EE Connector Architecture (JCA) connector. The user interface template may define an abstract portlet, and creating a user interface includes creating a portlet instance that communicates with the application via the model adapter. The portlet instance may be configured using an application portlet builder portlet. The portlet builder may also identify the user interface template and the model adapter.
    Type: Grant
    Filed: September 29, 2003
    Date of Patent: April 14, 2009
    Assignee: International Business Machines Corporation
    Inventors: Carol Ann Jones, Patrick McGowan, Christopher Joseph Paul, Shankar Ramaswamy, Cesar A. Wong
  • Patent number: 7516458
    Abstract: Methods, systems, and computer program products for job management in the presence of implicit dependency. In a situation where static dependency exists between a first computer job and a second computer job as an initial start condition for the second job, where the start of the second job depends on the completion of the first job, a scheduler determines whether the first job has created a child job, in which case the initial start condition is changed into an adjusted start condition by adding an implicit dependency, whereby the start of the second job is made further to depend at least on the completion of the child job.
    Type: Grant
    Filed: July 31, 2002
    Date of Patent: April 7, 2009
    Assignee: SAP Aktiengesellschaft
    Inventors: Dieter Babutzka, Hans-Georg Klotzek
  • Patent number: 7512955
    Abstract: A method and system are described that enable the construction of declarative applications, such as XDML, that can access DASE System services. DASE System services include among other things, channel switching and electronic program guide application within a broadcast environment established under the standards of Advanced Television System Committee (ATSC). For example, when a Program and System Information (PSI) application is stored in a Document Object Model (DOM) data structure or database, an Electronic Program Guide (EPG) application can be automatically generated using an EPG-transform method in accordance with the present invention. This method would: 1) Convert DOM structure into an XML document; 2) Apply an XML Style Sheet Transformation (XSLT) to the XML document; and 3) Render the resulting XML document using a conventional web-browser or XML renderer.
    Type: Grant
    Filed: August 7, 2001
    Date of Patent: March 31, 2009
    Assignee: Sharp Laboratories of America, Inc.
    Inventor: Eddie M. Schwalb
  • Patent number: 7500247
    Abstract: Systems and techniques for transferring the flow of control between agents. In one general aspect, a computer program product includes instructions operable to cause data processing apparatus to: store data on a first call stack, the first call stack corresponding to and being used by a first agent; suspend the first agent's use of the first call stack; enable a second agent to access the data by using the first call stack; and resume the first agent's use of the first call stack after the second agent is no longer using the first call stack. According to another aspect, a computer program product includes a first set of instructions that is operable to store and access data on a shared call stack; and a second set of instructions that is operable to alternate execution of the first set of instructions between a first agent and a second, distinct agent.
    Type: Grant
    Filed: September 17, 2004
    Date of Patent: March 3, 2009
    Assignee: SAP AG
    Inventor: Oliver Schmidt
  • Patent number: 7493626
    Abstract: One embodiment of the present invention provides a system that facilitates communicating between device drivers within a computing system. The system first determines a need to invoke a function on a remote device from a local device driver, wherein the local device driver is not able to perform the function on the remote device. Once the need has been determined, the system obtains a unique identifier for a remote device driver capable of performing the function on the remote device, and uses the unique identifier to facilitate invoking the function in the remote device driver from the local device driver.
    Type: Grant
    Filed: April 2, 2003
    Date of Patent: February 17, 2009
    Assignee: Apple Inc.
    Inventor: Paul M. Resch
  • Patent number: 7493624
    Abstract: A monitoring system and method are described which simplify the management of complex, multi-tiered networks such as those used in large enterprises. A cluster of application servers are communicatively coupled on a network to serve applications over the network to a plurality of clients. Each of the application servers includes a plurality of server nodes and at least one dispatcher node. Each of the server nodes and dispatchers is assigned its own dedicated management bean (“MBean”) server and each of the MBean servers are associated with a plurality of MBeans for monitoring specified system resources. In addition, one embodiment of the invention includes cluster integration logic which collects and compiles resource data from each of the individual MBeans and provides the compiled data in a predefined organizational structure to a management interface.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: February 17, 2009
    Assignee: SAP AG
    Inventors: Reinhold Kautzleben, Gregor K. Frey, Miroslav R. Petrov
  • Patent number: 7480916
    Abstract: Presented herein is a method and computer program product for generating, in an Integrated Development Environment (IDE), a software application that is designed to exploit services of multiple Enterprise Information Systems (EISs). In one embodiment, the method associates each of multiple Resource and Tooling Adapters (RTAs) with a selected one of multiple Enterprise Information Services (EISs). A software application, which uses multiple EISs and is developed through development facilities of an Integrated Development Environment (IDE), is identified. Source code that is used to access the services of the multiple EISs is generated by plugging multiple corresponding RTAs into the IDE. Using plugged-in multiple corresponding RTAs in the IDE, data is provided, to the IDE, that describes services available from the multiple EISs to the software application.
    Type: Grant
    Filed: October 9, 2002
    Date of Patent: January 20, 2009
    Assignee: International Business Machines Corporation
    Inventors: Michael Beisiegel, Hesham E. Fahmy, Piotr Przybylski
  • Patent number: 7458070
    Abstract: The present invention is a method, system and apparatus for reducing the run-time cost of invoking a server page. The system can include a server page translation unit configured to translate a server page document into program code. The system also can include a program code compiler configured to compile the program code into a program object. Finally, the system can include an optimization processor programmed to modify the program code to permit direct invocation of the program object by external program objects bypassing a server engine typically used to invoke the server page. Notably, in a preferred aspect of the invention the server page can be a JSP. Similarly, the program code can be Java source code and the program object can be a Java class. Finally, the external program objects can be servlets.
    Type: Grant
    Filed: March 5, 2004
    Date of Patent: November 25, 2008
    Assignee: International Business Machines Corporation
    Inventors: Martin J. Presler-Marshall, Scott H. Snyder
  • Patent number: 7430747
    Abstract: Application programming interfaces and methods that provide graph management in a peer-to-peer (P2P) network are provided. More specifically, new and improved P2P application programming interfaces (APIs) and methods for the creation and access of graphs, the retrieval of node and graph information, the addition, modification, deletion and management of records (data), the importation and exportation of graph data, the direct communication between graph nodes, the addition of a security provider to a graph, the setting and retrieval of presence information, the registering for event notifications, and other utility and support functions are presented. Each of these interfaces utilize various parameters that are passed in from an application program that uses these interfaces to manage and utilize graphs. The interfaces return a value that indicates the success or failure of the function. For failures, the interfaces provide an indication as to the problem resulting in the failure.
    Type: Grant
    Filed: December 4, 2002
    Date of Patent: September 30, 2008
    Assignee: Microsoft Corporation
    Inventors: Todd R. Manion, Jeremy L. Dewey, Robert D. Donner, Scott A. Senkeresty, Rohit Gupta, Upshur Warren Parks, III, Noel W. Anderson
  • Patent number: 7181741
    Abstract: An embodiment of the invention provides a method to minimize blocking overhead in upcall based M×N threads. The method includes: setting a limit for the number of outstanding unbound user threads that has blocked and has invoked a blocking upcall mechanism on a particular virtual processor at any point in time; after reaching the limit, if the user threads still blocks, then temporarily disabling the upcall mechanism for these user threads; and re-enabling the upcall mechanism for the user threads during the next context switch time. In another embodiment, an apparatus implemented in a computer to minimize blocking overhead in upcall based M×N threads, includes: a virtual processor configured to track the number of blocked unbound threads that are blocked; and an M×N user space scheduler configured to disable a block upcall handler and an unblock upcall handler for the blocked unbound threads if the number of blocked unbound threads has reached a limit value.
    Type: Grant
    Filed: January 30, 2003
    Date of Patent: February 20, 2007
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Vasudevan Sangili