Protocol agnostic request response pattern
First Claim
1. A method for allowing a computer program to communicate over one of a plurality of protocols, comprising:
- at a computing system, using one or more processors to execute computer executable instructions, wherein execution of the computer-executable instructions by the one or more processors causes the computing system to;
register one or more protocol handlers operable to create a protocol object;
receive a request to communicate;
create an instance of a protocol object by employing a registered protocol handler;
return the protocol object to an application; and
use a base class Application Programming Interface (API) to communicate though the protocol object, wherein using the base class API includes implementing one or more methods defined in the base class API in a derived class, and wherein at least one of the one or more methods can be employed to read a first data from a resource, the first data having at least one of a format specific to the protocol and one or more headers and/or footers specific to the protocol when it is read from the resource, the first data being provided to a computer program of the computing system as a byte stream, and wherein at least one of the one or more methods can be employed to write a second data to the resource, the second data having at least one of a format specific to the protocol and one or more headers and/or footers specific to the protocol when it is written to the resource, the second data being provided to the one or more methods as a byte stream.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for facilitating communications over a protocol is provided. The system includes a class factory that holds identifiers associated with determining which, if any, registered protocol object creator should be employed to create a protocol object. The protocol object implements an abstract network protocol base class. The protocol object is employed to abstract details of communicating over a protocol and to provide a byte stream interface to communications occurring over the protocol, while removing protocol specific code from an application program. The method includes creating an instance of a protocol object from a source of registered protocol handlers based on a request to communicate over a protocol and using a base class API to communicate over the protocol through the protocol object.
-
Citations
15 Claims
-
1. A method for allowing a computer program to communicate over one of a plurality of protocols, comprising:
-
at a computing system, using one or more processors to execute computer executable instructions, wherein execution of the computer-executable instructions by the one or more processors causes the computing system to; register one or more protocol handlers operable to create a protocol object; receive a request to communicate; create an instance of a protocol object by employing a registered protocol handler; return the protocol object to an application; and use a base class Application Programming Interface (API) to communicate though the protocol object, wherein using the base class API includes implementing one or more methods defined in the base class API in a derived class, and wherein at least one of the one or more methods can be employed to read a first data from a resource, the first data having at least one of a format specific to the protocol and one or more headers and/or footers specific to the protocol when it is read from the resource, the first data being provided to a computer program of the computing system as a byte stream, and wherein at least one of the one or more methods can be employed to write a second data to the resource, the second data having at least one of a format specific to the protocol and one or more headers and/or footers specific to the protocol when it is written to the resource, the second data being provided to the one or more methods as a byte stream. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system that facilitates computer program communication over one of a plurality of protocols, comprising:
-
one or more processors communicatively coupled to the following; an input component that, when executed by the one or more processors, receives a communication request from an application; an constructor component that, when executed by the one or more processors, ensures that a requested communication protocol is registered, and that generates at least one protocol object based upon a registered protocol; and a communication component that, when executed by the one or more processors, returns the at least one generated protocol object to the application and communicates with the application though the at least one protocol object via a base class Application Programming Interface (API), wherein the base class API defines one or more methods, and wherein the one or more methods include; at least one method that can be employed to read a first data from a resource, the first data having at least one of a format specific to the registered protocol and one or more headers and/or footers specific to the registered protocol when it is read from the resource, the first data being provided to a computer program of the computing system as a byte stream; at least one method that can be employed to write a second data to the resource, the second data having at least one of a format specific to the registered protocol and one or more headers and/or footers specific to the protocol when it is written to the resource. the second data being provided to the one or more methods as a byte stream. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for enabling a computer program to communicate one of a plurality of protocols, the method comprising:
-
using one or more processors to execute computer executable instructions, wherein execution of the computer executable instructions causes a computing system to; register one or more protocol handlers operable to create a protocol object; generate a request to communicate using a computer program, wherein the request to communicate identifies a Uniform Resource Identifier (URI) with which a communication is desired; receive a request to communicate; create an instance of a protocol object by employing a registered protocol handler by at least; selectively determining one or more protocol object creators operable to create the protocol object based, at least in part, on a portion of the URI, where the protocol object creator implements one or more creator methods defined in an abstract creator base class, wherein at least one of the one or more methods can be employed to read a first data from a resource, the first data having at least one of a format specific to the protocol and one or more headers and/or footers specific to the protocol when it is read from the resource, the first data being provided to the computer program as a byte stream, and wherein at least one of the one or more methods can be employed to write a second data to the resource, the second data having at least one of a format specific to the protocol and one or more headers and/or footers specific to the protocol when it is written to the resource, the second data being provided to the one or more methods as a byte stream; invoking at least one of the one or more protocol object creators to create the protocol object; return the protocol object to the an application; and use a base class Application Programming Interface (API) to communicate though the protocol object, by at least; implementing one or more methods defined in the base class API in a derived class; and employing the one or more implemented methods. - View Dependent Claims (15)
-
Specification