Patents by Inventor Craig H. Stirling
Craig H. Stirling 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: 11190459Abstract: A method, system, and computer program product that includes a processor assigning a network connection to an application, based upon the application requesting the network connection from a pool of network connections for connecting applications to a network resource, the assigned network connection for communicating a message with the network resource. The processor replaces the assigned network connection in the pool with a placeholder comprising configuration data of the assigned connection. The processor determined a period of inactivity of the assigned network connection, and the processor returns the assigned network connection to the pool, based upon the period reaching a defined threshold of inactivity.Type: GrantFiled: July 10, 2019Date of Patent: November 30, 2021Assignee: International Business Machines CorporationInventors: Adrian D. Dick, Brian C. Homewood, Christopher Matthewson, Craig H. Stirling
-
Patent number: 11146285Abstract: Batch compression management of messages. A message being sent to a batch for transmission is intercepted. The message is assigned to a batch pool, in which multiple batch pools are provided as sub-sets of the batch. The assigning of the message to the batch pool is based on a similarity of properties of the message with other messages and determined by looking up the properties in a batch pool mapping database. The message is added to the batch pool or a new batch pool is created for the message. A batch pool of messages is compressed using a dictionary of the properties common to at least some of the messages in the batch pool. The compressed batch pools are transmitted over an input/output channel.Type: GrantFiled: July 13, 2018Date of Patent: October 12, 2021Assignee: International Business Machines CorporationInventors: Fiona M. Crowther, Geza Geleji, Christopher J. Poole, Martin A. Ross, Craig H. Stirling
-
Patent number: 11032360Abstract: An integration flow is monitored to determine a processing location of a message. The integration flow includes a route, one or more nodes, and one or more secure connectors. A first message is received by the integration flow. A central processing unit serialization load is received including a serialization of the first message on a first secure connector and a deserialization of the first message on a second secure connector. A processing load of the first message running on a first node of the one or more nodes is received. A first threshold of a processing load of the first message is received. The first threshold is determined to have been reached. Based on the first threshold being reached, a processing location of the integration flow is altered such that the first message is processed on a second node of the one or more nodes.Type: GrantFiled: July 30, 2019Date of Patent: June 8, 2021Assignee: International Business Machines CorporationInventors: John Hosie, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Patent number: 10929554Abstract: A method and system for handling sensitive data required by an application in a secure computer system. The secure computer system transforms sensitive data in a request message from a data format required by the application into a data format required by a service in an external computer system. The secure computer system tokenizes the sensitive data by replacing the sensitive data with tokenized data and stores a mapping between the sensitive data and the tokenized data in the secure computer system. The secure computer system sends the request message to an external computer system and receives, from the external computer system, a response message that includes annotations for the tokenized data with transform instructions for transforming the transformed sensitive data from the data format required by the service into the data format required by the application. The secure computer system replaces the tokenized data with the sensitive data.Type: GrantFiled: June 13, 2019Date of Patent: February 23, 2021Assignee: International Business Machines CorporationInventors: John Hosie, Daniel J. McGinnes, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Patent number: 10922428Abstract: A method and system for handling sensitive data required by an application in a secure computer system. An external computer system that is external to the secure computer system receives a transformed request message that includes one or more data aspects having tokenized data that has replaced transformed sensitive data after sensitive data in the one or more aspects had been transformed from a data format required by a service in the external computer system into a data format required by the application. The external computer system generates a response message from the transformed request message by including, in the response message, annotations with transform instructions for transforming the transformed sensitive data, from the data format required by the service into the data format required by the application, after the tokenized data has been replaced by the transformed sensitive data in the one or more data aspects.Type: GrantFiled: June 13, 2019Date of Patent: February 16, 2021Assignee: International Business Machines CorporationInventors: John Hosie, Daniel J. McGinnes, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Patent number: 10834059Abstract: A method and system for secure message handling of an application across deployment locations. The application is analyzed to identify processing nodes referencing one or more data aspects having deployment constraints on locations in which aspect data in the one or more data aspects may be deployed. It is ascertained whether the one or more data aspects are accessed by an identified processing node of the application. If so, a restriction is determined for the identified processing node based on deployment constraints included in the accessed one or more data aspects and the identified processing node is deployed according to the determined restriction for the identified processing node. If not, the identified processing node or a preceding processing node is marked to indicate a required tokenization of the one or more data aspects, wherein the tokenization removes the deployment constraints for the identified processing node.Type: GrantFiled: November 5, 2018Date of Patent: November 10, 2020Assignee: International Business Machines CorporationInventors: John Hosie, Daniel J. McGinnes, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Patent number: 10740538Abstract: A computer-implemented method includes receiving a content artifact. The content artifact includes information content and functional content. Extracting the functional content includes creating a functional content artifact. The computer-implemented method further includes extracting the functional content into a functional content artifact based on one or more decision criteria. The computer-implemented method further includes presenting the functional content artifact to a functional content artifact application. Optionally, the computer-implemented method further includes transferring the functional content artifact to an operational environment. Optionally, the computer-implemented method further includes modifying the functional content artifact into a modified functional content artifact. Optionally, the computer-implemented method further includes making available the modified functional content artifact available to an operational environment.Type: GrantFiled: January 25, 2017Date of Patent: August 11, 2020Assignee: International Business Machines CorporationInventors: Michelle S. Matthew, John J. P. McNamara, Craig H. Stirling, Ian T. Stirling
-
Patent number: 10735299Abstract: Managing connections for execution of a client software application. A client software application is analyzed before execution of the application using code analysis and, optionally non-functional metadata analysis, of the application to determine one or more classifications of operations of the application. A mapping of application operation classifications to server characteristics suited to the application operation classifications is maintained. Multiple servers currently available to process at least a portion of the client software application may be monitored, and each of the multiple servers may be characterized according to their performance and resources. The classifications of operations of the analyzed application may be compared to the characteristics of the multiple servers currently available using the mapping, and a server may be selected based on the comparison.Type: GrantFiled: October 25, 2018Date of Patent: August 4, 2020Assignee: International Business Machines CorporationInventors: Graham David Hopkins, Timothy Jonathan Quigly, Luke David Charles Saker, Craig H. Stirling, Matthew B. White
-
Patent number: 10735362Abstract: Publish/subscribe messaging using a message structure carried out at a messaging intermediary system is provided. A plurality of lists to which publishing entities can publish messages and to which subscribing entities can subscribe to messages is maintained. A list for messages conforming, at least partly, to a common message structure is provided. A request from a publishing entity or a subscribing entity is matched to one or more provided lists by comparing a message having a message structure or an abstract representation of one or more messages to the provided lists. Messages conforming, at least partly, to the common message structure via the list are shared.Type: GrantFiled: November 16, 2015Date of Patent: August 4, 2020Assignee: International Business Machines CorporationInventors: Fiona M. Crowther, Geza Geleji, Christopher J. Poole, Martin A. Ross, Craig H. Stirling
-
Patent number: 10659407Abstract: A messaging system comprises a plurality of connected components and including a schema defining fields for messages, at least one field defined as non-essential. A mechanism for operating the messaging system comprises the steps of collecting one or more performance metrics for one or more components of the messaging system, determining that at least one performance metric has crossed a predetermined threshold, informing one or more components of the messaging system that a surge in workload has occurred, and the informed components removing non-essential fields from transmitted messages and/or not processing non-essential fields from received messages.Type: GrantFiled: April 15, 2019Date of Patent: May 19, 2020Assignee: International Business Machines CorporationInventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
-
Patent number: 10630614Abstract: A computer-implemented method of parsing a message comprising a sequence of data fields, the method comprising evaluating program code for processing the parsed message to identify a first set of data fields of the message that are referenced in said program code; identifying the boundaries of the data fields in a schema defining the format of said message; identifying a second set of data fields in said schema related to the first set of data fields by reference, said second set further including the first set; and sequentially parsing the message using the identified data field boundaries, wherein said parsing step comprises skipping data fields in said sequence that precede the first data field belonging to the second set. A computer program product comprising program code for implementing this method and a data processing system adapted to implement this method are also disclosed.Type: GrantFiled: November 1, 2017Date of Patent: April 21, 2020Assignee: International Business Machines CorporationInventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
-
Patent number: 10620751Abstract: Method and system are provided for management of a touchscreen interface of a device. The method includes monitoring touchscreen interface function by logging data relating to user interaction with locations of the touchscreen interface. The logged data is then analyzed to identify one or more areas of the touchscreen interface which are inactive. The remaining active areas of the touchscreen interface are modeled to form a modified touchscreen interface. An original touchscreen interface is then mapped to the modified touchscreen interface resulting in only use of the remaining active areas.Type: GrantFiled: March 6, 2019Date of Patent: April 14, 2020Assignee: International Business Machines CorporationInventors: Fiona M. Crowther, Geza Geleji, Christopher J. Poole, Martin A. Ross, Craig H. Stirling, Ian T. Stirling
-
Patent number: 10608915Abstract: Providing dynamic latency in an integration flow. An integration flow connecting multiple integration nodes and including at least one repeat node is managed, wherein a repeat node repeats by sending a message, a variation of a message, or an element of a message to multiple paths or to a single path multiple times. A repeat node is registered with a workload manager component for monitoring. Data relating to the effect on performance by the integration flow including the monitored repeat node is collected. Required latencies or variations of latencies between firing of repeats of the repeat node based on the collected data are determined. The latencies or variations of latencies between firing of the repeats of the repeat node are instructed to influence dynamically a flow of elements through the repeat node.Type: GrantFiled: January 16, 2019Date of Patent: March 31, 2020Assignee: International Business Machine CorporationInventors: John Hosie, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Patent number: 10601871Abstract: Method and system are provided for reconfiguration of security requirements for deployed components of applications. The method includes referencing a deployed application wherein the application is divided into processing components, which can be deployed in different locations. The method adds one or more application resources for the deployed application to a central repository with references to the processing components of the deployed application utilizing the resources. The method further involves: receiving an update to an application resource to modify a security requirement for the resource; checking the deployment locations of the processing components of deployed applications referenced to the updated application resource to ensure the processing components conform to the modified security requirement; and taking an action for each referenced processing component of the deployed application that does not conform to the modified security requirement.Type: GrantFiled: January 18, 2017Date of Patent: March 24, 2020Assignee: International Business Machines CorporationInventors: John Hosie, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Publication number: 20190356734Abstract: An integration flow is monitored to determine a processing location of a message. The integration flow includes a route, one or more nodes, and one or more secure connectors. A first message is received by the integration flow. A central processing unit serialization load is received including a serialization of the first message on a first secure connector and a deserialization of the first message on a second secure connector. A processing load of the first message running on a first node of the one or more nodes is received. A first threshold of a processing load of the first message is received. The first threshold is determined to have been reached. Based on the first threshold being reached, a processing location of the integration flow is altered such that the first message is processed on a second node of the one or more nodes.Type: ApplicationFiled: July 30, 2019Publication date: November 21, 2019Inventors: John Hosie, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Publication number: 20190349312Abstract: A method, system, and computer program product that includes a processor assigning a network connection to an application, based upon the application requesting the network connection from a pool of network connections for connecting applications to a network resource, the assigned network connection for communicating a message with the network resource. The processor replaces the assigned network connection in the pool with a placeholder comprising configuration data of the assigned connection. The processor determined a period of inactivity of the assigned network connection, and the processor returns the assigned network connection to the pool, based upon the period reaching a defined threshold of inactivity.Type: ApplicationFiled: July 10, 2019Publication date: November 14, 2019Inventors: Adrian D. Dick, Brian C. Homewood, Christopher Matthewson, Craig H. Stirling
-
Patent number: 10452428Abstract: Method and system are provided for software application execution including switching between optimized code for use profiles. The method includes: accessing an application having multiple executables for the same function for multiple use profiles. The method includes: executing code for a first use profile; receiving a prompt to change to a second use profile; suspending the execution of the code for the first use profile; retrieving switching code from a pre-computed data structure, wherein the switching code is for carrying out operations to transfer from executing code for a first use profile to executing code for a second use profile; performing the operations of the switching code; and resuming executing the application by executing code for the second use profile.Type: GrantFiled: March 14, 2016Date of Patent: October 22, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Fiona M. Crowther, Geza Geleji, Christopher J. Poole, Martin A. Ross, Craig H. Stirling
-
Patent number: 10432707Abstract: An integration flow is monitored to determine a processing location of a message. The integration flow includes a route, one or more nodes, and one or more secure connectors. A first message is received by the integration flow. A central processing unit serialization load is received including a serialization of the first message on a first secure connector and a deserialization of the first message on a second secure connector. A processing load of the first message running on a first node of the one or more nodes is received. A first threshold of a processing load of the first message is received. The first threshold is determined to have been reached. Based on the first threshold being reached, a processing location of the integration flow is altered such that the first message is processed on a second node of the one or more nodes.Type: GrantFiled: March 2, 2016Date of Patent: October 1, 2019Assignee: International Business Machines CorporationInventors: John Hosie, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Publication number: 20190294813Abstract: A method and system for handling sensitive data required by an application in a secure computer system. An external computer system that is external to the secure computer system receives a transformed request message that includes one or more data aspects having tokenized data that has replaced transformed sensitive data after sensitive data in the one or more aspects had been transformed from a data format required by a service in the external computer system into a data format required by the application. The external computer system generates a response message from the transformed request message by including, in the response message, annotations with transform instructions for transforming the transformed sensitive data, from the data format required by the service into the data format required by the application, after the tokenized data has been replaced by the transformed sensitive data in the one or more data aspects.Type: ApplicationFiled: June 13, 2019Publication date: September 26, 2019Inventors: John Hosie, Daniel J. McGinnes, Martin A. Ross, Craig H. Stirling, Dominic J. Storey
-
Publication number: 20190294812Abstract: A method and system for handling sensitive data required by an application in a secure computer system. The secure computer system transforms sensitive data in a request message from a data format required by the application into a data format required by a service in an external computer system. The secure computer system tokenizes the sensitive data by replacing the sensitive data with tokenized data and stores a mapping between the sensitive data and the tokenized data in the secure computer system. The secure computer system sends the request message to an external computer system and receives, from the external computer system, a response message that includes annotations for the tokenized data with transform instructions for transforming the transformed sensitive data from the data format required by the service into the data format required by the application. The secure computer system replaces the tokenized data with the sensitive data.Type: ApplicationFiled: June 13, 2019Publication date: September 26, 2019Inventors: John Hosie, Daniel J. McGinnes, Martin A. Ross, Craig H. Stirling, Dominic J. Storey