Method and apparatus for dynamic command extensibility in an intelligent agent
First Claim
Patent Images
1. A computer system, comprising:
- a client component;
a server component comprising a dynamic link library, said client component arranged to make requests to said server component during execution of said client component;
a request archive component, maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, arranged to intercept requests from said client component to said server component, and to determine from said representation whether a request is supported by said server component;
such that said request intercepting component is arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported;
such that said request intercepting component thereafter invokes said request on said server component in a manner hidden from said client component;
such that said server component comprises an object represented in said dynamic link library file in at least one computer program;
such that said request intercepting component searches for said dynamic link library file, or an updated version of said dynamic link library file if a current version of said dynamic link library file held on said computer system does not provide the functionality of said server component.
2 Assignments
0 Petitions
Accused Products
Abstract
A system is provided whereby software components acting as servers can be upgraded or installed when new functionality is required without client components which have made requests to these components being made aware of the upgrade initiated by their request. The servers can then respond to requests which would otherwise have caused errors in the client components.
-
Citations
10 Claims
-
1. A computer system, comprising:
-
a client component;
a server component comprising a dynamic link library, said client component arranged to make requests to said server component during execution of said client component;
a request archive component, maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, arranged to intercept requests from said client component to said server component, and to determine from said representation whether a request is supported by said server component;
such that said request intercepting component is arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported;
such that said request intercepting component thereafter invokes said request on said server component in a manner hidden from said client component;
such that said server component comprises an object represented in said dynamic link library file in at least one computer program;
such that said request intercepting component searches for said dynamic link library file, or an updated version of said dynamic link library file if a current version of said dynamic link library file held on said computer system does not provide the functionality of said server component.
-
-
2. A computer system, comprising:
-
a client component;
a server component comprising a dynamic link library, said client component arranged to make requests to said server component during execution of said client component;
a request archive component, including a representation of requests which can be satisfied by said server component; and
a request intercepting component, intercepting requests from said client component to said server component, and determining from said representation if a request is supported by said server component;
said request intercepting component being arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request if said request is not currently supported; and
for thereafter invoking said request on said server component in a manner hidden from said client component;
such that said server component comprises an object represented in said dynamic link library file in at least one computer program;
such that said request intercepting component searches for said dynamic link library file, or an updated version of said dynamic link library file if a current version of said dynamic link library file held on said computer system does not provide the functionality of said server component.
-
-
3. A computer system comprising:
-
a client component comprising a software program;
a server component comprising an operating system shell called by said software program, such that said client component is arranged to make requests to said server component during execution of said client component;
a request archive component for maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component comprising a command interpreter, arranged to intercept requests from said client component to said server component, and to determine from said representation whether a request is supported by said server component;
such that said request intercepting component is arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported;
said request intercepting component thereafter invoking said request on said server component in a manner hidden from said client component;
such that said server component comprises an object represented in said operating system shell called by said software program;
such that said request intercepting component searches for said operating system shell, or an updated version of said operating system shell if a current version of said operating system shell held on said computer system does not provide the functionality of said server component.
-
-
4. A computer system comprising:
-
a client component, comprising a software program;
a server component, comprising an operating system shell called by said software program, such that said client component is arranged to make request to said server component during execution of said client component;
a request archive component maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, for intercepting requests from said client component to said server component, and for determining from said representation whether a request is supported by said server component;
said intercepting means comprising a command interpreter and being arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported; and
for thereafter invoking said request on said server component in a manner hidden from said client component;
such that said server component comprises an object represented in said operating system shell called by said software program;
such that said request intercepting component searches for said operating system shell, or an updated version of said operating system shell if a current version of said operating system shell held on said computer system does not provide the functionality of said server component.
-
-
5. A CORBA distributed computer system comprising:
-
a client component, said client component being an object of said CORBA distributed computer system;
a server component, said server component being an object of said CORBA distributed computer system, such that said client component is arranged to make requests to said server component during execution of said client component;
a request archive component, maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, comprising an object request broker arranged to intercept requests from said client component to said server component, and to determine from said representation whether a request is supported by said server component;
such that said request intercepting component is arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported;
said request intercepting component thereafter invoking said request on said server component in a manner hidden from said client component;
such that said server component is an object of said CORBA distributed computer system;
such that said request intercepting component is invoked by the object request broker to search for said object of said CORBA distributed computer system or an updated version of said object of said CORBA distributed computer system if a current version of said CORBA distributed computer system does not provide the functionality of said server component.
-
-
6. A CORBA distributed computer system comprising:
-
a client component, said client component being an object of the CORBA distributed computer system;
a server component, said server component being an object of the CORBA distributed computer system, such that said client component is arranged to make request to said server component during execution of said client component;
a request archive component, maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, intercepting requests from said client component to said server component, and for determining from said representation whether a request is supported by said server component;
said request intercepting component comprising a command interpreter and being arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported; and
for thereafter invoking said request on said server component in a manner hidden from said client component;
such that said server component is an object of said CORBA distributed computer system;
such that said request intercepting component is invoked by the object request broker to search for said object of said CORBA distributed computer system, or an updated version of said object of said CORBA distributed computer system if a current version of said CORBA distributed computer system does not provide the functionality of said server component.
-
-
7. A computer system comprising:
-
a client component;
a server component, comprising a protocol interpreter, such that said client component is arranged to make requests to said server component during execution of said client component;
a request archive component, maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, arranged to intercept requests from said client component to said server component, and to determine from said representation whether a request is supported by said protocol interpreter of said server component;
such that said request intercepting component is arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported;
such that said request intercepting component thereafter invokes said request on said server component in a manner hidden from said client components;
such that said server component comprises a protocol interpreter arranged to make request based on an expected vocabulary of the server component;
such that said request intercepting component searches for said request, or loads the request into the vocabulary of the server component by said protocol interpreter if a current version of said request does not provide the functionality of said server component.
-
-
8. A computer system comprising:
-
a client component;
a server component, comprising a protocol interpreter, such that said client component is arranged to make request to said server component during execution of said client component;
a request archive component, maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, intercepting requests from said client component to said server component, and determining from said representation whether a request is supported by said protocol interpreter of said server component;
said request intercepting component being arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported; and
for thereafter invoking said request on said server component in a manner hidden from said client component;
such that said server component comprises a protocol interpreter arranged to make request based on an expected vocabulary of the server component, such that said request intercepting component searches for said request or loads the request into the vocabulary of the server component by said protocol interpreter if a current version of said request does not provide the functionality of said server component.
-
-
9. A component based computer system comprising:
-
a client component;
a server component comprising a local service manager, such that said client component is arranged to make requests to said server component during execution of said client component;
an archive request component for maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, arranged to intercept requests from said client component to said server component, and to determine from said representation whether a request is supported by said local service manager of said server component;
such that said request intercepting component is arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported;
such that said request intercepting component thereafter invokes said request on said server component in a manner hidden from said client components;
such that said server component comprising a local service manager comprises a set of services known to be present on the server component;
such that said request intercepting component uses the local service manager to search for an implementation of the requested service, or an updated version of the requested service if a current version of the requested service held on said computer system does not provide the requested functionality of said server component.
-
-
10. A component based computer system comprising:
-
a client component;
a server component, comprising a local service manager, such that said client component is arranged to make request to said server component during execution of said client component;
an archive request component, maintaining a representation of requests which can be satisfied by said server component; and
a request intercepting component, intercepting requests from said client component to said server component, and determining from said representation whether a request is supported by said local service manager of said server component;
said request intercepting component being arranged to search external sources to locate and provide to said server component an executable implementation of functionality required for said server component to support said request when said request is not currently supported; and
for thereafter invoking said request on said server component in a manner hidden from said client component;
such that said server component comprising a local service manager comprises a set of services known to be present on the server component;
such that said request intercepting component uses the local service manager to search for an implementation of the requested service, or an updated version of the requested service if a current version of the requested service held on said computer system does not provide the requested functionality of said server component.
-
Specification