Patents by Inventor David Wortendyke
David Wortendyke 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: 7950023Abstract: The present invention extends utilizing abstract descriptions to generate, exchange, and configure service and client runtimes. A computer system parses compiled code and potentially optional configuration information for implementing a service and converts the compiled code and any configuration information into an abstract service description. The abstract service description can then be converted into code document object model and service configuration information or exported as metadata. A corresponding service runtime can be initiated by calling a service initializer included in the abstract service description. The code document object model and configuration information and/or metadata can be transferred to another computer system. The other computer system can utilize the code document object model and configuration information and/or import the metadata to facilitate initialization of a compatible channel for communicating with the service runtime.Type: GrantFiled: February 4, 2005Date of Patent: May 24, 2011Assignee: Microsoft CorporationInventors: Jesus Ruiz Scougall, Ryan Thomas Sturgell, Michael Jon Marucheck, Alex DeJarnett, Stephen T. Swartz, Michael Steven Vernal, Eric K. Zinda, Stephen J. Millet, David A. Wortendyke
-
Patent number: 7949787Abstract: Systems and methods for open content model Web service messaging in a networked computing environment are described. In one aspect, a transport neutral message is generated that includes message recipient, endpoint addressing information, and one or more reference properties. The reference properties include selectively opaque message context. The transport neutral message is bound to a transport protocol for communication to the message recipient. At least a portion of the selectively opaque message context is not directed to the message recipient.Type: GrantFiled: March 15, 2004Date of Patent: May 24, 2011Assignee: Microsoft CorporationInventors: Donald F. Box, Christopher G. Kaler, David E. Langworthy, Steven E. Lucco, John Shewchuk, Luis Felipe Cabrera, Craig A Critchley, Geary L. Eppley, Bradford H. Lovering, Jeffrey C. Schlimmer, David Wortendyke, Henrik F. Nielsen
-
Patent number: 7921216Abstract: The present invention provides for an automated, user friendly way of constructing and using a binding object. A developer is presented with and selects binding elements that will ultimately be used to create a runtime communication channel for transporting a message between a client and service endpoint. After receiving the user input, metadata, a channel factory and listener factory are created. The metadata describes binding elements and provides an abstract representation of a protocol stack that implements communication aspects at runtime. The channel factory is configured to use the collection of metadata at runtime to generate the runtime communication channel. Further, the listener factory is configured to accept the runtime communication channel for de-multiplexing the communication aspects in order to process the message at a service endpoint. The present invention also provides for groupings of binding elements and standardized binding objects organized based on industry need.Type: GrantFiled: February 1, 2005Date of Patent: April 5, 2011Assignee: Microsoft CorporationInventors: Craig A. Critchley, David A. Wortendyke, Elliot L. Waingold, Eric K. Zinda, Erik B. Christensen, Giovanni M. Della-Libera, Kenneth D. Wolf, Michael S. Vernal, Shy Cohen, Stefan H. Pharies, Stephen J. Millet, Stephen T. Swartz, Tomasz Janczuk, Uday S. Hegde, Yaniv Pessach
-
Patent number: 7921129Abstract: At least one implementation described herein relates to evaluating queries structured according to a first format against one or more objects structured according to a second, different format without serializing the object. Typically, evaluating an XML (eXtensible Markup Language) query against a CLR (Common Language Runtime) object required serializing the CLR object and deriving an XML construct from the serialized data. The query is then be evaluated against the XML construct. In the described implementations, significant system resources are realized by creating an infoset model that maps properties of an object to an object infoset. The query is then evaluated using the infoset to locate object values and, thus, no serialization is required. Dynamically generated IL is used and re-used to efficiently perform subsequent evaluation steps on similar queries.Type: GrantFiled: October 22, 2007Date of Patent: April 5, 2011Assignee: Microsoft CorporationInventors: Umesh Madan, Geary L. Eppley, David Wortendyke
-
Patent number: 7899047Abstract: Methods and systems for providing a virtual network are disclosed. At least one layer of abstraction is created between network service applications and conventional network protocols by inserting an adaptive dispatcher between applications and network transport services on each machine in a network. The message protocol in the virtual network is extensible, allowing application programs to create new headers within any message as needed. The adaptive dispatcher contains handlers that route and dispatch messages within the virtual network based on arbitrary content within each message, including any combination of headers and/or data content. Each device on the virtual network has a virtual address to which messages are directed, allowing devices to move within the network without reconfiguring routing tables.Type: GrantFiled: August 13, 2007Date of Patent: March 1, 2011Assignee: Microsoft CorporationInventors: Luis F. Cabrera, Erik B. Christensen, Giovanni M. Della-Libera, Christopher G. Kaler, David E. Levin, Bradford H. Lovering, Steven E. Lucco, Stephen J. Millet, John P. Shewchuk, Robert S. Wahbe, David A. Wortendyke
-
Patent number: 7882236Abstract: The present invention provides for a channel model capable of generating a runtime communication channel with pluggable modular channel components. These channel components implement one of a set of standard interfaces that allow processing details of communication semantics between components to be represented in a polymorphic way. A message and corresponding communication semantics are recursively passed through the channel components using the standard interface, thereby abstracting other modules and components from specific implementation details of how the communication semantics are performed. The message may then be sent to the next appropriate module for further processing, or the processing may be completed at that particular component or module. Note also that the message can also be de-multiplexed on the service side in a similar fashion as that described above.Type: GrantFiled: February 4, 2005Date of Patent: February 1, 2011Assignee: Microsoft CorporationInventors: Bradford H. Lovering, David A. Wortendyke, Waingold L. Elliot, Erik B. Christensen, Kenneth D. Wolf, Michael S. Vernal, Shy Cohen, Stefan H. Pharies
-
Publication number: 20100325190Abstract: The present invention extends to methods, systems, and computer program products for using distributed queues in an overlay network. Embodiments of the invention can be used to replicate queue state (e.g., inserted and/or deleted messages) within an overlay network and can be used to continue a process at a different node within the overlay network based on replicated queue state. Accordingly, embodiments of the invention can be used to increase the availability of queue state, compensate for node failures within an overlay network, and promote replication of consistent queue state between nodes within an overlay network.Type: ApplicationFiled: June 23, 2009Publication date: December 23, 2010Applicant: Microsoft CorporationInventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
-
Publication number: 20100322256Abstract: The present invention extends to methods, systems, and computer program products for using distributed timers in an overlay network. Embodiments of the invention can be used to replicate timers within an overlay network and can be used to make progress towards completing a portion of work within the overlay network based on a replicated timer. Accordingly, embodiments of the invention can be used to increase the availability of timer data as well as compensate for node failures within an overlay network.Type: ApplicationFiled: June 23, 2009Publication date: December 23, 2010Applicant: Microsoft CorporationInventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
-
Publication number: 20100325219Abstract: The present invention extends to methods, systems, and computer program products for adding configurable messaging functionality to an infrastructure. Embodiments of the invention provide a common infrastructure for management and one way message routing that can accommodate a set of related but conceptually different message delivery protocols. Junctions can be simultaneous created and configured at a location within a namespace. As a result, messaging related functionality can be more efficiently and uniformly added to a namespace. Additionally, embodiments of the invention include junctions that indicate roles and store behaviors and constraints for roles locally. Thus, computer systems desiring to utilize messaging related functionality can access the junction and utilize messaging related functionality provided at the junction without having to refer to other locations in a namespace (e.g., to perform lookups).Type: ApplicationFiled: June 22, 2009Publication date: December 23, 2010Applicant: Microsoft CorporationInventors: Clemens F. Vasters, David A. Wortendyke
-
Publication number: 20100325300Abstract: The present invention extends to methods, systems, and computer program products for using HyperText Transfer Protocol communication as a transport for bi-directional data streams. Embodiments of the invention facilitate passing otherwise blocked TCP communication through a firewall. Embodiments of the invention can be used to pass legitimate TCP communication through a firewall even though a firewall is configured to block the legitimate TCP communication.Type: ApplicationFiled: June 22, 2009Publication date: December 23, 2010Applicant: Microsoft CorporationInventors: Clemens F. Vasters, David A. Wortendyke, Qian Wang
-
Publication number: 20100262717Abstract: The present invention extends to methods, systems, and computer program products for optimizing access to federation infrastructure-based resources. Various different layers within a federation infrastructure can signal location change events indicating the hosting location and/or access location for a resource is to be optimized. In response to a location change event, redirection information for accessing the resource is updated within the federation infrastructure. The redirection information is used to redirect resource access requests to appropriately optimized locations within the federation infrastructure. Redirecting resource access requests reduces communication within the federation infrastructure.Type: ApplicationFiled: June 22, 2010Publication date: October 14, 2010Applicant: Microsoft CorporationInventors: Craig A. Critchley, David A. Wortendyke, Michael J. Marucheck, Richard L. Hasha
-
Patent number: 7792852Abstract: At least one implementation described herein relates to evaluating queries structured according to a first format against one or more objects structured according to a second, different format without serializing the object. Typically, evaluating an XML (eXtensible Markup Language) query against a CLR (Common Language Runtime) object required serializing the CLR object and deriving an XML construct from the serialized data. The query is then be evaluated against the XML construct. In the described implementations, significant system resources are realized by creating an infoset model that maps properties of an object to an object infoset. The query is then evaluated using the infoset to locate object values and, thus, no serialization is required. Dynamically generated IL is used and re-used to efficiently perform subsequent evaluation steps on similar queries.Type: GrantFiled: October 22, 2007Date of Patent: September 7, 2010Assignee: Microsoft CorporationInventors: Umesh Madan, Geary L. Eppley, David Wortendyke
-
Patent number: 7664728Abstract: Implementations described herein relate to evaluating multiple queries represented in an opcode tree having opcode nodes and branch nodes. Each opcode node comprises an opcode that is a part of an opcode block derived from compilation of a query, the opcode block consisting of a linear sequence of opcodes. Opcode nodes are arranged in the tree according to location of its corresponding opcode in the opcode block with opcodes that occur earlier in the opcode block being represented at a higher tree level than subsequent opcodes. Only one opcode node corresponds to a common opcode block segment that is included in multiple queries. Executing the opcode tree against an input evaluates each of the multiple queries represented in the opcode tree.Type: GrantFiled: February 20, 2004Date of Patent: February 16, 2010Assignee: Microsoft CorporationInventors: David Wortendyke, Umesh Madan, Geary L. Eppley
-
Patent number: 7664023Abstract: A method includes advertising a policy characterizing communication properties supported by a node. The policy may be distributed to another node in response to a request for the policy. Policy expressions in the policy include one or more assertions that may be grouped and related to each other in a plurality of ways. A system includes a policy generator for generating at least one policy characterizing properties of a node. A policy retriever retrieves a policy from another node and a message generator generates a message to the other node, wherein the message conforms to the policy from the other node.Type: GrantFiled: May 29, 2007Date of Patent: February 16, 2010Assignee: Microsoft CorporationInventors: David Levin, Erik B. Christensen, Saurab Nog, Donald F. Box, Christopher G. Kaler, Giovanni M. Della-Libera, Alfred Lee, IV, David Wortendyke
-
Patent number: 7644064Abstract: At least one implementation described herein relates to using multiple filter engines to optimize query processing. A filter engine comprises a general matcher and at least one optimized matcher, a matcher being a filter engine in its own right. When the filter engine receives an input, the input is analyzed to determine if it can be handled by the optimized matcher. While the general matcher is fully compliant with a query language, the optimized matcher only handles a subset of the query language. Therefore, inputs that can be processed in the optimized matcher are compared against fewer filters, making the filtering process more efficient. The filter engine may also process only a portion of an input in the optimized matcher and another portion of the input in the general matcher, which reduces processing overhead.Type: GrantFiled: February 19, 2004Date of Patent: January 5, 2010Assignee: Microsoft CorporationInventors: Geary L. Eppley, Umesh Madan, David Wortendyke
-
Patent number: 7584170Abstract: A conversion method for converting numeric multi-dimensional database members to textual representations may be provided. The conversion may allow textual representations for the numeric dimension members to be sorted and converted back into numeric representations with accuracy. All numeric and date data may be transformed during conversion, such that the textual representation of the numeric and date data is properly sorted as a text string, in the same order as it would be sorted as a number. Accurate reverse-conversion (i.e., from textual representation to numeric representation) may also be provided. The reverse-conversion may include converting into text, information that may be necessary to support a precision required by the relevant convention of the numeric representation and a convention for determining the data type of the textual representations of values. The textual representation may be configured to sort by value independent of the numeric data-types.Type: GrantFiled: March 14, 2005Date of Patent: September 1, 2009Assignee: Microsoft CorporationInventors: Michael J. Coulson, David Wortendyke, Kevin Grealish
-
Patent number: 7565451Abstract: Mechanisms in which upon receiving a message, the message is passed through one or more receiving path components that are positioned in the receiving path of the message prior to being passed to a dispatching component. One or more of the receiving path components may modify the message to include information that may be helpful to the dispatching component in order to perform the dispatch. The dispatching component receives modified message, and uses information from the modified message (including potentially the modification itself) to perform the dispatch. Since the message is modified to include additional information helpful to the dispatching component, the dispatching component may be more flexible in identifying the processing that should occur with the message. Accordingly, specialized and flexible processing may be enabled that is ideally suited for the message.Type: GrantFiled: January 23, 2004Date of Patent: July 21, 2009Assignee: Microsoft CorporationInventors: Luis Felipe Cabrera, David A. Wortendyke, George P. Copeland, Erik B. Christensen, David E. Levin, Dhananjay M. Mahajan, Scott Christopher Seely, Daniel W. Roth
-
Patent number: 7558917Abstract: An inverse query engine system having a cache integrated therein and methods for maintaining the cache are described herein. Entities storing filters in the inverse query engine cache thus do not have to maintain an individual cache to maintain the filters. The inverse query engine system cache is maintained within a bounded size by removing expired filters from the cache and trimming the cache to an optimal size when the cache reaches a maximum size. In the event that filter size cannot be determined efficiently, weights may be associated with filters stored in the cache, each weight identifying an estimate of a filter size. The weights are used to determine cache size and to maintain the cache size within particular bounds.Type: GrantFiled: February 13, 2004Date of Patent: July 7, 2009Assignee: Microsoft CorporationInventors: Umesh Madan, Geary L. Eppley, David Wortendyke
-
Patent number: 7539691Abstract: Implementations described herein relate to using a filter engine opcode tree for evaluating multiple queries. The opcode tree includes opcode nodes and branch nodes. Each opcode node includes one or more computer instructions resulting from compiling a query. Executing the opcode tree a single time evaluates each of multiple queries represented in the opcode tree. When a new opcode node is added to the tree, the context of the opcode tree and the structure of the new opcode are taken into account when modifying a branch node or an opcode node. In certain situation, a branch node is optimized to include an indexed lookup function such as a hash function, to optimize processing of opcode nodes that depend from the branch node. Adding and removing nodes to/from the opcode tree can be handled by a filter engine component or by an opcode object being added to/removed from the tree.Type: GrantFiled: February 20, 2004Date of Patent: May 26, 2009Assignee: Microsoft CorporationInventors: David Wortendyke, Umesh Madan, Geary L. Eppley
-
Patent number: 7512957Abstract: A web services namespace pertains to an infrastructure for enabling creation of a wide variety of applications. The infrastructure provides a foundation for building message-based applications of various scale and complexity. The infrastructure or framework provides APIs for basic messaging, secure messaging, reliable messaging and transacted messaging. In some embodiments, the associated APIs are factored into a hierarchy of namespaces in a manner that balances utility, usability, extensibility and versionability.Type: GrantFiled: December 3, 2004Date of Patent: March 31, 2009Assignee: Microsoft CorporationInventors: Shy Cohen, Geary L. Eppley, Douglas M. Purdy, James E. Johnson, Stephen J. Millet, Stephen T. Swartz, Vijay K. Gajjala, Aaron Abraham Stern, Alexander Martin DeJarnatt, Alfred M. Lee, IV, Anand Rjagopalan, Anastasios Kasiolas, Chaitanya D. Upadhyay, Christopher G. Kaler, Craig Andrew Critchley, David Edwin Levin, David Owen Driver, David Wortendyke, Douglas A. Walter, Elliot Lee Waingold, Erik Bo Christensen, Erin P. Honeycutt, Eugene Shvets, Evgeny Osovetsky, Giovanni M. Della-Libera, Jesus Ruiz-Scougall, John David Doty, Jonathan T. Wheeler, Kapil Gupta, Kenneth David Wolf, Krishnan Srinivasan, Lance E. Olson, Matthew Thomas Tavis, Mauro Ottaviani, Max Attar Feingold, Michael James Coulson, Michael Jon Marucheck, Michael Steven Vernal, Michael Thomas Dice, Mohamed-Hany Essam Ramadan, Mohammad Makarechian, Natasha Harish Jethanandani, Richard Dievendorff, Richard Douglas Hill, Ryan Thomas Sturgell, Saurab Nog, Scott Christopher Seely, Serge Sverdlov, Siddhartha Puri, Sowmyanarayanan K. Srinivasan, Stefan Batres, Stefan Harrington Pharies, Tirunelveli Vishwanath, Tomasz Janczuk, Uday S. Hegde, Umesh Madan, Vaithialingam B. Balayogan, Vipul Arunkant Modi, Yaniv Pessach, Yasser Shohoud