Patents by Inventor Satish Thatte

Satish Thatte has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9053465
    Abstract: Techniques to manage event notifications are described. An apparatus may comprise a server having an event notification component. The event notification component may have an event agent component to receive a message indicating a change event for line of business (LOB) data, and convert the change event to a defined LOB entity event. The event notification component may have a notification service component to generate a LOB event message for the entity event. The event notification component may have an event database to store the event message in a user event queue. Other embodiments are described and claimed.
    Type: Grant
    Filed: June 25, 2014
    Date of Patent: June 9, 2015
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: LiHui V Xu, Satish Thatte, Rahul J Kapoor, Rolando Jimenez Salgado, Todd Abel, Anuj Bansal
  • Publication number: 20140330916
    Abstract: Techniques to manage event notifications are described. An apparatus may comprise a server having an event notification component. The event notification component may have an event agent component to receive a message indicating a change event for line of business (LOB) data, and convert the change event to a defined LOB entity event. The event notification component may have a notification service component to generate a LOB event message for the entity event. The event notification component may have an event database to store the event message in a user event queue. Other embodiments are described and claimed.
    Type: Application
    Filed: June 25, 2014
    Publication date: November 6, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: LiHui V. Xu, Satish Thatte, Rahul J. Kapoor, Rolando Jimenez Salgado, Todd Abel, Anuj Bansal
  • Patent number: 8805778
    Abstract: Techniques to cross-synchronize data are described. An apparatus may comprise a cross-synchronization component to synchronize multiple data items for different application programs between multiple client devices synchronized using multiple synchronization circuits. The cross-synchronization component may determine whether changes to the multiple data items made at a first client device are propagated to a second client device using consistency information maintained by a consistency group item for a consistency group including the data items. Other embodiments are described and claimed.
    Type: Grant
    Filed: January 31, 2012
    Date of Patent: August 12, 2014
    Assignee: Microsoft Corporation
    Inventors: Ricard Roma i Dalfo, Rolando Jimenez Salgado, Satish Thatte, Anton Kirillov, Maarten Mullender
  • Patent number: 8793704
    Abstract: Techniques to manage event notifications are described. An apparatus may comprise a server having an event notification component. The event notification component may have an event agent component to receive a message indicating a change event for line of business (LOB) data, and convert the change event to a defined LOB entity event. The event notification component may have a notification service component to generate a LOB event message for the entity event. The event notification component may have an event database to store the event message in a user event queue. Other embodiments are described and claimed.
    Type: Grant
    Filed: March 9, 2007
    Date of Patent: July 29, 2014
    Assignee: Microsoft Corporation
    Inventors: LiHui Xu, Satish Thatte, Rahul Kapoor, Rolando Jimenez Salgado, Todd Abel, Anuj Bansal
  • Publication number: 20120130945
    Abstract: Techniques to cross-synchronize data are described. An apparatus may comprise a cross-synchronization component to synchronize multiple data items for different application programs between multiple client devices synchronized using multiple synchronization circuits. The cross-synchronization component may determine whether changes to the multiple data items made at a first client device are propagated to a second client device using consistency information maintained by a consistency group item for a consistency group including the data items. Other embodiments are described and claimed.
    Type: Application
    Filed: January 31, 2012
    Publication date: May 24, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Ricard Roma i Dalfó, Rolando Jimenez Salgado, Satish Thatte, Anton Kirillov, Maarten Mullender
  • Patent number: 8131670
    Abstract: Techniques to cross-synchronize data are described. An apparatus may comprise a cross-synchronization component to synchronize multiple data items for different application programs between multiple client devices synchronized using multiple synchronization circuits. The cross-synchronization component may determine whether changes to the multiple data items made at a first client device are propagated to a second client device using consistency information maintained by a consistency group item for a consistency group including the data items. Other embodiments are described and claimed.
    Type: Grant
    Filed: February 22, 2007
    Date of Patent: March 6, 2012
    Assignee: Microsoft Corporation
    Inventors: Ricard Roma i Dalfo, Rolando Jimenez Salgado, Satish Thatte, Anton Kirillov, Maarten Mullender
  • Patent number: 7921189
    Abstract: A single virtual image of client information centrally located at an always-on network location for maintaining equivalency among multiple user devices. The image can be accessed by the user devices when coming online to upload and receive changes in the client information. A mid-tier system can be employed as the always-on central location with which the user client machines can communicate to maintain the same set of client information. Services in support thereof include an ownership service for dynamic selection of a designated client machine to take ownership for performing the actions on one client machine and arbitration of duplicate requests, a notification service for allowing data sources to publish cache update instructions to a central place, a roaming service for allowing clients machines to share state with each other, and an encryption service for secure storage and communications of client information.
    Type: Grant
    Filed: November 20, 2006
    Date of Patent: April 5, 2011
    Assignee: Microsoft Corporation
    Inventors: Rahul Kapoor, Rolando Jimenez Salgado, Satish Thatte, Yi Mao, Ricard Roma I Dalfó, Anuj Bansal, Saji Varkey
  • Patent number: 7805420
    Abstract: Versioning and concurrency control architecture of data operations on data of a data source by multiple independent clients of a user. Data operation messages between the clients and the data source are intercepted and tracked for serialization control to a data view instance of the data source. The architecture can be located as an always-on centrally-located system (e.g., mid-tier), accommodate data operations that include create, read, update, delete, and query (CRUDQ) against data sources, and provides support for distributed transactions, locking, versioning, and reliable messaging, for example, for data sources that do not expose such capabilities. A hash is employed for version control and to control changes at the data source. The central system also provides logic for the individual CRUDQ operations, and granular error classification to enable retries whenever possible.
    Type: Grant
    Filed: November 20, 2006
    Date of Patent: September 28, 2010
    Assignee: Microsoft Corporation
    Inventors: Rahul Kapoor, Rolando Jimenez Salgado, Kaushik Raj, Satish Thatte, Xiaoyu Wu
  • Publication number: 20080222654
    Abstract: Techniques to manage event notifications are described. An apparatus may comprise a server having an event notification component. The event notification component may have an event agent component to receive a message indicating a change event for line of business (LOB) data, and convert the change event to a defined LOB entity event. The event notification component may have a notification service component to generate a LOB event message for the entity event. The event notification component may have an event database to store the event message in a user event queue. Other embodiments are described and claimed.
    Type: Application
    Filed: March 9, 2007
    Publication date: September 11, 2008
    Applicant: Microsoft Corporation
    Inventors: LiHui Xu, Satish Thatte, Rahul Kapoor, Rolando Jimenez Salgado, Todd Abel, Anuj Bansal
  • Publication number: 20080208919
    Abstract: Techniques to cross-synchronize data are described. An apparatus may comprise a cross-synchronization component to synchronize multiple data items for different application programs between multiple client devices synchronized using multiple synchronization circuits. The cross-synchronization component may determine whether changes to the multiple data items made at a first client device are propagated to a second client device using consistency information maintained by a consistency group item for a consistency group including the data items. Other embodiments are described and claimed.
    Type: Application
    Filed: February 22, 2007
    Publication date: August 28, 2008
    Applicant: Microsoft Corporation
    Inventors: Ricard Roma i Dalfo, Rolando Jimenez Salgado, Satish Thatte, Anton Kirillov, Maarten Mullender
  • Publication number: 20080208806
    Abstract: Techniques for a web services data access layer are described. An apparatus may comprise a client device having an application program, a data access layer, and a client data store. The data access layer may comprise a cache manager component and a queue manager component. The application program may request an operation for an office business entity, with the cache manager component to perform the operation using data stored by the client data store. The queue manager component may store the operation in an operational queue. Other embodiments are described and claimed.
    Type: Application
    Filed: February 28, 2007
    Publication date: August 28, 2008
    Applicant: Microsoft Corporation
    Inventors: Ricard Roma i Dalfo, Constantin Stanciu, Rolando Jimenez Salgado, Satish Thatte, Sundar Paranthaman, Rahul Kapoor
  • Publication number: 20080120362
    Abstract: A single virtual image of client information centrally located at an always-on network location for maintaining equivalency among multiple user devices. The image can be accessed by the user devices when coming online to upload and receive changes in the client information. A mid-tier system can be employed as the always-on central location with which the user client machines can communicate to maintain the same set of client information. Services in support thereof include an ownership service for dynamic selection of a designated client machine to take ownership for performing the actions on one client machine and arbitration of duplicate requests, a notification service for allowing data sources to publish cache update instructions to a central place, a roaming service for allowing clients machines to share state with each other, and an encryption service for secure storage and communications of client information.
    Type: Application
    Filed: November 20, 2006
    Publication date: May 22, 2008
    Applicant: Microsoft Corporation
    Inventors: Rahul Kapoor, Rolando Jimenez Salgado, Satish Thatte, Yi Mao, Ricard Roma I Dalfo, Anuj Bansal, Saji Varkey
  • Publication number: 20080120297
    Abstract: Versioning and concurrency control architecture of data operations on data of a data source by multiple independent clients of a user. Data operation messages between the clients and the data source are intercepted and tracked for serialization control to a data view instance of the data source. The architecture can be located as an always-on centrally-located system (e.g., mid-tier), accommodate data operations that include create, read, update, delete, and query (CRUDQ) against data sources, and provides support for distributed transactions, locking, versioning, and reliable messaging, for example, for data sources that do not expose such capabilities. A hash is employed for version control and to control changes at the data source. The central system also provides logic for the individual CRUDQ operations, and granular error classification to enable retries whenever possible.
    Type: Application
    Filed: November 20, 2006
    Publication date: May 22, 2008
    Applicant: Microsoft Corporation
    Inventors: Rahul Kapoor, Rolando Jimenez Salgado, Kaushik Raj, Xiaoyu Wu, Satish Thatte
  • Patent number: 7370053
    Abstract: The present invention relates to coordinating web services wherein a coordination service acts as a rendezvous point through which participants such as web services may register to obtain protocol information to coordinate an outcome of an activity. The coordination of the activity may be accomplished through behaviors that may be expressed by message exchange protocols prescribed by the participants or web services themselves in an open-ended manner. A method and apparatus is also provided for coordinating web service activity with associated behaviors. Transactional coordination may be performed using the ACID model for activities requiring strict consistency or may be based on compensation actions for long running transactions, for example.
    Type: Grant
    Filed: February 10, 2006
    Date of Patent: May 6, 2008
    Assignee: Microsoft Corporation
    Inventors: Luis Felipe Cabrera, Johannes Klein, Satish Thatte
  • Publication number: 20060277458
    Abstract: Here is described an implementation of an object persister, which serializes an object to preserve the object's data structure and its current data. The serialized object is encoded using XML and inserted within a message. That message is transmitted to an entity over a network. Such a transmission is performed using standard Internet protocols, such as HTML. Upon receiving the serialed object, the receiving entity deserializes the object to use it. Rather than include copies of referenced objects within the serialized object, the object persister includes references to those objects. This avoids redundant inclusion of the same object and potentially infinite inclusion of the object itself that is being serialized.
    Type: Application
    Filed: July 16, 2004
    Publication date: December 7, 2006
    Applicant: Microsoft Corporation
    Inventors: Andrew Layman, Gopal Kakivaya, Satish Thatte
  • Publication number: 20060274727
    Abstract: A transport-neutral in-order delivery in a distributed environment is provided. Typically, in-order delivery guarantees that sequential orders received by a transport engine are sent out in the same order they are received. Such delivery may be forwarded either to another transport engine or to some application. In case there is a failure of delivery of messages in a stream, the messages are either resubmitted, suspended, or moved to backup. A user or administrator can configure the desired action. Additionally, any stream can be manually aborted or a specified port can be unenlisted. Deliverable streams of messages are locked on to a back-end transport engines or applications and dequeued sequentially unless one of the above mentioned failure scenarios occurs.
    Type: Application
    Filed: June 6, 2005
    Publication date: December 7, 2006
    Applicant: Microsoft Corporation
    Inventors: Eldar Musayev, Jean-Emile Elien, Kartik Paramasivam, Kevin Smith, Lee Graber, Sanjib Saha, Satish Thatte
  • Publication number: 20060265231
    Abstract: A system for managing an application set is disclosed. The system includes a wrapper that designates a component as belonging to the application set and an interface that provides access to the component. The system also includes a control module that uses the interface to manage the component. Methods of using the system are also provided.
    Type: Application
    Filed: May 18, 2005
    Publication date: November 23, 2006
    Applicant: Microsoft Corporation
    Inventors: Eddie Fusaro, Vladimir Pogrebinsky, Arunachallam Sivakumar, Satish Thatte, Neilton Saari, Wei Xiao, Girish Mittur Venkataramanappa
  • Publication number: 20060235983
    Abstract: Using a message exchanger (“message exchanger”), data messages are exchanged between entities in a decentralized, distributed, potentially heterogeneous, network environment. The message exchanger employs XML (extensible Markup Language). To accomplish this, the entities on both ends of the message exchange understand, identify, and parse the message format. The message exchanger defines such a mechanism. Data messages are broken down into two portions—one portion (the body) is intended from an ultimate destination and the other portion (the header) is intended for intermediate destination and/or the ultimate destination. The body may be defined so that it must be understood by the ultimate destination. The header may be defined so that it must be understood or changed. Regardless, the data in the body is delivered intact to the ultimate destination. The message exchanger defines a message envelope exchange format in XML over a transport protocol, such as HTTP (HyperText Transport Protocol).
    Type: Application
    Filed: June 26, 2006
    Publication date: October 19, 2006
    Applicant: Microsoft Corporation
    Inventors: Andrew Layman, Gopal Kakivaya, Satish Thatte, Henrik Nielsen, Robert Atkinson
  • Publication number: 20060136279
    Abstract: Workflow management for maintaining consistency of persisted state across communicating components via batching of uncommitted work. A workflow component defines a workflow containing work items to be performed by service provider components. The workflow component assigns the work items to the service provider components, and the service provider components acknowledge the assigned work items. The workflow component appends the assigned work items to a work batch. The workflow component creates a transaction containing the batched work items. The workflow component commits to the workflow by requesting the service provider components to perform the work items. The workflow component checks the state of the execution of the work items and stores the state in a persistent storage.
    Type: Application
    Filed: December 22, 2004
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: Paul Maybee, Anandhi Somasekaran, Satish Thatte
  • Publication number: 20060136427
    Abstract: The present invention relates to coordinating web services wherein a coordination service acts as a rendezvous point through which participants such as web services may register to obtain protocol information to coordinate an outcome of an activity. The coordination of the activity may be accomplished through behaviors that may be expressed by message exchange protocols prescribed by the participants or web services themselves in an open-ended manner. A method and apparatus is also provided for coordinating web service activity with associated behaviors. Transactional coordination may be performed using the ACID model for activities requiring strict consistency or may be based on compensation actions for long running transactions, for example.
    Type: Application
    Filed: February 10, 2006
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: Luis Cabrera, Johannes Klein, Satish Thatte