Claims
- 1. An apparatus configured to interface communications between sending and receiving electronic devices, the apparatus comprising:
(a) a message buffer configured to receive messages from at least one sending electronic device, each message associated with at least one message type among a plurality of message types; (b) a plurality of processor components, each configured to perform a task associated with a message received by the message buffer, wherein at least one processor component is configured to initiate an action on a receiving electronic device; (c) a plurality of controller components, each associated with a message type among the plurality of message types, and each configured to handle a message associated with such associated message type by dynamically instantiating at least a subset of the plurality of processor components; and (d) at least one delegator component associated with at least one message type among the plurality of message types and configured to monitor the message buffer for messages associated with such associated message type, the delegator component further configured to dynamically execute a controller component associated with such associated message type in response to detecting an addition of a message associated with such associated message type to the message buffer.
- 2. The apparatus of claim 1, wherein the receiving electronic device comprises a resource.
- 3. The apparatus of claim 1, wherein the sending electronic device comprises a near infrared sensor, and wherein the receiving electronic device comprises an analysis engine.
- 4. The apparatus of claim 3, wherein the apparatus is coupled to the sending electronic device via the Internet.
- 5. The apparatus of claim 1, wherein the delegator component is further configured to be selectively enabled and disabled in response to user input, and wherein the delegator component is configured to dynamically execute the controller component only if the delegator component is enabled when the message is added to the message buffer.
- 6. The apparatus of claim 5, further comprising a buffer services component configured to add the message to the message buffer irrespective of whether the delegator component is enabled.
- 7. The apparatus of claim 1, wherein the delegator component is further configured to associate the message with the delegator component to restrict another delegator component from handling the message.
- 8. The apparatus of claim 1, wherein the delegator component is further configured to dynamically instantiate the controller component in response to detecting the addition of the message to the message buffer.
- 9. The apparatus of claim 1, wherein each controller component is further configured to retrieve from the message buffer a list of messages awaiting processing by the controller component.
- 10. The apparatus of claim 1, wherein each controller component is further configured to determine which of the plurality of processor components need to be executed to handle a message.
- 11. The apparatus of claim 10, further comprising a database that maintains a mapping of processor components to controller components, wherein each controller component is configured to determine which of the plurality of processor components need to be executed to handle a message by accessing the database.
- 12. The apparatus of claim 10, wherein a first controller component is configured to sequentially execute first and second processor components when handling a message associated therewith.
- 13. The apparatus of claim 10, wherein a first controller component is configured to concurrently execute first and second processor components when handling a message associated therewith.
- 14. The apparatus of claim 1, wherein a first processor component among the plurality of processor components is configured to batch process a plurality of messages stored in the message buffer and associated with a first message type.
- 15. The apparatus of claim 1, wherein a first processor component among the plurality of processor components is configured to retrieve message data from a message record stored in the message buffer in connection with initiating an action with a receiving electronic device.
- 16. The apparatus of claim 15, wherein the first processor component among the plurality of processor components is configured to return result data by updating the message record stored in the message buffer.
- 17. The apparatus of claim 1, further comprising:
(a) a plurality of message validation components, each message validation component associated with at least one of a message type and a receiving electronic device, each message validation component configured to validate a message sent to the message buffer by a sending electronic device prior to addition of the message to the message buffer, and each message validation component further configured to return a result that indicates whether the message should be accepted by the message buffer; and (b) a buffer services component configured to process a first message sent to the message buffer by invoking a message validation component associated with the first message and selectively adding the first message to the message buffer based upon the result returned by the invoked message validation component.
- 18. A method of communicating between sending and receiving electronic devices, the method comprising:
(a) actively monitoring a message buffer for addition of a message associated with a first message type among a plurality of message types; (b) in response to detecting addition of a message associated with the first message type, dynamically executing a first controller component among a plurality of controller components that is associated with the first message type; and (c) after the first controller component is executed, dynamically instantiating with the first controller component at least a subset of a plurality of processor components to initiate an action on a receiving electronic device.
- 19. The method of claim 18, wherein the sending electronic device comprises a near infrared sensor, and wherein the receiving electronic device comprises an analysis engine.
- 20. The method of claim 18, further comprising receiving the message from the sending electronic device via the Internet.
- 21. The method of claim 18, wherein actively monitoring the message buffer and dynamically executing the first controller component are performed by a delegator component, wherein the delegator component is further configured to be selectively enabled and disabled in response to user input, and wherein dynamically executing the first controller component is performed only if the delegator component is enabled when the message is added to the message buffer.
- 22. The method of claim 21, further comprising adding the message to the message buffer irrespective of whether the delegator component is enabled.
- 23. The method of claim 21, further comprising, in response to detecting addition of the message, associating the message with the delegator component to restrict another delegator component from handling the message.
- 24. The method of claim 18, further comprising dynamically instantiating the first controller component in response to detecting the addition of the message to the message buffer.
- 25. The method of claim 18, further comprising retrieving, with the first controller component, a list of messages from the message buffer that are awaiting processing by the first controller component.
- 26. The method of claim 18, further comprising determining with the first controller component which of the plurality of processor components need to be executed to handle the message.
- 27. The method of claim 26, wherein determining which of the plurality of processor components need to be executed includes accessing a database that maintains a mapping of processor components to controller components.
- 28. The method of claim 26, wherein dynamically instantiating the subset of processor components includes sequentially executing first and second processor components.
- 29. The method of claim 26, wherein dynamically instantiating the subset of processor components includes concurrently executing first and second processor components.
- 30. The method of claim 18, further comprising batch processing a plurality of messages stored in the message buffer and associated with the first message type with a first processor component among the subset of processor components.
- 31. The method of claim 18, further comprising retrieving message data from a message record stored in the message buffer in connection with initiating an action with a receiving electronic device with a first processor component among the subset of processor components.
- 32. The method of claim 31, further comprising returning result data with the first processor component by updating the message record stored in the message buffer.
- 33. The method of claim 18, further comprising:
(a) receiving the message from a sending electronic device; (b) in response to receiving the message, determining whether any of a plurality of message validation components is associated with at least one of the first message type and the receiving electronic device; (c) invoking any associated message validation component to validate the message prior to addition of the message to the message buffer, wherein each such associated message validation component returns a result that indicates whether the message should be accepted by the message buffer; and (d) selectively adding the message to the message buffer based upon the result returned by each associated message validation component.
- 34. A program product, comprising:
(a) a program configured to interface communications between sending and receiving electronic devices, the program including:
(i) a message buffer configured to receive messages from at least one sending electronic device, each message associated with at least one message type among a plurality of message types; (ii) a plurality of processor components, each configured to perform a task associated with a message received by the message buffer, wherein at least one processor component is configured to initiate an action on a receiving electronic device; (iii) a plurality of controller components, each associated with a message type among the plurality of message types, and each configured to handle a message associated with such associated message type by dynamically instantiating at least a subset of the plurality of processor components; and (iv) at least one delegator component associated with at least one message type among the plurality of message types and configured to monitor the message buffer for messages associated with such associated message type, the delegator component further configured to dynamically execute a controller component associated with such associated message type in response to detecting an addition of a message associated with such associated message type to the message buffer; and (b) a signal bearing medium bearing the program.
- 35. An apparatus configured to interface communications between sending and receiving electronic devices, the apparatus comprising:
(a) a message buffer configured to receive messages from at least one sending electronic device, each message associated with at least one message type among a plurality of message types; (b) a plurality of message validation components, each message validation component associated with at least one of a message type and a receiving electronic device, each message validation component configured to validate a message sent to the message buffer by a sending electronic device prior to addition of the message to the message buffer, and each message validation component further configured to return a result that indicates whether the message should be accepted by the message buffer; and (c) a buffer services component configured to process a first message sent to the message buffer by invoking a message validation component associated with the first message and selectively adding the first message to the message buffer based upon the result returned by the invoked message validation component.
- 36. The apparatus of claim 35, wherein the invoked message validation component is configured to selectively modify the first message prior to the first message being added to the message buffer.
- 37. The apparatus of claim 35, wherein the invoked message validation component is configured to reject the first message by returning a result that indicates that the message should not be accepted by the message buffer, and wherein the buffer services component is configured to prevent the first message from being added to the message buffer in response to the result indicating that the message should not be accepted by the message buffer.
- 38. A method of communicating between sending and receiving electronic devices, the method comprising:
(a) receiving a message from a sending electronic device, the message directed to a receiving electronic device and associated with a message type among a plurality of message types; (b) in response to receiving the message, determining whether any of a plurality of message validation components is associated with at least one of the message type and receiving electronic device for the message; (c) invoking any associated message validation component to validate the message sent to the message buffer by a sending electronic device prior to addition of the message to the message buffer, wherein each such associated message validation component returns a result that indicates whether the message should be accepted by the message buffer; and (d) selectively adding the message to the message buffer based upon the result returned by each associated message validation component.
- 39. A program product, comprising:
(a) a program configured to interface communications between sending and receiving electronic devices, the program including:
(i) a message buffer configured to receive messages from at least one sending electronic device, each message associated with at least one message type among a plurality of message types; (ii) a plurality of message validation components, each message validation component associated with at least one of a message type and a receiving electronic device, each message validation component configured to validate a message sent to the message buffer by a sending electronic device prior to addition of the message to the message buffer, and each message validation component further configured to return a result that indicates whether the message should be accepted by the message buffer; and (iii) a buffer services component configured to process a first message sent to the message buffer by invoking a message validation component associated with the first message and selectively adding the first message to the message buffer based upon the result returned by the invoked message validation component; and (b) a signal bearing medium bearing the program.
- 40. A data processing system configured to process spectral data generated by a plurality of remote sensing stations during sampling of unknown materials, the data processing system comprising:
(a) an analysis engine configured to process spectral data to generate quantitative results therefrom using multivariate analysis; and (b) a communication executive interposed between the plurality of remote sensing stations and the analysis engine, the communication executive configured to communicate first spectral data generated by a first remote sensing station to the analysis engine, and to communicate first quantitative results from the analysis engine to the first remote sensing station subsequent to processing of the first spectral data by the analysis engine, the communication executive comprising:
(i) a message buffer configured to receive messages including spectral data generated by the plurality of remote sensing stations; (ii) a plurality of processor components, each configured to perform a task associated with a message received by the message buffer, at least one processor component configured to access the analysis engine to initiate processing of spectral data by the analysis engine; (iii) a plurality of controller components, each configured to dynamically instantiate at least a subset of the plurality of processor components; and (iv) at least one delegator component configured to monitor the message buffer for messages, and in response to a first message associated with the first spectral data, to dynamically execute a controller component so as to initiate analysis of the first spectral data by the analysis engine and return the first quantitative results to the first remote sensing station.
- 41. The data processing system of claim 40, further comprising a web server configured to interface with the plurality of remote sensing stations over the Internet, the web server configured to add the first message to the message buffer in response to receipt of the first spectral data from the first remote sensing station, and to communicate the first quantitative results to the first remote sensing station when the first quantitative results are returned by the analysis engine.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of two U.S. Provisional Patent Applications, Serial Nos. 60/307,347 and 60/307,348, both filed on Jul. 23, 2001, the disclosures of which are incorporated by reference herein. This application is also related to U.S. patent application Ser. No. ______ , filed on even date herewith by Alan P. Lundstedt, et al., and entitled “ON-SITE ANALYSIS SYSTEM WITH CENTRAL PROCESSOR AND METHOD OF ANALYZING,” the disclosure of which is also incorporated by reference herein.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60307347 |
Jul 2001 |
US |
|
60307348 |
Jul 2001 |
US |